diff --git a/web/dist/assets/index-BOIpO8LK.css b/web/dist/assets/index-BOIpO8LK.css new file mode 100644 index 00000000..755c763e --- /dev/null +++ b/web/dist/assets/index-BOIpO8LK.css @@ -0,0 +1,26 @@ +@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Montserrat:wght@500;600;700&family=Outfit:wght@400;500;600;700&display=swap";.hljs-comment,.hljs-quote{color:#7285b7}.hljs-variable,.hljs-template-variable,.hljs-tag,.hljs-name,.hljs-selector-id,.hljs-selector-class,.hljs-regexp,.hljs-deletion{color:#ff9da4}.hljs-number,.hljs-built_in,.hljs-literal,.hljs-type,.hljs-params,.hljs-meta,.hljs-link{color:#ffc58f}.hljs-attribute{color:#ffeead}.hljs-string,.hljs-symbol,.hljs-bullet,.hljs-addition{color:#d1f1a9}.hljs-title,.hljs-section{color:#bbdaff}.hljs-keyword,.hljs-selector-tag{color:#ebbbff}.hljs{background:#002451;color:#fff}/*! + Theme: Tokyo-night-Dark + origin: https://github.com/enkia/tokyo-night-vscode-theme + Description: Original highlight.js style + Author: (c) Henri Vandersleyen + License: see project LICENSE + Touched: 2022 +*/.hljs-meta,.hljs-comment{color:#565f89}.hljs-tag,.hljs-doctag,.hljs-selector-id,.hljs-selector-class,.hljs-regexp,.hljs-template-tag,.hljs-selector-pseudo,.hljs-selector-attr,.hljs-variable.language_,.hljs-deletion{color:#f7768e}.hljs-variable,.hljs-template-variable,.hljs-number,.hljs-literal,.hljs-type,.hljs-params,.hljs-link{color:#ff9e64}.hljs-built_in,.hljs-attribute{color:#e0af68}.hljs-selector-tag{color:#2ac3de}.hljs-keyword,.hljs-title.function_,.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-subst,.hljs-property{color:#7dcfff}.hljs-selector-tag{color:#73daca}.hljs-quote,.hljs-string,.hljs-symbol,.hljs-bullet,.hljs-addition{color:#9ece6a}.hljs-code,.hljs-formula,.hljs-section{color:#7aa2f7}.hljs-name,.hljs-keyword,.hljs-operator,.hljs-char.escape_,.hljs-attr{color:#bb9af7}.hljs-punctuation{color:#c0caf5}.hljs{background:#1a1b26;color:#9aa5ce}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}/*! + Theme: GitHub + Description: Light theme as seen on github.com + Author: github.com + Maintainer: @Hirse + Updated: 2021-05-15 + + Outdated base version: https://github.com/primer/github-syntax-light + Current colors taken from GitHub's CSS +*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}.code-block-button[data-v-6c0ead0d]{border-radius:.25rem;padding:.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.code-block-button[data-v-6c0ead0d]:hover{background-color:var(--color-primary);--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.code-block-button[data-v-6c0ead0d]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: var(--color-primary);--tw-ring-offset-width: 1px}.code-block-button[data-v-6c0ead0d]:disabled{cursor:not-allowed;opacity:.5}.code-block-button[data-v-6c0ead0d]:hover:disabled{background-color:transparent;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.code-block-button[data-v-6c0ead0d]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.code-block-button[data-v-6c0ead0d]:hover:is(.dark *){background-color:var(--color-primary)}.code-block-button[data-v-6c0ead0d]:hover:disabled:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.feather-small[data-v-6c0ead0d]{display:inline-block;height:.75rem;width:.75rem;vertical-align:middle}.hljs[data-v-6c0ead0d]{background:none!important;padding:0!important;margin:0!important}.code-block-container[data-v-6c0ead0d]{position:relative}.code-content-flex[data-v-6c0ead0d]{align-items:stretch}.line-numbers[data-v-6c0ead0d]{flex-shrink:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow-y:hidden;white-space:pre;border-right-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));padding:.5rem;text-align:right;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.line-numbers[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.line-numbers[data-v-6c0ead0d]{min-height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none}.code-content[data-v-6c0ead0d]{flex-grow:1;overflow-x:auto;overflow-y:hidden;white-space:pre-wrap;overflow-wrap:break-word;padding:.5rem}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-track{background-color:var(--scrollbar-track);border-radius:var(--scrollbar-track-radius)}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-track:hover{background-color:var(--scrollbar-track-hover, var(--scrollbar-track))}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-track:active{background-color:var(--scrollbar-track-active, var(--scrollbar-track-hover, var(--scrollbar-track)))}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:var(--scrollbar-thumb-radius)}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover, var(--scrollbar-thumb))}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-thumb-active, var(--scrollbar-thumb-hover, var(--scrollbar-thumb)))}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-corner{background-color:var(--scrollbar-corner);border-radius:var(--scrollbar-corner-radius)}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-corner:hover{background-color:var(--scrollbar-corner-hover, var(--scrollbar-corner))}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-corner:active{background-color:var(--scrollbar-corner-active, var(--scrollbar-corner-hover, var(--scrollbar-corner)))}.code-content[data-v-6c0ead0d]{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb, initial) var(--scrollbar-track, initial)}.code-content[data-v-6c0ead0d]::-webkit-scrollbar{display:block;width:8px;height:8px}.code-content[data-v-6c0ead0d]{--scrollbar-track: transparent;--scrollbar-thumb: #9CA3AF}.code-content[data-v-6c0ead0d]:focus{outline:2px solid transparent;outline-offset:2px}.code-content[data-v-6c0ead0d]:is(.dark *){--scrollbar-thumb: #6B7280}.code-content[data-v-6c0ead0d]{min-height:1.5em;caret-color:currentColor;color:#1f2937;background-color:#fff}.dark .code-content[data-v-6c0ead0d]{color:#e5e7eb;background-color:#1f2937}.code-content[data-v-6c0ead0d]::-webkit-scrollbar{height:8px}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-thumb{border-radius:4px}.animate-spin[data-v-6c0ead0d]{animation:spin-6c0ead0d 1s linear infinite}@keyframes spin-6c0ead0d{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.execute-button[data-v-6c0ead0d]{display:inline-flex;align-items:center;justify-content:center}.dark .dark\:hidden[data-v-6c0ead0d]{display:none}.dark .dark\:inline[data-v-6c0ead0d]{display:inline}.hidden[data-v-6c0ead0d]{display:none}.code-block-button i[data-feather][data-v-6c0ead0d],.code-block-button img[data-v-6c0ead0d]{vertical-align:middle}.parameter-item[data-v-6c0ead0d]{margin-bottom:.5rem}.parameter-item>div[data-v-6c0ead0d]:last-child{margin-left:.5rem}.execution-output-content a[data-v-6c0ead0d]{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.execution-output-content a[data-v-6c0ead0d]:hover{text-decoration-line:underline}.execution-output-content a[data-v-6c0ead0d]:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.execution-output-content h1[data-v-6c0ead0d]{margin-top:.5rem;margin-bottom:.5rem;font-size:1.25rem;line-height:1.75rem;font-weight:700}.execution-output-content h2[data-v-6c0ead0d]{margin-top:.375rem;margin-bottom:.375rem;font-size:1.125rem;line-height:1.75rem;font-weight:600}.execution-output-content h3[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;font-size:1rem;line-height:1.5rem;font-weight:600}.execution-output-content h4[data-v-6c0ead0d],.execution-output-content h5[data-v-6c0ead0d],.execution-output-content h6[data-v-6c0ead0d]{margin-top:.125rem;margin-bottom:.125rem;font-weight:600}.execution-output-content p[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem}.execution-output-content ul[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;margin-left:1rem;list-style-position:inside;list-style-type:disc}.execution-output-content ol[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;margin-left:1rem;list-style-position:inside;list-style-type:decimal}.execution-output-content li[data-v-6c0ead0d]{margin-top:.125rem;margin-bottom:.125rem}.execution-output-content code[data-v-6c0ead0d]:not(pre>code){border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));padding:.125rem .25rem;font-family:JetBrains Mono,Consolas,monospace;font-size:.875rem;line-height:1.25rem}.execution-output-content code[data-v-6c0ead0d]:not(pre>code):is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.execution-output-content pre[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;overflow-x:auto;border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));padding:.5rem;font-family:JetBrains Mono,Consolas,monospace;font-size:.875rem;line-height:1.25rem}.execution-output-content pre[data-v-6c0ead0d]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.execution-output-content pre>code[data-v-6c0ead0d]{background-color:transparent;padding:0;font-size:.875rem;line-height:1.25rem}.execution-output-content blockquote[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;border-left-width:4px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));padding-left:.5rem;font-style:italic;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.execution-output-content blockquote[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.execution-output-content table[data-v-6c0ead0d]{margin-top:.5rem;margin-bottom:.5rem;width:100%;border-collapse:collapse;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));font-size:.875rem;line-height:1.25rem}.execution-output-content table[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.execution-output-content th[data-v-6c0ead0d],.execution-output-content td[data-v-6c0ead0d]{border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));padding:.375rem;text-align:left}.execution-output-content th[data-v-6c0ead0d]:is(.dark *),.execution-output-content td[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.execution-output-content th[data-v-6c0ead0d]{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));font-weight:600}.execution-output-content th[data-v-6c0ead0d]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.execution-output-content img[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;height:auto;max-width:100%;border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.execution-output-content img[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.execution-output-content svg[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;height:auto;max-width:100%}.execution-output-content hr[data-v-6c0ead0d]{margin-top:.5rem;margin-bottom:.5rem;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.execution-output-content hr[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.execution-output-content.hljs[data-v-6c0ead0d]{color:#1f2937;background-color:#fff}.dark .execution-output-content.hljs[data-v-6c0ead0d]{color:#e5e7eb;background-color:#1f2937}.search-replace-panel[data-v-6c0ead0d]{border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.search-replace-panel[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.search-replace-panel input[type=text][data-v-6c0ead0d]{border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:.25rem .5rem;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.search-replace-panel input[type=text][data-v-6c0ead0d]:focus{border-color:var(--color-primary);outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: var(--color-primary)}.search-replace-panel input[type=text][data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.search-replace-panel input[type=text][data-v-6c0ead0d]{min-width:80px}.search-replace-panel .search-status[data-v-6c0ead0d]{white-space:nowrap;padding-left:.25rem;padding-right:.25rem;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.search-replace-panel .search-status[data-v-6c0ead0d]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.search-replace-panel .search-status[data-v-6c0ead0d]{min-width:50px;text-align:center}.search-replace-panel .search-button[data-v-6c0ead0d]{padding:.125rem .25rem;font-size:.75rem;line-height:1rem}.search-replace-panel .search-button i[data-feather][data-v-6c0ead0d]{height:.875rem;width:.875rem}.search-replace-panel .code-block-button[data-v-6c0ead0d]{padding:.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.search-replace-panel .code-block-button[data-v-6c0ead0d]:hover{background-color:var(--color-primary);--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.search-replace-panel .code-block-button[data-v-6c0ead0d]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.search-replace-panel .code-block-button[data-v-6c0ead0d]:hover:is(.dark *){background-color:var(--color-primary)}.search-replace-panel .code-block-button[data-v-6c0ead0d]:disabled{cursor:not-allowed;opacity:.5}.search-replace-panel .code-block-button[data-v-6c0ead0d]:disabled:hover{background-color:transparent;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.search-replace-panel .code-block-button[data-v-6c0ead0d]:disabled:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.code-content[data-v-6c0ead0d]::-moz-selection{background-color:#c3ddfd;color:#000}.code-content[data-v-6c0ead0d]::selection{background-color:#c3ddfd;color:#000}.dark .code-content[data-v-6c0ead0d]::-moz-selection{background-color:#1e429f;color:#fff}.dark .code-content[data-v-6c0ead0d]::selection{background-color:#1e429f;color:#fff}.dark .code-content.hljs[data-v-6c0ead0d],.dark .execution-output-content.hljs[data-v-6c0ead0d]{color:#a9b1d6}.dark .hljs-meta[data-v-6c0ead0d]{color:#ff9e64}.dark .hljs-comment[data-v-6c0ead0d]{color:#565f89;font-style:italic}.dark .hljs-tag[data-v-6c0ead0d],.dark .hljs-tag .hljs-name[data-v-6c0ead0d],.dark .hljs-tag .hljs-attr[data-v-6c0ead0d]{color:#f7768e}.dark .hljs-keyword[data-v-6c0ead0d],.dark .hljs-selector-tag[data-v-6c0ead0d],.dark .hljs-literal[data-v-6c0ead0d],.dark .hljs-name[data-v-6c0ead0d]{color:#bb9af7}.dark .hljs-deletion[data-v-6c0ead0d],.dark .hljs-number[data-v-6c0ead0d],.dark .hljs-attribute[data-v-6c0ead0d],.dark .hljs-variable[data-v-6c0ead0d],.dark .hljs-template-variable[data-v-6c0ead0d],.dark .hljs-symbol[data-v-6c0ead0d]{color:#ff9e64}.dark .hljs-section[data-v-6c0ead0d],.dark .hljs-title[data-v-6c0ead0d],.dark .hljs-type[data-v-6c0ead0d]{color:#7aa2f7}.dark .hljs-string[data-v-6c0ead0d],.dark .hljs-subst[data-v-6c0ead0d],.dark .hljs-regexp[data-v-6c0ead0d],.dark .hljs-link[data-v-6c0ead0d],.dark .hljs-addition[data-v-6c0ead0d],.dark .hljs-selector-id[data-v-6c0ead0d],.dark .hljs-selector-class[data-v-6c0ead0d]{color:#9ece6a}.dark .hljs-built_in[data-v-6c0ead0d],.dark .hljs-bullet[data-v-6c0ead0d],.dark .hljs-code[data-v-6c0ead0d],.dark .hljs-formula[data-v-6c0ead0d]{color:#7dcfff}.dark .hljs-emphasis[data-v-6c0ead0d]{font-style:italic}.dark .hljs-strong[data-v-6c0ead0d]{font-weight:700}html:not(.dark) .code-content.hljs[data-v-6c0ead0d],html:not(.dark) .execution-output-content.hljs[data-v-6c0ead0d]{color:#24292e}html:not(.dark) .hljs-meta[data-v-6c0ead0d]{color:#6a737d}html:not(.dark) .hljs-comment[data-v-6c0ead0d]{color:#6a737d;font-style:italic}html:not(.dark) .hljs-tag[data-v-6c0ead0d]{color:#22863a}html:not(.dark) .hljs-tag .hljs-name[data-v-6c0ead0d],html:not(.dark) .hljs-tag .hljs-attr[data-v-6c0ead0d]{color:#22863a}html:not(.dark) .hljs-keyword[data-v-6c0ead0d],html:not(.dark) .hljs-selector-tag[data-v-6c0ead0d],html:not(.dark) .hljs-literal[data-v-6c0ead0d],html:not(.dark) .hljs-name[data-v-6c0ead0d]{color:#d73a49}html:not(.dark) .hljs-deletion[data-v-6c0ead0d],html:not(.dark) .hljs-number[data-v-6c0ead0d],html:not(.dark) .hljs-attribute[data-v-6c0ead0d],html:not(.dark) .hljs-variable[data-v-6c0ead0d],html:not(.dark) .hljs-template-variable[data-v-6c0ead0d],html:not(.dark) .hljs-symbol[data-v-6c0ead0d]{color:#005cc5}html:not(.dark) .hljs-section[data-v-6c0ead0d],html:not(.dark) .hljs-title[data-v-6c0ead0d],html:not(.dark) .hljs-type[data-v-6c0ead0d]{color:#6f42c1}html:not(.dark) .hljs-string[data-v-6c0ead0d],html:not(.dark) .hljs-subst[data-v-6c0ead0d],html:not(.dark) .hljs-regexp[data-v-6c0ead0d],html:not(.dark) .hljs-link[data-v-6c0ead0d],html:not(.dark) .hljs-addition[data-v-6c0ead0d],html:not(.dark) .hljs-selector-id[data-v-6c0ead0d],html:not(.dark) .hljs-selector-class[data-v-6c0ead0d]{color:#032f62}html:not(.dark) .hljs-built_in[data-v-6c0ead0d],html:not(.dark) .hljs-bullet[data-v-6c0ead0d],html:not(.dark) .hljs-code[data-v-6c0ead0d],html:not(.dark) .hljs-formula[data-v-6c0ead0d]{color:#e36209}html:not(.dark) .hljs-emphasis[data-v-6c0ead0d]{font-style:italic}html:not(.dark) .hljs-strong[data-v-6c0ead0d]{font-weight:700}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: GitHub Dark + Description: Dark theme as seen on github.com + Author: github.com + Maintainer: @Hirse + Updated: 2021-05-15 + + Outdated base version: https://github.com/primer/github-syntax-dark + Current colors taken from GitHub's CSS +*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.math[data-v-3ade7b33]{display:inline-block}.mathjax_block[data-v-3ade7b33]{display:block}.progress-bar-container[data-v-ae2d8fdf]{background-color:#f0f0f0;border-radius:4px;height:8px;overflow:hidden}.progress-bar[data-v-ae2d8fdf]{background-color:#3498db;height:100%;transition:width .3s ease}.custom-scrollbar[data-v-481e83c1]{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.5) transparent}.custom-scrollbar[data-v-481e83c1]::-webkit-scrollbar{width:8px;height:8px}.custom-scrollbar[data-v-481e83c1]::-webkit-scrollbar-track{background-color:transparent}.custom-scrollbar[data-v-481e83c1]::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-481e83c1]:is(.dark *)::-webkit-scrollbar-thumb{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-481e83c1]::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-481e83c1]:is(.dark *)::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.range-thumb[data-v-481e83c1]{margin-top:-.25rem;height:1rem;width:1rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark .range-thumb[data-v-481e83c1]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.switch-thumb[data-v-481e83c1]{position:absolute;top:.125rem;left:.125rem;height:1.25rem;width:1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.peer:checked~.switch-thumb[data-v-481e83c1]{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~div[data-v-481e83c1]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.dark .peer:checked~div[data-v-481e83c1]{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.toastItem-enter-active[data-v-46f379e5],.toastItem-leave-active[data-v-46f379e5]{transition:all .5s ease}.toastItem-enter-from[data-v-46f379e5],.toastItem-leave-to[data-v-46f379e5]{opacity:0;transform:translate(-30px)}.topbar-container[data-v-67d4295d]{position:fixed;top:0;left:0;right:0;z-index:1000}.topbar[data-v-67d4295d]{background-color:#ffffff1a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:transform .3s ease-in-out;display:flex;justify-content:center}.topbar-hidden[data-v-67d4295d]{transform:translateY(-100%)}.topbar-content[data-v-67d4295d]{display:flex;justify-content:space-between;align-items:center;max-width:1200px;width:100%}.pin-button[data-v-67d4295d]{background-color:transparent;border:none;cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center}.pin-button svg[data-v-67d4295d]{width:24px;height:24px;transition:transform .3s ease}.pin-button:hover svg[data-v-67d4295d]{transform:scale(1.2)}.placeholder[data-v-67d4295d]{height:10px}.topbar-container[data-v-67d4295d]{position:relative;width:100%}.hover-zone[data-v-67d4295d]{opacity:0}.error[data-v-67d4295d]{color:red;margin-left:1rem}.overlay[data-v-c3cec55e]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0006;z-index:1000;cursor:pointer}.card-container.scale-110[data-v-c3cec55e]{z-index:1001}.card-container[data-v-c3cec55e],.shrunk-card[data-v-c3cec55e]{transition-property:transform,background-color,border-color,color,box-shadow,background-opacity,-webkit-backdrop-filter;transition-property:transform,background-color,border-color,color,box-shadow,background-opacity,backdrop-filter;transition-property:transform,background-color,border-color,color,box-shadow,background-opacity,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:ease-in-out;transition-duration:.3s}.card-container[data-v-c3cec55e]:focus-within,.shrunk-card[data-v-c3cec55e]:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px;--tw-ring-offset-color: transparent}.card-container[data-v-c3cec55e],.shrunk-card[data-v-c3cec55e],button[data-v-c3cec55e]{outline:none}.dropdown-shadow[data-v-6c3ea3a5]{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}:root.dark .dropdown-shadow[data-v-6c3ea3a5]{box-shadow:0 4px 6px -1px #ffffff1a,0 2px 4px -1px #ffffff0f}select[data-v-721d5f23]{width:200px}body[data-v-721d5f23]{background-color:#fafafa;font-family:sans-serif}.container[data-v-721d5f23]{margin:4px auto;width:800px}.settings[data-v-721d5f23]{position:fixed;top:0;right:0;width:500px;background-color:#fff;z-index:1000;overflow-y:auto;height:100%}.slider-container[data-v-721d5f23]{margin-top:20px}.slider-value[data-v-721d5f23]{display:inline-block;margin-left:10px;color:#6b7280;font-size:14px}.small-button[data-v-721d5f23]{padding:.5rem .75rem;font-size:.875rem}.active-tab[data-v-dd0910af]{font-weight:700}.help-view[data-v-b2cccf53]{display:flex;flex-direction:column}@media (min-width: 768px){.help-view[data-v-b2cccf53]{flex-direction:row}}.left-bar[data-v-b2cccf53]{scrollbar-width:thin;scrollbar-color:#888 #f1f1f1}.left-bar[data-v-b2cccf53]::-webkit-scrollbar{width:10px}.left-bar[data-v-b2cccf53]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.left-bar[data-v-b2cccf53]::-webkit-scrollbar-thumb{background:#888;border-radius:10px;border:2px solid #f1f1f1}.left-bar[data-v-b2cccf53]::-webkit-scrollbar-thumb:hover{background:#555}.main-content[data-v-b2cccf53]{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s}.big-card[data-v-b2cccf53]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.big-card[data-v-b2cccf53]:hover{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.help-content[data-v-b2cccf53]{padding:1rem}.main-content[data-v-b2cccf53]::-webkit-scrollbar,.help-content[data-v-b2cccf53]::-webkit-scrollbar{width:12px}.main-content[data-v-b2cccf53]::-webkit-scrollbar-track,.help-content[data-v-b2cccf53]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:12px}.main-content[data-v-b2cccf53]::-webkit-scrollbar-thumb,.help-content[data-v-b2cccf53]::-webkit-scrollbar-thumb{background:#888;border-radius:12px;border:3px solid #f1f1f1}.main-content[data-v-b2cccf53]::-webkit-scrollbar-thumb:hover,.help-content[data-v-b2cccf53]::-webkit-scrollbar-thumb:hover{background:#555}@media (max-width: 768px){.left-bar[data-v-b2cccf53]{position:fixed;top:0;left:0;z-index:20;height:100vh;width:16rem;--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width: 768px){.left-bar[data-v-b2cccf53]{width:18rem;--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}.main-content[data-v-b2cccf53]{margin-left:0;padding:1.5rem}.left-bar.open[data-v-b2cccf53]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.big-card[data-v-b2cccf53]{padding:1.5rem}h1[data-v-b2cccf53]{font-size:2.25rem;line-height:2.5rem}}.folder-button[data-v-095d6dfb]{display:flex;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;border-radius:.5rem;border-width:2px;border-style:dashed;padding:1rem;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;transition-property:all;min-height:100px}.folder-button[data-v-095d6dfb]:hover{border-style:solid;--tw-bg-opacity: .5;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.folder-button span[data-v-095d6dfb]{line-height:1.2}.border-blue-500[data-v-095d6dfb]:hover{--tw-bg-opacity: 1;background-color:rgb(235 245 255 / var(--tw-bg-opacity))}.border-blue-500[data-v-095d6dfb]:hover:is(.dark *){background-color:#23387633}.border-green-500[data-v-095d6dfb]:hover{--tw-bg-opacity: 1;background-color:rgb(243 250 247 / var(--tw-bg-opacity))}.border-green-500[data-v-095d6dfb]:hover:is(.dark *){background-color:#01473733}.border-yellow-500[data-v-095d6dfb]:hover{--tw-bg-opacity: 1;background-color:rgb(253 253 234 / var(--tw-bg-opacity))}.border-yellow-500[data-v-095d6dfb]:hover:is(.dark *){background-color:#63311233}.border-purple-500[data-v-095d6dfb]:hover{--tw-bg-opacity: 1;background-color:rgb(246 245 255 / var(--tw-bg-opacity))}.border-purple-500[data-v-095d6dfb]:hover:is(.dark *){background-color:#4a1d9633}.border-red-500[data-v-095d6dfb]:hover{--tw-bg-opacity: 1;background-color:rgb(253 242 242 / var(--tw-bg-opacity))}.border-red-500[data-v-095d6dfb]:hover:is(.dark *){background-color:#771d1d33}.transition-all[data-v-095d6dfb]{transition-property:all}.duration-300[data-v-095d6dfb]{transition-duration:.3s}.input-field[data-v-29a3f94a]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-29a3f94a]:focus{border-color:var(--color-primary);outline:2px solid transparent;outline-offset:2px;--tw-ring-color: var(--color-primary) }.input-field[data-v-29a3f94a]:disabled{cursor:not-allowed;opacity:.5}.input-field[data-v-29a3f94a]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}@media (min-width: 640px){.input-field[data-v-29a3f94a]{font-size:.875rem;line-height:1.25rem}}.setting-item[data-v-3d0b320b]{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem;padding-bottom:.5rem}@media (min-width: 768px){.setting-item[data-v-3d0b320b]{flex-direction:row;align-items:center;gap:1rem}}.setting-label[data-v-3d0b320b]{display:block;width:100%;flex-shrink:0;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label[data-v-3d0b320b]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label[data-v-3d0b320b]{width:33.333333%}}@media (min-width: 1024px){.setting-label[data-v-3d0b320b]{width:25%}}.input-field[data-v-3d0b320b]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-3d0b320b]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field[data-v-3d0b320b]:disabled{opacity:.5}.input-field[data-v-3d0b320b]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field[data-v-3d0b320b]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}@media (min-width: 640px){.input-field[data-v-3d0b320b]{font-size:.875rem;line-height:1.25rem}}.toggle-item[data-v-3d0b320b]{display:flex;align-items:center;justify-content:space-between;border-radius:.5rem;padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.toggle-item[data-v-3d0b320b]:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.toggle-item[data-v-3d0b320b]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.toggle-label[data-v-3d0b320b]{margin-right:1rem;flex:1 1 0%;cursor:pointer;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.toggle-label[data-v-3d0b320b]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.toggle-description[data-v-3d0b320b]{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-description[data-v-3d0b320b]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.button-primary[data-v-3d0b320b]{cursor:pointer;border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));padding:.5rem 1rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.button-primary[data-v-3d0b320b]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary[data-v-3d0b320b]:disabled{cursor:not-allowed;opacity:.5}.button-danger[data-v-3d0b320b]{cursor:pointer;border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity));padding:.5rem 1rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.button-danger[data-v-3d0b320b]:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.button-danger[data-v-3d0b320b]:disabled{cursor:not-allowed;opacity:.5}.setting-item[data-v-52537129]{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem;padding-bottom:.5rem}@media (min-width: 768px){.setting-item[data-v-52537129]{flex-direction:row;align-items:center;gap:1rem}}.setting-label[data-v-52537129]{display:block;width:100%;flex-shrink:0;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label[data-v-52537129]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label[data-v-52537129]{width:33.333333%}}@media (min-width: 1024px){.setting-label[data-v-52537129]{width:25%}}.setting-label-inline[data-v-52537129]{margin-bottom:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:500;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.setting-label-inline[data-v-52537129]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.input-field[data-v-52537129]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-52537129]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field[data-v-52537129]:disabled{opacity:.5}.input-field[data-v-52537129]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}@media (min-width: 640px){.input-field[data-v-52537129]{font-size:.875rem;line-height:1.25rem}}.input-field-sm[data-v-52537129]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.375rem .625rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field-sm[data-v-52537129]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field-sm[data-v-52537129]:disabled{opacity:.5}.input-field-sm[data-v-52537129]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field-sm[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.range-input[data-v-52537129]{height:.5rem;width:100%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));accent-color:#1C64F2}.range-input[data-v-52537129]:disabled{opacity:.5}.range-input[data-v-52537129]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.toggle-item[data-v-52537129]{display:flex;align-items:center;justify-content:space-between;border-radius:.5rem;padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.toggle-item[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.toggle-item[data-v-52537129]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.toggle-label[data-v-52537129]{margin-right:1rem;flex:1 1 0%;cursor:pointer;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.toggle-label[data-v-52537129]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.toggle-description[data-v-52537129]{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-description[data-v-52537129]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.button-base[data-v-52537129]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-base[data-v-52537129]:disabled{opacity:.5}.button-base[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-base-sm[data-v-52537129]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base-sm[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-base-sm[data-v-52537129]:disabled{opacity:.5}.button-base-sm[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-primary[data-v-52537129]:disabled{opacity:.5}.button-primary[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.button-secondary[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-secondary[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-secondary[data-v-52537129]:disabled{opacity:.5}.button-secondary[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-secondary[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.button-secondary[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity))}.button-secondary[data-v-52537129]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.button-secondary[data-v-52537129]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.button-success[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-success[data-v-52537129]:disabled{opacity:.5}.button-success[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-success[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}.button-danger[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-danger[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-danger[data-v-52537129]:disabled{opacity:.5}.button-danger[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-danger[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.button-danger[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity))}.button-primary-sm[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary-sm[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-primary-sm[data-v-52537129]:disabled{opacity:.5}.button-primary-sm[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary-sm[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary-sm[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.button-secondary-sm[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-secondary-sm[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-secondary-sm[data-v-52537129]:disabled{opacity:.5}.button-secondary-sm[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-secondary-sm[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.button-secondary-sm[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity))}.button-secondary-sm[data-v-52537129]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.button-secondary-sm[data-v-52537129]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.button-success-sm[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success-sm[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-success-sm[data-v-52537129]:disabled{opacity:.5}.button-success-sm[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-success-sm[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success-sm[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}[data-v-4777608e]:root{--color-primary: #3b82f6;--color-primary-rgb: 59, 130, 246}.dark[data-v-4777608e]:root{--color-primary: #60a5fa;--color-primary-rgb: 96, 165, 250}.setting-item[data-v-4777608e]{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem;padding-bottom:.5rem}@media (min-width: 768px){.setting-item[data-v-4777608e]{flex-direction:row;align-items:center;gap:1rem}}.setting-label[data-v-4777608e]{display:block;width:100%;flex-shrink:0;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label[data-v-4777608e]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label[data-v-4777608e]{width:33.333333%}}@media (min-width: 1024px){.setting-label[data-v-4777608e]{width:25%}}.input-field-sm[data-v-4777608e]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.375rem .625rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field-sm[data-v-4777608e]:focus{border-color:var(--color-primary);outline:2px solid transparent;outline-offset:2px;--tw-ring-color: var(--color-primary)}.input-field-sm[data-v-4777608e]:disabled{opacity:.5}.input-field-sm[data-v-4777608e]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]{height:.5rem;width:100%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]:disabled{opacity:.5}.range-input[data-v-4777608e]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]{accent-color:var(--color-primary)}.range-input[data-v-4777608e]::-webkit-slider-thumb{height:1rem;width:1rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:9999px;--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);-webkit-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background-color:var(--color-primary)}.range-input[data-v-4777608e]::-moz-range-thumb{height:1rem;width:1rem;cursor:pointer;border-radius:9999px;border-style:none;--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);-moz-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background-color:var(--color-primary)}.range-input[data-v-4777608e]:disabled::-webkit-slider-thumb{cursor:not-allowed;--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]:disabled:is(.dark *)::-webkit-slider-thumb{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]:disabled::-moz-range-thumb{cursor:not-allowed;--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]:disabled:is(.dark *)::-moz-range-thumb{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]:focus{outline:2px solid transparent;outline-offset:2px}.range-input[data-v-4777608e]:focus::-webkit-slider-thumb{box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(var(--color-primary-rgb),.5)}.dark .range-input[data-v-4777608e]:focus::-webkit-slider-thumb{box-shadow:0 0 0 2px #1f2937,0 0 0 4px rgba(var(--color-primary-rgb),.5)}.range-input[data-v-4777608e]:focus::-moz-range-thumb{box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(var(--color-primary-rgb),.5)}.dark .range-input[data-v-4777608e]:focus::-moz-range-thumb{box-shadow:0 0 0 2px #1f2937,0 0 0 4px rgba(var(--color-primary-rgb),.5)}.toggle-item[data-v-4777608e]{display:flex;align-items:center;justify-content:space-between;border-radius:.5rem;padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.toggle-item[data-v-4777608e]:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.toggle-item[data-v-4777608e]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.toggle-label[data-v-4777608e]{margin-right:1rem;flex:1 1 0%;cursor:pointer;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.toggle-label[data-v-4777608e]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.toggle-description[data-v-4777608e]{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-description[data-v-4777608e]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.setting-item-grid[data-v-a1a76c2e]{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));align-items:center;-moz-column-gap:1rem;column-gap:1rem;row-gap:.25rem;padding-top:.25rem;padding-bottom:.25rem}@media (min-width: 768px){.setting-item-grid[data-v-a1a76c2e]{grid-template-columns:minmax(150px,25%) 1fr}}.setting-label[data-v-a1a76c2e]{padding-right:.5rem;text-align:left;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label[data-v-a1a76c2e]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label[data-v-a1a76c2e]{text-align:right}}.setting-input-group[data-v-a1a76c2e]{display:flex;align-items:center;gap:.5rem}.input-field[data-v-a1a76c2e]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-a1a76c2e]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field[data-v-a1a76c2e]:disabled{opacity:.5}.input-field[data-v-a1a76c2e]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.input-field-sm[data-v-a1a76c2e]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.375rem .625rem;font-size:.75rem;line-height:1rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field-sm[data-v-a1a76c2e]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field-sm[data-v-a1a76c2e]:disabled{opacity:.5}.input-field-sm[data-v-a1a76c2e]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field-sm[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.toggle-item[data-v-a1a76c2e]{display:flex;align-items:center;justify-content:space-between;border-radius:.5rem;padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.toggle-item[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.toggle-item[data-v-a1a76c2e]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.toggle-label[data-v-a1a76c2e]{margin-right:1rem;flex:1 1 0%;cursor:pointer;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.toggle-label[data-v-a1a76c2e]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.toggle-description[data-v-a1a76c2e]{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-description[data-v-a1a76c2e]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.button-base[data-v-a1a76c2e]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-base[data-v-a1a76c2e]:disabled{opacity:.5}.button-base[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-base-sm[data-v-a1a76c2e]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base-sm[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-base-sm[data-v-a1a76c2e]:disabled{opacity:.5}.button-base-sm[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-primary[data-v-a1a76c2e]:disabled{opacity:.5}.button-primary[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.button-secondary[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-secondary[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-secondary[data-v-a1a76c2e]:disabled{opacity:.5}.button-secondary[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-secondary[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.button-secondary[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity))}.button-secondary[data-v-a1a76c2e]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.button-secondary[data-v-a1a76c2e]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.button-success[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-success[data-v-a1a76c2e]:disabled{opacity:.5}.button-success[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-success[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}.button-danger[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-danger[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-danger[data-v-a1a76c2e]:disabled{opacity:.5}.button-danger[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-danger[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.button-danger[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity))}.button-primary-sm[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary-sm[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-primary-sm[data-v-a1a76c2e]:disabled{opacity:.5}.button-primary-sm[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary-sm[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary-sm[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.button-secondary-sm[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-secondary-sm[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-secondary-sm[data-v-a1a76c2e]:disabled{opacity:.5}.button-secondary-sm[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-secondary-sm[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.button-secondary-sm[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity))}.button-secondary-sm[data-v-a1a76c2e]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.button-secondary-sm[data-v-a1a76c2e]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.button-success-sm[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success-sm[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-success-sm[data-v-a1a76c2e]:disabled{opacity:.5}.button-success-sm[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-success-sm[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success-sm[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}[data-feather][data-v-720de39c]{vertical-align:middle;width:1em;height:1em;stroke-width:2}@keyframes spin-720de39c{to{transform:rotate(360deg)}}.animate-spin[data-v-720de39c]{animation:spin-720de39c 1s linear infinite}@keyframes pulse-720de39c{50%{opacity:.5}}.animate-pulse[data-v-720de39c]{animation:pulse-720de39c 2s cubic-bezier(.4,0,.6,1) infinite}.line-clamp-3[data-v-720de39c]{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.input-field[data-v-62a84717]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-62a84717]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.input-field[data-v-62a84717]:disabled{opacity:.5}.input-field[data-v-62a84717]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.input-field[data-v-62a84717]:is(.dark *)::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.input-field[data-v-62a84717]:is(.dark *)::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.binding-entry-processing[data-v-62a84717]{opacity:.7;pointer-events:none}.bg-primary-light[data-v-62a84717]{background-color:#e0f2fe}.dark .bg-primary-dark\/20[data-v-62a84717]{background-color:#3b82f633}.border-primary-dark\/30[data-v-62a84717]{border-color:#2563eb4d}.focus\:ring-primary-dark\/50[data-v-62a84717]:focus{--tw-ring-color: rgba(37, 99, 235, .5)}.dark .fill-primary[data-v-62a84717]{fill:#3b82f6}.fill-primary[data-v-62a84717]{fill:#2563eb}.interactive-menu-container[data-v-e42afcb4]{position:relative;display:inline-block;text-align:left;--menu-trigger-bg: #F3F4F6;--menu-trigger-text: #4B5563;--menu-trigger-hover-bg: #E5E7EB;--menu-trigger-hover-text: #1F2937;--menu-trigger-focus-ring: #6875F5;--menu-dropdown-bg: #ffffff;--menu-dropdown-border: rgb(0 0 0 / 5%);--menu-dropdown-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--menu-item-text: #374151;--menu-item-hover-bg: #E5EDFF;--menu-item-hover-text: #111827;--menu-item-icon-color: #6B7280;--menu-item-icon-hover-color: #374151;--menu-item-checkmark-color: #5850EC}.dark .interactive-menu-container[data-v-e42afcb4]{--menu-trigger-bg: #374151;--menu-trigger-text: #9CA3AF;--menu-trigger-hover-bg: #4B5563;--menu-trigger-hover-text: #E5E7EB;--menu-dropdown-bg: #1F2937;--menu-dropdown-border: rgb(255 255 255 / 10%);--menu-item-text: #E5E7EB;--menu-item-hover-bg: #362F78;--menu-item-hover-text: #F3F4F6;--menu-item-icon-color: #9CA3AF;--menu-item-icon-hover-color: #E5E7EB;--menu-item-checkmark-color: #8DA2FB}.interactive-menu-trigger[data-v-e42afcb4]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;padding:.25rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1);background-color:var(--menu-trigger-bg);color:var(--menu-trigger-text);line-height:0;border:none;cursor:pointer}.interactive-menu-trigger[data-v-e42afcb4]:hover{background-color:var(--menu-trigger-hover-bg);color:var(--menu-trigger-hover-text)}.interactive-menu-trigger[data-v-e42afcb4]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px;ring-color:var(--menu-trigger-focus-ring)}.interactive-menu-trigger-icon[data-v-e42afcb4]{height:1.25rem;width:1.25rem}.interactive-menu-trigger-text[data-v-e42afcb4]{padding-left:.25rem;padding-right:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:600}.interactive-menu-dropdown[data-v-e42afcb4]{position:absolute;z-index:50;margin-top:.5rem;width:14rem;border-radius:.375rem;--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.interactive-menu-dropdown[data-v-e42afcb4]:focus{outline:2px solid transparent;outline-offset:2px}.interactive-menu-dropdown[data-v-e42afcb4]{background-color:var(--menu-dropdown-bg);ring-color:var(--menu-dropdown-border);box-shadow:var(--menu-dropdown-shadow);min-width:14rem;max-height:75vh;overflow-y:auto}.interactive-menu-list[data-v-e42afcb4]{margin:0;list-style-type:none;padding:0;padding-top:.25rem;padding-bottom:.25rem}.interactive-menu-item[data-v-e42afcb4]{display:flex;cursor:pointer;align-items:center;white-space:nowrap;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;color:var(--menu-item-text);min-height:2.25rem}.interactive-menu-item[data-v-e42afcb4]:hover,.interactive-menu-item[data-v-e42afcb4]:focus{background-color:var(--menu-item-hover-bg);color:var(--menu-item-hover-text);outline:none}.interactive-menu-item:hover .interactive-menu-item-icon-container[data-v-e42afcb4],.interactive-menu-item:focus .interactive-menu-item-icon-container[data-v-e42afcb4]{color:var(--menu-item-icon-hover-color)}.interactive-menu-item-checkmark-placeholder[data-v-e42afcb4]{margin-right:.5rem;display:flex;width:1rem;flex-shrink:0;align-items:center;justify-content:center}.interactive-menu-item-checkmark-icon[data-v-e42afcb4]{height:1rem;width:1rem;color:var(--menu-item-checkmark-color)}.interactive-menu-item-icon-container[data-v-e42afcb4]{margin-right:.5rem;display:flex;width:1rem;flex-shrink:0;align-items:center;justify-content:center;color:var(--menu-item-icon-color);transition:color .15s ease-in-out}.interactive-menu-item-icon[data-v-e42afcb4]{height:1rem;width:1rem}.interactive-menu-item-icon-text[data-v-e42afcb4]{font-size:.75rem;line-height:1rem;font-weight:700}.interactive-menu-item-icon-placeholder[data-v-e42afcb4]{display:inline-block;height:1rem;width:1rem}.interactive-menu-item-name[data-v-e42afcb4]{flex:1 1 0%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.interactive-menu-transition-enter-active[data-v-e42afcb4]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.1s;transition-timing-function:cubic-bezier(0,0,.2,1)}.interactive-menu-transition-enter-from[data-v-e42afcb4]{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:0}.interactive-menu-transition-enter-to[data-v-e42afcb4]{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:1}.interactive-menu-transition-leave-active[data-v-e42afcb4]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:75ms;transition-timing-function:cubic-bezier(.4,0,1,1)}.interactive-menu-transition-leave-from[data-v-e42afcb4]{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:1}.interactive-menu-transition-leave-to[data-v-e42afcb4]{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:0}.interactive-menu-dropdown[data-v-e42afcb4]::-webkit-scrollbar{width:6px}.interactive-menu-dropdown[data-v-e42afcb4]::-webkit-scrollbar-track{background:transparent}.interactive-menu-dropdown[data-v-e42afcb4]::-webkit-scrollbar-thumb{background-color:#9ca3af66;border-radius:3px}.dark .interactive-menu-dropdown[data-v-e42afcb4]::-webkit-scrollbar-thumb{background-color:#4b556380}.interactive-menu-dropdown[data-v-e42afcb4]{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.4) transparent}.dark .interactive-menu-dropdown[data-v-e42afcb4]{scrollbar-color:rgba(75,85,99,.5) transparent}[aria-disabled=true][data-v-1f7c2197]{cursor:not-allowed}.button-base-sm[data-v-1f7c2197]{display:inline-flex;align-items:center;justify-content:center;border-radius:.25rem;border-width:1px;border-color:transparent;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base-sm[data-v-1f7c2197]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-base-sm[data-v-1f7c2197]:disabled{opacity:.5}.button-base-sm[data-v-1f7c2197]:focus:is(.dark *){--tw-ring-offset-color: #111827 }.button-primary-sm[data-v-1f7c2197]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.25rem;border-width:1px;border-color:transparent;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary-sm[data-v-1f7c2197]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-primary-sm[data-v-1f7c2197]:disabled{opacity:.5}.button-primary-sm[data-v-1f7c2197]:focus:is(.dark *){--tw-ring-offset-color: #111827 }.button-primary-sm[data-v-1f7c2197]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary-sm[data-v-1f7c2197]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity)) }.button-success-sm[data-v-1f7c2197]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.25rem;border-width:1px;border-color:transparent;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success-sm[data-v-1f7c2197]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-success-sm[data-v-1f7c2197]:disabled{opacity:.5}.button-success-sm[data-v-1f7c2197]:focus:is(.dark *){--tw-ring-offset-color: #111827 }.button-success-sm[data-v-1f7c2197]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success-sm[data-v-1f7c2197]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity)) }.button-danger-sm[data-v-1f7c2197]{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.25rem;border-width:1px;border-color:transparent;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-danger-sm[data-v-1f7c2197]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-danger-sm[data-v-1f7c2197]:disabled{opacity:.5}.button-danger-sm[data-v-1f7c2197]:focus:is(.dark *){--tw-ring-offset-color: #111827 }.button-danger-sm[data-v-1f7c2197]:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.button-danger-sm[data-v-1f7c2197]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity)) }.button-secondary-sm[data-v-1f7c2197]{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.25rem;border-width:1px;border-color:transparent;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-secondary-sm[data-v-1f7c2197]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-secondary-sm[data-v-1f7c2197]:disabled{opacity:.5}.button-secondary-sm[data-v-1f7c2197]:focus:is(.dark *){--tw-ring-offset-color: #111827 }.button-secondary-sm[data-v-1f7c2197]:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.button-secondary-sm[data-v-1f7c2197]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity)) }.button-secondary-sm[data-v-1f7c2197]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.button-secondary-sm[data-v-1f7c2197]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}[data-feather][data-v-1f7c2197]{display:inline-block;height:1rem;width:1rem;vertical-align:middle}.fade-enter-active[data-v-f43216be],.fade-leave-active[data-v-f43216be]{transition:opacity .3s}.fade-enter[data-v-f43216be],.fade-leave-to[data-v-f43216be]{opacity:0}.input-field[data-v-8f6b5014]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-8f6b5014]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field[data-v-8f6b5014]:disabled{opacity:.5}.input-field[data-v-8f6b5014]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.input-field-sm[data-v-8f6b5014]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.375rem .625rem;font-size:.75rem;line-height:1rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field-sm[data-v-8f6b5014]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field-sm[data-v-8f6b5014]:disabled{opacity:.5}.input-field-sm[data-v-8f6b5014]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field-sm[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.setting-label-inline[data-v-8f6b5014]{margin-bottom:.25rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label-inline[data-v-8f6b5014]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.button-base-sm[data-v-8f6b5014]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base-sm[data-v-8f6b5014]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-base-sm[data-v-8f6b5014]:disabled{opacity:.5}.button-base-sm[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary-sm[data-v-8f6b5014]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary-sm[data-v-8f6b5014]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-primary-sm[data-v-8f6b5014]:disabled{opacity:.5}.button-primary-sm[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary-sm[data-v-8f6b5014]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary-sm[data-v-8f6b5014]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.button-success-sm[data-v-8f6b5014]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success-sm[data-v-8f6b5014]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-success-sm[data-v-8f6b5014]:disabled{opacity:.5}.button-success-sm[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-success-sm[data-v-8f6b5014]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success-sm[data-v-8f6b5014]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}.button-danger-sm[data-v-8f6b5014]{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-danger-sm[data-v-8f6b5014]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-danger-sm[data-v-8f6b5014]:disabled{opacity:.5}.button-danger-sm[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-danger-sm[data-v-8f6b5014]:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.button-danger-sm[data-v-8f6b5014]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity))}.model-grid-enter-active[data-v-8f6b5014],.model-grid-leave-active[data-v-8f6b5014]{transition:all .5s ease}.model-grid-enter-from[data-v-8f6b5014],.model-grid-leave-to[data-v-8f6b5014]{opacity:0;transform:translateY(15px)}.bg-primary-light[data-v-8f6b5014]{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}.dark .bg-primary-dark\/20[data-v-8f6b5014]:is(.dark *){background-color:#3f83f833}.border-primary-dark\/30[data-v-8f6b5014]{border-color:#3f83f84d}[data-feather].w-4[data-v-8f6b5014]{display:inline-block;vertical-align:middle}[data-feather].animate-spin[data-v-8f6b5014]{animation:spin-8f6b5014 1s linear infinite}@keyframes spin-8f6b5014{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.input[data-v-de225b9a]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input[data-v-de225b9a]:focus{border-color:transparent;outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.input[data-v-de225b9a]:disabled{opacity:.5}.input[data-v-de225b9a]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.btn[data-v-de225b9a]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn[data-v-de225b9a]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.btn[data-v-de225b9a]:disabled{opacity:.5}.btn[data-v-de225b9a]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.btn-sm[data-v-de225b9a]{padding:.375rem .625rem;font-size:.75rem;line-height:1rem}.scrollbar-thin[data-v-de225b9a]{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.scrollbar-thin[data-v-de225b9a]::-webkit-scrollbar{width:8px;height:8px}.scrollbar-thin[data-v-de225b9a]::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:4px}.scrollbar-thin[data-v-de225b9a]::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:4px;border:2px solid var(--scrollbar-track)}[data-v-de225b9a]:root{--scrollbar-thumb: #cbd5e1;--scrollbar-track: #f1f5f9}.dark[data-v-de225b9a]:root{--scrollbar-thumb: #4b5563;--scrollbar-track: #1f2937}.scrollbar-thumb-blue-300[data-v-de225b9a]{--scrollbar-thumb: #93c5fd}.scrollbar-track-blue-100[data-v-de225b9a]{--scrollbar-track: #dbeafe}.dark .dark\:scrollbar-thumb-blue-700[data-v-de225b9a]{--scrollbar-thumb: #1d4ed8}.dark .dark\:scrollbar-track-blue-900[data-v-de225b9a]{--scrollbar-track: #1e3a8a}.setting-item[data-v-99271729]{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem;padding-bottom:.5rem}@media (min-width: 768px){.setting-item[data-v-99271729]{flex-direction:row;align-items:center;gap:1rem}}.setting-label[data-v-99271729]{display:block;width:100%;flex-shrink:0;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label[data-v-99271729]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label[data-v-99271729]{width:33.333333%}}@media (min-width: 1024px){.setting-label[data-v-99271729]{width:25%}}.input-field-sm[data-v-99271729]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.375rem .625rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field-sm[data-v-99271729]:focus{border-color:var(--color-primary);outline:2px solid transparent;outline-offset:2px;--tw-ring-color: var(--color-primary) }.input-field-sm[data-v-99271729]:disabled{opacity:.5}.input-field-sm[data-v-99271729]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.range-input[data-v-99271729]{height:.5rem;width:100%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));accent-color:var(--color-primary)}.range-input[data-v-99271729]:disabled{opacity:.5}.range-input[data-v-99271729]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.toggle-item[data-v-99271729]{display:flex;align-items:center;justify-content:space-between;border-radius:.5rem;padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.toggle-item[data-v-99271729]:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.toggle-item[data-v-99271729]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.toggle-label[data-v-99271729]{margin-right:1rem;flex:1 1 0%;cursor:pointer;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.toggle-label[data-v-99271729]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.toggle-description[data-v-99271729]{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-description[data-v-99271729]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.icon-button[data-v-9889ee74]{border-radius:9999px;padding:.375rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity));transition-duration:.15s}.icon-button[data-v-9889ee74]:active{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.icon-button[data-v-9889ee74]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.icon-button[data-v-9889ee74]:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.icon-button[data-v-9889ee74]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.panels-color[data-v-9889ee74]{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.panels-color[data-v-9889ee74]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.control-buttons[data-v-2b3580ce]{position:absolute;top:0;right:0;height:100%;display:flex;align-items:center;transform:translate(100%);transition:transform .3s}.group:hover .control-buttons[data-v-2b3580ce]{transform:translate(0)}.control-buttons-inner[data-v-2b3580ce]{display:flex;gap:10px;align-items:center;background-color:#fff;padding:8px;border-radius:0 0 0 8px;box-shadow:0 2px 8px #0000001a}.json-tree[data-v-0535817b]{font-family:monospace;font-size:14px;line-height:1.5;margin-left:20px}.tree-node[data-v-0535817b]{position:relative}.node-label[data-v-0535817b]{cursor:pointer;padding:2px 0}.node-label[data-v-0535817b]:hover{background-color:#f0f0f0}.toggle-icon[data-v-0535817b]{display:inline-block;width:20px;color:#666}.node-content[data-v-0535817b]{border-left:1px dotted #ccc;margin-left:7px;padding-left:13px}.key[data-v-0535817b]{color:#881391;margin-right:5px}.value[data-v-0535817b]{padding:2px 4px}.value.string[data-v-0535817b]{color:#22863a}.value.number[data-v-0535817b]{color:#005cc5}.value.boolean[data-v-0535817b]{color:#d73a49}.value.null[data-v-0535817b]{color:#6a737d}.bracket[data-v-0535817b]{color:#444;margin-left:5px}.bracket-close[data-v-0535817b]{color:#444;margin-left:7px}.json-viewer[data-v-6fbe5047]{border:1px solid #ddd;border-radius:4px;margin:10px;background:#fff}.viewer-header[data-v-6fbe5047]{padding:8px 12px;background:#f5f5f5;cursor:pointer;border-bottom:1px solid #ddd}.viewer-header[data-v-6fbe5047]:hover{background:#eee}.toggle-icon[data-v-6fbe5047]{display:inline-block;width:20px;color:#666}.title[data-v-6fbe5047]{font-weight:700;color:#333}.viewer-content[data-v-6fbe5047]{padding:10px}.border-t-primary[data-v-2cb174d6]{border-color:#e2e8f0;border-top-color:currentColor}@keyframes spin-2cb174d6{to{transform:rotate(360deg)}}.animate-spin[data-v-2cb174d6]{animation:spin-2cb174d6 .8s linear infinite}.expand-button[data-v-1a0adb61]{margin-left:10px;margin-right:10px;background:none;border:none;padding:0;cursor:pointer}.htmljs[data-v-1a0adb61]{background:none}@keyframes fadeIn-1a0adb61{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn[data-v-1a0adb61]{animation:fadeIn-1a0adb61 .5s ease-out forwards}details[open] summary[data-v-1a0adb61]~*{animation:slideDown-1a0adb61 .3s ease-in-out}details summary[data-v-1a0adb61]::marker{display:none}details summary[data-v-1a0adb61]::-webkit-details-marker{display:none}@keyframes slideDown-1a0adb61{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.custom-scrollbar[data-v-41cc1849]::-webkit-scrollbar{width:.5rem}.custom-scrollbar[data-v-41cc1849]::-webkit-scrollbar-track{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-41cc1849]:is(.dark *)::-webkit-scrollbar-track{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-41cc1849]::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-41cc1849]:is(.dark *)::-webkit-scrollbar-thumb{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-41cc1849]::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-41cc1849]:is(.dark *)::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}@keyframes spin-slow-385263fc{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin-slow[data-v-385263fc]{animation:spin-slow-385263fc 3s linear infinite}.personalities-hover-area[data-v-385263fc]{position:relative;padding-top:10px}.custom-scrollbar[data-v-385263fc]{scrollbar-width:thin;scrollbar-color:rgba(155,155,155,.5) transparent}.custom-scrollbar[data-v-385263fc]::-webkit-scrollbar{width:6px}.custom-scrollbar[data-v-385263fc]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar[data-v-385263fc]::-webkit-scrollbar-thumb{background-color:#9b9b9b80;border-radius:20px;border:transparent}.list-move[data-v-385263fc],.list-enter-active[data-v-385263fc],.list-leave-active[data-v-385263fc]{transition:all .5s ease}.list-enter-from[data-v-385263fc]{transform:translatey(-30px)}.list-leave-to[data-v-385263fc]{opacity:0;transform:translatey(30px)}.list-leave-active[data-v-385263fc]{position:absolute}@keyframes rolling-ball-861ce6fc{0%{transform:translate(-50px) rotate(0)}25%{transform:translate(0) rotate(90deg)}50%{transform:translate(50px) rotate(180deg)}75%{transform:translate(0) rotate(270deg)}to{transform:translate(-50px) rotate(360deg)}}@keyframes bounce-861ce6fc{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes fade-in-up-861ce6fc{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-rolling-ball[data-v-861ce6fc]{animation:rolling-ball-861ce6fc 4s infinite ease-in-out,bounce-861ce6fc 1s infinite ease-in-out}.animate-fade-in-up[data-v-861ce6fc]{animation:fade-in-up-861ce6fc 1.5s ease-out}.floating-button-container[data-v-861ce6fc]{position:fixed;bottom:30px;right:30px;z-index:9999}.floating-button[data-v-861ce6fc]{position:fixed;bottom:30px;right:30px;width:100px;height:100px;border-radius:50%;background-color:#ff4500e6;display:flex;justify-content:center;align-items:center;box-shadow:0 0 30px #ff4500cc;animation:pulse-861ce6fc 1.5s infinite,glow-861ce6fc 2s infinite,wobble-861ce6fc 3s infinite;overflow:hidden;z-index:9999;transition:all .3s ease}.floating-button[data-v-861ce6fc]:hover{transform:scale(1.2) rotate(5deg);background-color:#ff4500}.tooltip[data-v-861ce6fc]{position:absolute;background-color:#000c;color:#fff;padding:8px 12px;border-radius:8px;font-size:16px;font-weight:700;white-space:nowrap;opacity:0;transition:opacity .3s ease,transform .3s ease;pointer-events:none;top:-50px;left:50%;transform:translate(-50%) scale(.9)}.floating-button:hover .tooltip[data-v-861ce6fc]{opacity:1;transform:translate(-50%) scale(1)}@keyframes pulse-861ce6fc{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes glow-861ce6fc{0%{box-shadow:0 0 30px #ff4500cc}50%{box-shadow:0 0 60px #ff4500,0 0 90px #ff450099}to{box-shadow:0 0 30px #ff4500cc}}@keyframes wobble-861ce6fc{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.hidden[data-v-861ce6fc]{display:none}.popup-container[data-v-425d1bc4]{background-color:#fff;color:#333;border-radius:8px;box-shadow:0 4px 6px #0000001a;padding:24px;width:100%;height:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.close-button[data-v-425d1bc4]{position:absolute;top:16px;right:16px;background-color:#3490dc;color:#fff;font-weight:700;padding:8px 16px;border-radius:8px;cursor:pointer;transition:background-color .3s ease}.close-button[data-v-425d1bc4]:hover{background-color:#2779bd}.iframe-content[data-v-425d1bc4]{width:100%;height:80%;border:none;margin-bottom:16px}.checkbox-container[data-v-425d1bc4]{display:flex;align-items:center;justify-content:center}.styled-checkbox[data-v-425d1bc4]{width:24px;height:24px;accent-color:#3490dc;cursor:pointer}.checkbox-label[data-v-425d1bc4]{margin-left:8px;font-size:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fade-enter-active[data-v-425d1bc4],.fade-leave-active[data-v-425d1bc4]{transition:opacity .5s}.fade-enter[data-v-425d1bc4],.fade-leave-to[data-v-425d1bc4]{opacity:0}.glow-effect[data-v-70cef6eb]{box-shadow:0 0 5px 2px #00ffffb3;animation:glow-70cef6eb 1.5s ease-in-out infinite alternate}@keyframes glow-70cef6eb{0%{box-shadow:0 0 5px 2px #00ffffb3}to{box-shadow:0 0 20px 2px #00ffffb3}}.fixed.inset-0[data-v-6f262cbb]{background-color:#0006}.bg-white[data-v-6f262cbb]{max-width:56rem;box-shadow:0 10px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.changelog-header[data-v-6f262cbb]{display:flex;align-items:center;justify-content:space-between;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:1rem;border-top-left-radius:.5rem;border-top-right-radius:.5rem}.header-title[data-v-6f262cbb]{font-size:1.25rem;line-height:1.75rem;font-weight:600;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.close-btn[data-v-6f262cbb]{border-radius:9999px;padding:.25rem;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.close-btn[data-v-6f262cbb]:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.changelog-content[data-v-6f262cbb]{flex:1 1 0%;overflow-y:auto;padding:1.5rem;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}.changelog-content[data-v-6f262cbb] h1,.changelog-content[data-v-6f262cbb] h2,.changelog-content[data-v-6f262cbb] h3,.changelog-content[data-v-6f262cbb] h4,.changelog-content[data-v-6f262cbb] h5,.changelog-content[data-v-6f262cbb] h6{margin-bottom:.75rem;margin-top:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.changelog-content[data-v-6f262cbb] h1:first-child,.changelog-content[data-v-6f262cbb] h2:first-child,.changelog-content[data-v-6f262cbb] h3:first-child,.changelog-content[data-v-6f262cbb] h4:first-child,.changelog-content[data-v-6f262cbb] h5:first-child,.changelog-content[data-v-6f262cbb] h6:first-child{margin-top:0}.changelog-content[data-v-6f262cbb] h1{margin-bottom:1rem;border-bottom-width:1px;padding-bottom:.5rem;font-size:1.5rem;line-height:2rem}.changelog-content[data-v-6f262cbb] h2{margin-bottom:.75rem;border-bottom-width:1px;padding-bottom:.25rem;font-size:1.25rem;line-height:1.75rem}.changelog-content[data-v-6f262cbb] h3{font-size:1.125rem;line-height:1.75rem}.changelog-content[data-v-6f262cbb] h4{font-size:1rem;line-height:1.5rem}.changelog-content[data-v-6f262cbb] p{margin-bottom:1rem}.changelog-content[data-v-6f262cbb] ul,.changelog-content[data-v-6f262cbb] ol{margin-bottom:1rem;padding-left:1.5rem}.changelog-content[data-v-6f262cbb] li{margin-bottom:.25rem}.changelog-content[data-v-6f262cbb] ul{list-style-type:disc}.changelog-content[data-v-6f262cbb] ol{list-style-type:decimal}.changelog-content[data-v-6f262cbb] code{border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));padding:.125rem .25rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity));font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace}.changelog-content[data-v-6f262cbb] pre{margin-bottom:1rem;overflow-x:auto;border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:1rem;font-size:.875rem;line-height:1.25rem;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace}.changelog-content[data-v-6f262cbb] pre code{border-style:none;background-color:transparent;padding:0;font-size:.875rem;line-height:1.25rem}.changelog-content[data-v-6f262cbb] blockquote{margin-top:1rem;margin-bottom:1rem;border-left-width:4px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-style:italic;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.changelog-content[data-v-6f262cbb] a{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.changelog-content[data-v-6f262cbb] a:hover{--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity));text-decoration-line:underline}.changelog-footer[data-v-6f262cbb]{display:flex;justify-content:flex-end;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:1rem;border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.action-btn[data-v-6f262cbb]{border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));padding:.5rem 1.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.action-btn[data-v-6f262cbb]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.action-btn[data-v-6f262cbb]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.action-btn[data-v-6f262cbb]:active{--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.personalities-container[data-v-0b856c53]{position:relative}.skills-lib-icon[data-v-0b856c53]{position:absolute;top:-2px;right:-2px;z-index:10;font-size:5px;width:2px;height:2px}.skills-lib-icon i[data-v-0b856c53]{width:2px;height:2px}@keyframes giggle-0b856c53{0%,to{transform:translate(0) rotate(0) scale(1)}25%{transform:translate(-5px) rotate(-10deg) scale(1.05)}50%{transform:translate(5px) rotate(10deg) scale(.95)}75%{transform:translate(-5px) rotate(-10deg) scale(1.05)}}.animate-giggle[data-v-0b856c53]{animation:giggle-0b856c53 1.5s infinite ease-in-out}.custom-scrollbar[data-v-0b856c53]{scrollbar-width:thin;scrollbar-color:rgba(155,155,155,.5) transparent}.custom-scrollbar[data-v-0b856c53]::-webkit-scrollbar{width:8px}.custom-scrollbar[data-v-0b856c53]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar[data-v-0b856c53]::-webkit-scrollbar-thumb{background-color:#9b9b9b80;border-radius:20px;border:transparent}@keyframes custom-pulse-0b856c53{0%,to{box-shadow:0 0 #3b82f680}50%{box-shadow:0 0 0 15px #3b82f600}}.animate-pulse[data-v-0b856c53]{animation:custom-pulse-0b856c53 2s infinite}.slide-right-enter-active[data-v-0b856c53],.slide-right-leave-active[data-v-0b856c53]{transition:transform .3s ease}.slide-right-enter[data-v-0b856c53],.slide-right-leave-to[data-v-0b856c53]{transform:translate(-100%)}.slide-left-enter-active[data-v-0b856c53],.slide-left-leave-active[data-v-0b856c53]{transition:transform .3s ease}.slide-left-enter[data-v-0b856c53],.slide-left-leave-to[data-v-0b856c53]{transform:translate(100%)}.fade-and-fly-enter-active[data-v-0b856c53]{animation:fade-and-fly-enter-0b856c53 .5s ease}.fade-and-fly-leave-active[data-v-0b856c53]{animation:fade-and-fly-leave-0b856c53 .5s ease}@keyframes fade-and-fly-enter-0b856c53{0%{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fade-and-fly-leave-0b856c53{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-20px) scale(1.2)}}.list-move[data-v-0b856c53],.list-enter-active[data-v-0b856c53],.list-leave-active[data-v-0b856c53]{transition:all .5s ease}.list-enter-from[data-v-0b856c53]{transform:translatey(-30px)}.list-leave-to[data-v-0b856c53]{opacity:0;transform:translatey(30px)}.list-leave-active[data-v-0b856c53]{position:absolute}@keyframes float-0b856c53{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.animate-float[data-v-0b856c53]{animation:float-0b856c53 linear infinite}@keyframes star-move-0b856c53{0%{transform:translate(0) rotate(0)}50%{transform:translate(20px,20px) rotate(180deg)}to{transform:translate(0) rotate(360deg)}}.animate-star[data-v-0b856c53]{animation:star-move-0b856c53 linear infinite}@keyframes fall-0b856c53{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(calc(100vh + 20px)) rotate(360deg);opacity:0}}.animate-fall[data-v-0b856c53]{animation:fall-0b856c53 linear infinite}@keyframes glow-0b856c53{0%,to{text-shadow:0 0 5px rgba(66,153,225,.5),0 0 10px rgba(66,153,225,.5)}50%{text-shadow:0 0 20px rgba(66,153,225,.8),0 0 30px rgba(66,153,225,.8)}}.animate-glow[data-v-0b856c53]{animation:glow-0b856c53 2s ease-in-out infinite}@media (prefers-color-scheme: dark){@keyframes glow-0b856c53{0%,to{text-shadow:0 0 5px rgba(147,197,253,.5),0 0 10px rgba(147,197,253,.5)}50%{text-shadow:0 0 20px rgba(147,197,253,.8),0 0 30px rgba(147,197,253,.8)}0%,to{text-shadow:0 0 5px rgba(147,197,253,.5),0 0 10px rgba(147,197,253,.5)}50%{text-shadow:0 0 20px rgba(147,197,253,.8),0 0 30px rgba(147,197,253,.8)}}}@keyframes roll-0b856c53{0%{transform:translate(-50%) rotate(0)}to{transform:translate(50%) rotate(360deg)}}.animate-roll[data-v-0b856c53]{animation:roll-0b856c53 4s linear infinite}.toolbar[data-v-0b856c53]{position:relative;width:100%}.toolbar-container[data-v-0b856c53]{display:flex;height:2.5rem;align-items:center}.toolbar-button[data-v-0b856c53]{cursor:pointer;border-style:none;background-color:transparent;padding:.5rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.toolbar-button[data-v-0b856c53]:hover{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.menu-container[data-v-0b856c53]{position:relative}.expandable-menu[data-v-0b856c53]{position:absolute;top:100%;left:.625rem;flex-direction:column;border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.menu-container:hover .expandable-menu[data-v-0b856c53],.menu-visible[data-v-0b856c53]{display:flex}.menu-item[data-v-0b856c53]{background:none;border:none;cursor:pointer;padding:8px;color:#333;transition:background-color .3s}.menu-item[data-v-0b856c53]:hover{background-color:#f0f0f0}.dot[data-v-0b856c53]{width:10px;height:10px;border-radius:50%}.dot-green[data-v-0b856c53]{background-color:green}.dot-red[data-v-0b856c53]{background-color:red}.animate-pulse[data-v-0b856c53]{animation:pulse-0b856c53 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse-0b856c53{0%,to{opacity:1}50%{opacity:.7}}.logo-container[data-v-0b856c53]{position:relative;width:48px;height:48px}.logo-image[data-v-0b856c53]{width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover}@keyframes bounce-0b856c53{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce[data-v-0b856c53]{animation:bounce-0b856c53 1s infinite}@keyframes roll-and-bounce-0b856c53{0%,to{transform:translate(0) rotate(0)}45%{transform:translate(100px) rotate(360deg)}50%{transform:translate(90px) rotate(390deg)}55%{transform:translate(100px) rotate(360deg)}95%{transform:translate(0) rotate(0)}}@keyframes spin-0b856c53{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--baklava-control-color-primary: #e28b46;--baklava-control-color-error: #d00000;--baklava-control-color-background: #2c3748;--baklava-control-color-foreground: white;--baklava-control-color-hover: #455670;--baklava-control-color-active: #556986;--baklava-control-color-disabled-foreground: #666c75;--baklava-control-border-radius: 3px;--baklava-sidebar-color-background: #1b202c;--baklava-sidebar-color-foreground: white;--baklava-node-color-background: #1b202c;--baklava-node-color-foreground: white;--baklava-node-color-hover: #e28c4677;--baklava-node-color-selected: var(--baklava-control-color-primary);--baklava-node-color-resize-handle: var(--baklava-control-color-background);--baklava-node-title-color-background: #151a24;--baklava-node-title-color-foreground: white;--baklava-group-node-title-color-background: #215636;--baklava-group-node-title-color-foreground: white;--baklava-node-interface-port-tooltip-color-foreground: var(--baklava-control-color-primary);--baklava-node-interface-port-tooltip-color-background: var(--baklava-editor-background-pattern-black);--baklava-node-border-radius: 6px;--baklava-color-connection-default: #737f96;--baklava-color-connection-allowed: #48bc79;--baklava-color-connection-forbidden: #bc4848;--baklava-editor-background-pattern-default: #202b3c;--baklava-editor-background-pattern-line: #263140;--baklava-editor-background-pattern-black: #263140;--baklava-context-menu-background: #1b202c;--baklava-context-menu-shadow: 0 0 8px rgba(0, 0, 0, .65);--baklava-toolbar-background: #1b202caa;--baklava-toolbar-foreground: white;--baklava-node-palette-background: #1b202caa;--baklava-node-palette-foreground: white;--baklava-selectionbox-color-border: var(--baklava-node-color-background);--baklava-selectionbox-color-background: var(--baklava-node-color-hover);--baklava-visual-transition: .1s linear}.baklava-button{background-color:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);transition:background-color var(--baklava-visual-transition);border:none;padding:.45em .35em;border-radius:var(--baklava-control-border-radius);font-size:inherit;cursor:pointer;overflow-x:hidden}.baklava-button:hover{background-color:var(--baklava-control-color-hover)}.baklava-button:active{background-color:var(--baklava-control-color-primary)}.baklava-button.--block{width:100%}.baklava-checkbox{display:flex;padding:.35em 0;cursor:pointer;overflow-x:hidden;align-items:center}.baklava-checkbox .__checkmark-container{display:flex;background-color:var(--baklava-control-color-background);border-radius:var(--baklava-control-border-radius);transition:background-color var(--baklava-visual-transition);width:18px;height:18px}.baklava-checkbox:hover .__checkmark-container{background-color:var(--baklava-control-color-hover)}.baklava-checkbox:active .__checkmark-container{background-color:var(--baklava-control-color-active)}.baklava-checkbox .__checkmark{stroke-dasharray:15;stroke-dashoffset:15;stroke:var(--baklava-control-color-foreground);stroke-width:2px;fill:none;transition:stroke-dashoffset var(--baklava-visual-transition)}.baklava-checkbox.--checked .__checkmark{stroke-dashoffset:0}.baklava-checkbox.--checked .__checkmark-container{background-color:var(--baklava-control-color-primary)}.baklava-checkbox .__label{margin-left:.5rem}.baklava-context-menu{color:var(--baklava-control-color-foreground);position:absolute;display:inline-block;z-index:100;background-color:var(--baklava-context-menu-background);box-shadow:var(--baklava-context-menu-shadow);border-radius:0 0 var(--baklava-control-border-radius) var(--baklava-control-border-radius);min-width:6rem;width:-moz-max-content;width:max-content}.baklava-context-menu>.item{display:flex;align-items:center;padding:.35em 1em;transition:background .05s linear;position:relative}.baklava-context-menu>.item>.__label{flex:1 1 auto}.baklava-context-menu>.item>.__submenu-icon{margin-left:.75rem}.baklava-context-menu>.item.--disabled{color:var(--baklava-control-color-hover)}.baklava-context-menu>.item:not(.--header):not(.--active):not(.--disabled):hover{background:var(--baklava-control-color-primary)}.baklava-context-menu>.item.--active{background:var(--baklava-control-color-primary)}.baklava-context-menu.--nested{left:100%;top:0}.baklava-context-menu.--flipped-x.--nested{left:unset;right:100%}.baklava-context-menu.--flipped-y.--nested{top:unset;bottom:0}.baklava-context-menu>.divider{margin:.35em 0;height:1px;background-color:var(--baklava-control-color-hover)}.baklava-icon{display:block;height:100%}.baklava-icon.--clickable{cursor:pointer;transition:color var(--baklava-visual-transition)}.baklava-icon.--clickable:hover{color:var(--baklava-control-color-primary)}.baklava-input{background-color:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);caret-color:var(--baklava-control-color-primary);border:none;border-radius:var(--baklava-control-border-radius);padding:.45em .75em;width:100%;transition:background-color var(--baklava-visual-transition);font-size:inherit;font:inherit}.baklava-input:hover{background-color:var(--baklava-control-color-hover)}.baklava-input:active{background-color:var(--baklava-control-color-active)}.baklava-input:focus-visible{outline:1px solid var(--baklava-control-color-primary)}.baklava-input[type=number]::-webkit-inner-spin-button,.baklava-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.baklava-input.--invalid{box-shadow:0 0 2px 2px var(--baklava-control-color-error)}.baklava-num-input{background:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);border-radius:var(--baklava-control-border-radius);width:100%;display:grid;grid-template-columns:20px 1fr 20px}.baklava-num-input>.__button{display:flex;flex:0 0 auto;width:20px;justify-content:center;align-items:center;transition:background var(--baklava-visual-transition);cursor:pointer}.baklava-num-input>.__button:hover{background-color:var(--baklava-control-color-hover)}.baklava-num-input>.__button:active{background-color:var(--baklava-control-color-active)}.baklava-num-input>.__button.--dec{grid-area:1/1/span 1/span 1}.baklava-num-input>.__button.--dec>svg{transform:rotate(90deg)}.baklava-num-input>.__button.--inc{grid-area:1/3/span 1/span 1}.baklava-num-input>.__button.--inc>svg{transform:rotate(-90deg)}.baklava-num-input>.__button path{stroke:var(--baklava-control-color-foreground);fill:var(--baklava-control-color-foreground)}.baklava-num-input>.__content{grid-area:1/2/span 1/span 1;display:inline-flex;cursor:pointer;max-width:100%;min-width:0;align-items:center;transition:background-color var(--baklava-visual-transition)}.baklava-num-input>.__content:hover{background-color:var(--baklava-control-color-hover)}.baklava-num-input>.__content:active{background-color:var(--baklava-control-color-active)}.baklava-num-input>.__content>.__label,.baklava-num-input>.__content>.__value{margin:.35em 0;padding:0 .5em}.baklava-num-input>.__content>.__label{flex:1;min-width:0;overflow:hidden}.baklava-num-input>.__content>.__value{text-align:right}.baklava-num-input>.__content>input{background-color:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);caret-color:var(--baklava-control-color-primary);padding:.35em;width:100%}.baklava-select{width:100%;position:relative;color:var(--baklava-control-color-foreground)}.baklava-select.--open>.__selected{border-bottom-left-radius:0;border-bottom-right-radius:0}.baklava-select.--open>.__selected>.__icon{transform:rotate(180deg)}.baklava-select>.__selected{background-color:var(--baklava-control-color-background);padding:.35em .75em;border-radius:var(--baklava-control-border-radius);transition:background var(--baklava-visual-transition);min-height:1.7em;display:flex;align-items:center;cursor:pointer}.baklava-select>.__selected:hover{background:var(--baklava-control-color-hover)}.baklava-select>.__selected:active{background:var(--baklava-control-color-active)}.baklava-select>.__selected>.__text{flex:1 0 auto;flex-basis:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.baklava-select>.__selected>.__icon{flex:0 0 auto;display:flex;justify-content:center;align-items:center;transition:transform .25s ease;width:18px;height:18px}.baklava-select>.__selected>.__icon path{stroke:var(--baklava-control-color-foreground);fill:var(--baklava-control-color-foreground)}.baklava-select>.__dropdown{position:absolute;top:100%;left:0;right:0;z-index:10;background-color:var(--baklava-context-menu-background);filter:drop-shadow(0 0 4px black);border-radius:0 0 var(--baklava-control-border-radius) var(--baklava-control-border-radius);max-height:15em;overflow-y:scroll}.baklava-select>.__dropdown::-webkit-scrollbar{width:0px;background:transparent}.baklava-select>.__dropdown>.item{padding:.35em .35em .35em 1em;transition:background .05s linear}.baklava-select>.__dropdown>.item:not(.--header):not(.--active){cursor:pointer}.baklava-select>.__dropdown>.item:not(.--header):not(.--active):hover{background:var(--baklava-control-color-hover)}.baklava-select>.__dropdown>.item.--active{background:var(--baklava-control-color-primary)}.baklava-select>.__dropdown>.item.--header{color:var(--baklava-control-color-disabled-foreground);border-bottom:1px solid var(--baklava-control-color-disabled-foreground);padding:.5em .35em .5em 1em}.baklava-slider{background:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);border-radius:var(--baklava-control-border-radius);position:relative;cursor:pointer}.baklava-slider>.__content{display:flex;position:relative}.baklava-slider>.__content>.__label,.baklava-slider>.__content>.__value{flex:1 1 auto;margin:.35em 0;padding:0 .5em;text-overflow:ellipsis}.baklava-slider>.__content>.__value{text-align:right}.baklava-slider>.__content>input{background-color:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);caret-color:var(--baklava-control-color-primary);padding:.35em;width:100%}.baklava-slider>.__slider{position:absolute;top:0;bottom:0;left:0;background-color:var(--baklava-control-color-primary);border-radius:var(--baklava-control-border-radius)}.baklava-connection{stroke:var(--baklava-color-connection-default);stroke-width:2px;fill:none}.baklava-connection.--temporary{stroke-width:4px;stroke-dasharray:5 5;stroke-dashoffset:0;animation:dash 1s linear infinite;transform:translateY(-1px)}@keyframes dash{to{stroke-dashoffset:20}}.baklava-connection.--allowed{stroke:var(--baklava-color-connection-allowed)}.baklava-connection.--forbidden{stroke:var(--baklava-color-connection-forbidden)}.baklava-minimap{position:absolute;height:15%;width:15%;min-width:150px;max-width:90%;top:20px;right:20px;z-index:900}.baklava-editor{width:100%;height:100%;position:relative;overflow:hidden;outline:none!important;font-family:Lato,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:15px;touch-action:none}.baklava-editor .background{background-color:var(--baklava-editor-background-pattern-default);background-image:linear-gradient(var(--baklava-editor-background-pattern-black) 2px,transparent 2px),linear-gradient(90deg,var(--baklava-editor-background-pattern-black) 2px,transparent 2px),linear-gradient(var(--baklava-editor-background-pattern-line) 1px,transparent 1px),linear-gradient(90deg,var(--baklava-editor-background-pattern-line) 1px,transparent 1px);background-repeat:repeat;width:100%;height:100%;pointer-events:none!important}.baklava-editor .selection-box{position:absolute;border:1px solid var(--baklava-selectionbox-color-border);background-color:var(--baklava-selectionbox-color-background);pointer-events:none;opacity:.5}.baklava-editor.--start-selection-box{cursor:crosshair}.baklava-editor *:not(input):not(textarea){user-select:none;-moz-user-select:none;-webkit-user-select:none;touch-action:none}.baklava-editor .input-user-select{user-select:auto;-moz-user-select:auto;-webkit-user-select:auto}.baklava-editor *,.baklava-editor *:after,.baklava-editor *:before{box-sizing:border-box}.baklava-editor.--temporary-connection{cursor:crosshair}.baklava-editor .connections-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none!important}.baklava-editor .node-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.baklava-editor .node-container *{pointer-events:all}.baklava-ignore-mouse *{pointer-events:none!important}.baklava-ignore-mouse .__port{pointer-events:all!important}.baklava-node-interface{padding:.25em 0;position:relative}.baklava-node-interface .__port{position:absolute;width:10px;height:10px;background:#fff;border-radius:50%;top:calc(50% - 5px);cursor:crosshair}.baklava-node-interface .__port.--selected{outline:2px var(--baklava-color-connection-default) solid;outline-offset:4px}.baklava-node-interface.--input{text-align:left;padding-left:.5em}.baklava-node-interface.--input .__port{left:-1.1em}.baklava-node-interface.--output{text-align:right;padding-right:.5em}.baklava-node-interface.--output .__port{right:-1.1em}.baklava-node-interface .__tooltip{position:absolute;left:5px;top:15px;transform:translate(-50%);background:var(--baklava-node-interface-port-tooltip-color-background);color:var(--baklava-node-interface-port-tooltip-color-foreground);padding:.25em .5em;text-align:center;z-index:2}.baklava-node-palette{position:absolute;left:0;top:60px;width:250px;height:calc(100% - 60px);z-index:3;padding:2rem;overflow-y:auto;background:var(--baklava-node-palette-background);color:var(--baklava-node-palette-foreground)}.baklava-node-palette h1{margin-top:2rem}.baklava-node.--palette{position:unset;margin:1rem 0;cursor:grab}.baklava-node.--palette:first-child{margin-top:0}.baklava-node.--palette .__title{padding:.5rem;border-radius:var(--baklava-node-border-radius)}.baklava-dragged-node{position:absolute;width:calc(250px - 4rem);height:40px;z-index:4;pointer-events:none}.baklava-node{background:var(--baklava-node-color-background);color:var(--baklava-node-color-foreground);border:1px solid transparent;border-radius:var(--baklava-node-border-radius);position:absolute;box-shadow:0 0 4px #000c;transition:border-color var(--baklava-visual-transition),box-shadow var(--baklava-visual-transition);width:var(--width)}.baklava-node:hover{border-color:var(--baklava-node-color-hover)}.baklava-node:hover .__resize-handle:after{opacity:1}.baklava-node.--selected{z-index:5;border-color:var(--baklava-node-color-selected)}.baklava-node.--dragging{box-shadow:0 0 12px #000c}.baklava-node.--dragging>.__title{cursor:grabbing}.baklava-node>.__title{display:flex;background:var(--baklava-node-title-color-background);color:var(--baklava-node-title-color-foreground);padding:.4em .75em;border-radius:var(--baklava-node-border-radius) var(--baklava-node-border-radius) 0 0;cursor:grab}.baklava-node>.__title>*:first-child{flex-grow:1}.baklava-node>.__title>.__title-label{pointer-events:none}.baklava-node>.__title>.__menu{position:relative;cursor:initial}.baklava-node[data-node-type^=__baklava_]>.__title{background:var(--baklava-group-node-title-color-background);color:var(--baklava-group-node-title-color-foreground)}.baklava-node>.__content{padding:.75em}.baklava-node>.__content.--reverse-y{display:flex;flex-direction:column-reverse}.baklava-node>.__content>div>div{margin:.5em 0}.baklava-node.--two-column>.__content{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;grid-template-areas:". ." ". ."}.baklava-node.--two-column>.__content>.__inputs{grid-row:1;grid-column:1}.baklava-node.--two-column>.__content>.__outputs{grid-row:1;grid-column:2}.baklava-node .__resize-handle{position:absolute;right:0;bottom:0;width:1rem;height:1rem;transform:translate(50%);cursor:ew-resize}.baklava-node .__resize-handle:after{content:"";position:absolute;bottom:0;left:-.5rem;width:1rem;height:1rem;opacity:0;border-bottom-right-radius:var(--baklava-node-border-radius);transition:opacity var(--baklava-visual-transition);background:linear-gradient(-45deg,transparent 10%,var(--baklava-node-color-resize-handle) 10%,var(--baklava-node-color-resize-handle) 15%,transparent 15%,transparent 30%,var(--baklava-node-color-resize-handle) 30%,var(--baklava-node-color-resize-handle) 35%,transparent 35%,transparent 50%,var(--baklava-node-color-resize-handle) 50%,var(--baklava-node-color-resize-handle) 55%,transparent 55%)}.baklava-sidebar{position:absolute;height:100%;width:25%;min-width:300px;max-width:90%;top:0;right:0;z-index:1000;background-color:var(--baklava-sidebar-color-background);color:var(--baklava-sidebar-color-foreground);box-shadow:none;overflow-x:hidden;padding:1em;transform:translate(100%);transition:transform .5s;display:flex;flex-direction:column}.baklava-sidebar.--open{transform:translate(0);box-shadow:0 0 15px #000}.baklava-sidebar .__resizer{position:absolute;left:0;top:0;height:100%;width:4px;cursor:col-resize}.baklava-sidebar .__header{display:flex;align-items:center}.baklava-sidebar .__header .__node-name{margin-left:.5rem}.baklava-sidebar .__close{font-size:2em;border:none;background:none;color:inherit;cursor:pointer}.baklava-sidebar .__interface{margin:.5em 0}.baklava-toolbar{position:absolute;left:0;top:0;width:100%;height:60px;z-index:3;padding:.5rem 2rem;background:var(--baklava-toolbar-background);color:var(--baklava-toolbar-foreground);display:flex;align-items:center}.baklava-toolbar-entry{margin-left:.5rem;margin-right:.5rem}.baklava-toolbar-button{color:var(--baklava-toolbar-foreground);background:none;border:none;transition:color var(--baklava-visual-transition)}.baklava-toolbar-button:not([disabled]){cursor:pointer}.baklava-toolbar-button:hover:not([disabled]){color:var(--baklava-control-color-primary)}.baklava-toolbar-button[disabled]{color:var(--baklava-control-color-disabled-foreground)}.slide-fade-enter-active,.slide-fade-leave-active{transition:all .1s ease-out}.slide-fade-enter-from,.slide-fade-leave-to{transform:translateY(5px);opacity:0}.fade-enter-active,.fade-leave-active{transition:opacity .1s ease-out!important}.fade-enter-from,.fade-leave-to{opacity:0}.loading-indicator[data-v-a7f0fe49]{display:flex;justify-content:center;align-items:center;height:100px;font-size:1.2em;color:#666}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(63 131 248 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(63 131 248 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,Outfit,PTSans,Roboto,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,Consolas,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.tooltip-arrow,.tooltip-arrow:before{position:absolute;width:8px;height:8px;background:inherit}.tooltip-arrow{visibility:hidden}.tooltip-arrow:before{content:"";visibility:visible;transform:rotate(45deg)}[data-tooltip-style^=light]+.tooltip>.tooltip-arrow:before{border-style:solid;border-color:#e5e7eb}[data-tooltip-style^=light]+.tooltip[data-popper-placement^=top]>.tooltip-arrow:before{border-bottom-width:1px;border-right-width:1px}[data-tooltip-style^=light]+.tooltip[data-popper-placement^=right]>.tooltip-arrow:before{border-bottom-width:1px;border-left-width:1px}[data-tooltip-style^=light]+.tooltip[data-popper-placement^=bottom]>.tooltip-arrow:before{border-top-width:1px;border-left-width:1px}[data-tooltip-style^=light]+.tooltip[data-popper-placement^=left]>.tooltip-arrow:before{border-top-width:1px;border-right-width:1px}.tooltip[data-popper-placement^=top]>.tooltip-arrow{bottom:-4px}.tooltip[data-popper-placement^=bottom]>.tooltip-arrow{top:-4px}.tooltip[data-popper-placement^=left]>.tooltip-arrow{right:-4px}.tooltip[data-popper-placement^=right]>.tooltip-arrow{left:-4px}.tooltip.invisible>.tooltip-arrow:before{visibility:hidden}[data-popper-arrow],[data-popper-arrow]:before{position:absolute;width:8px;height:8px;background:inherit}[data-popper-arrow]{visibility:hidden}[data-popper-arrow]:before{content:"";visibility:visible;transform:rotate(45deg)}[data-popper-arrow]:after{content:"";visibility:visible;transform:rotate(45deg);position:absolute;width:9px;height:9px;background:inherit}[role=tooltip]>[data-popper-arrow]:before{border-style:solid;border-color:#e5e7eb}.dark [role=tooltip]>[data-popper-arrow]:before{border-style:solid;border-color:#4b5563}[role=tooltip]>[data-popper-arrow]:after{border-style:solid;border-color:#e5e7eb}.dark [role=tooltip]>[data-popper-arrow]:after{border-style:solid;border-color:#4b5563}[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]:before{border-bottom-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]:after{border-bottom-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]:before{border-bottom-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]:after{border-bottom-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]:before{border-top-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]:after{border-top-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]:before{border-top-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]:after{border-top-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]{bottom:-5px}[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]{top:-5px}[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]{right:-5px}[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]{left:-5px}[role=tooltip].invisible>[data-popper-arrow]:before{visibility:hidden}[role=tooltip].invisible>[data-popper-arrow]:after{visibility:hidden}[type=text],[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],[multiple],textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}[type=text]:focus,[type=email]:focus,[type=url]:focus,[type=password]:focus,[type=number]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=month]:focus,[type=search]:focus,[type=tel]:focus,[type=time]:focus,[type=week]:focus,[multiple]:focus,textarea:focus,select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: #1C64F2;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#1c64f2}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em}select:not([size]){background-image:url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 10 6'%3e %3cpath stroke='%236B7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m1 1 4 4 4-4'/%3e %3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:.75em .75em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple]{background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#1c64f2;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: #1C64F2;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked,.dark [type=checkbox]:checked,.dark [type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:.55em .55em;background-position:center;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 12'%3e %3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M1 5.917 5.724 10.5 15 1.5'/%3e %3c/svg%3e");background-repeat:no-repeat;background-size:.55em .55em;-webkit-print-color-adjust:exact;print-color-adjust:exact}[type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");background-size:1em 1em}.dark [type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");background-size:1em 1em}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 12'%3e %3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M1 5.917 5.724 10.5 15 1.5'/%3e %3c/svg%3e");background-color:currentColor;border-color:transparent;background-position:center;background-repeat:no-repeat;background-size:.55em .55em;-webkit-print-color-adjust:exact;print-color-adjust:exact}[type=checkbox]:indeterminate:hover,[type=checkbox]:indeterminate:focus{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px auto inherit}input[type=file]::file-selector-button{color:#fff;background:#1f2937;border:0;font-weight:500;font-size:.875rem;cursor:pointer;padding:.625rem 1rem .625rem 2rem;margin-inline-start:-1rem;margin-inline-end:1rem}input[type=file]::file-selector-button:hover{background:#374151}.dark input[type=file]::file-selector-button{color:#fff;background:#4b5563}.dark input[type=file]::file-selector-button:hover{background:#6b7280}input[type=range]::-webkit-slider-thumb{height:1.25rem;width:1.25rem;background:#1c64f2;border-radius:9999px;border:0;appearance:none;-moz-appearance:none;-webkit-appearance:none;cursor:pointer}input[type=range]:disabled::-webkit-slider-thumb{background:#9ca3af}.dark input[type=range]:disabled::-webkit-slider-thumb{background:#6b7280}input[type=range]:focus::-webkit-slider-thumb{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1px;--tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity))}input[type=range]::-moz-range-thumb{height:1.25rem;width:1.25rem;background:#1c64f2;border-radius:9999px;border:0;appearance:none;-moz-appearance:none;-webkit-appearance:none;cursor:pointer}input[type=range]:disabled::-moz-range-thumb{background:#9ca3af}.dark input[type=range]:disabled::-moz-range-thumb{background:#6b7280}input[type=range]::-moz-range-progress{background:#3f83f8}input[type=range]::-ms-fill-lower{background:#3f83f8}.toggle-bg:after{content:"";position:absolute;top:.125rem;left:.125rem;background:#fff;border-color:#d1d5db;border-width:1px;border-radius:9999px;height:1.25rem;width:1.25rem;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-duration:.15s;box-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color)}input:checked+.toggle-bg:after{transform:translate(100%);border-color:#fff}input:checked+.toggle-bg{background:#1c64f2;border-color:#1c64f2}*{scrollbar-color:initial;scrollbar-width:initial}body{min-height:100vh;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #e0eaff var(--tw-gradient-from-position);--tw-gradient-to: rgb(224 234 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #f0e6ff var(--tw-gradient-to-position)}body:is(.dark *){background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #0f2647 var(--tw-gradient-from-position);--tw-gradient-to: rgb(15 38 71 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #1e1b4b var(--tw-gradient-to-position)}html{scroll-behavior:smooth}body{font-family:Roboto,sans-serif}.\!container{width:100%!important;margin-right:auto!important;margin-left:auto!important;padding-right:2rem!important;padding-left:2rem!important}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.context-menu{position:absolute;z-index:1000;min-width:150px;border-radius:0;border-width:1px;--tw-border-opacity: 1;border-color:rgb(14 159 110 / var(--tw-border-opacity));background-color:rgb(1 71 55 / var(--tw-bg-opacity));--tw-bg-opacity: .9;padding-top:.5rem;padding-bottom:.5rem;font-family:JetBrains Mono,Consolas,monospace;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-shadow-color: rgb(14 159 110 / .5);--tw-shadow: var(--tw-shadow-colored)}.context-menu:is(.dark *){--tw-border-opacity: 1;border-color:rgb(49 196 141 / var(--tw-border-opacity));background-color:rgb(5 46 22 / var(--tw-bg-opacity));--tw-bg-opacity: .9;--tw-shadow-color: rgb(49 196 141 / .5);--tw-shadow: var(--tw-shadow-colored)}.context-menu:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-10;background-image:linear-gradient(to bottom,var(--tw-gradient-stops));--tw-gradient-from: rgb(14 159 110 / .1) var(--tw-gradient-from-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(14 159 110 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(14 159 110 / .05) var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: transparent var(--tw-gradient-to-position);background-size:100% 1000px;opacity:.3;--tw-content: "";content:var(--tw-content)}.setting-item{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding-top:.5rem;padding-bottom:.5rem}@media (min-width: 768px){.setting-item{flex-direction:row;align-items:center;gap:1rem}}.setting-label{flex-shrink:0;margin-bottom:.25rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.setting-label:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label{width:12rem}}.toggle-item{margin-top:.5rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:.5rem;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(195 221 253 / var(--tw-border-opacity));padding-bottom:.5rem;padding-top:.75rem}.toggle-item:is(.dark *){--tw-border-opacity: 1;border-color:rgb(26 86 219 / var(--tw-border-opacity))}@media (min-width: 640px){.toggle-item{flex-direction:row;align-items:center}}.toggle-label{margin-bottom:0!important;margin-right:1rem;flex-grow:1;cursor:pointer;margin-bottom:.25rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.toggle-label:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.toggle-description{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.toggle-description:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}input[type=range]::-webkit-slider-thumb{height:1.25rem;width:1.25rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));-webkit-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}input[type=range]:is(.dark *)::-webkit-slider-thumb{--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}input[type=range]::-webkit-slider-thumb{margin-top:-6px}input[type=range]::-moz-range-thumb{height:1.25rem;width:1.25rem;cursor:pointer;border-radius:9999px;border-style:none;--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));-moz-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}input[type=range]:is(.dark *)::-moz-range-thumb{--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}input[type=range]::-webkit-slider-runnable-track{height:.5rem;width:100%;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}input[type=range]:is(.dark *)::-webkit-slider-runnable-track{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}input[type=range]::-moz-range-track{height:.5rem;width:100%;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}input[type=range]:is(.dark *)::-moz-range-track{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.btn-success{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:flex;align-items:center;border-radius:.5rem;padding:.5rem 1rem;font-weight:600;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-success:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.btn-success:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(132 225 188 / var(--tw-ring-opacity))}.btn-success:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(14 159 110 / var(--tw-bg-opacity))}.btn-success:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity))}.btn-success:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(3 84 63 / var(--tw-ring-opacity))}.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.input-sm{font-size:.875rem;line-height:1.25rem;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));padding:.5rem 1rem}.input-sm:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.input-sm:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.input-sm:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(118 169 250 / var(--tw-ring-opacity))}.range-input{height:.5rem;width:100%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.range-input:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.range-input::-webkit-slider-thumb{height:1.25rem;width:1.25rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));-webkit-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.range-input:is(.dark *)::-webkit-slider-thumb{--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}.range-input::-webkit-slider-thumb{margin-top:-6px}.range-input::-moz-range-thumb{height:1.25rem;width:1.25rem;cursor:pointer;border-radius:9999px;border-style:none;--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));-moz-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.range-input:is(.dark *)::-moz-range-thumb{--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.not-sr-only{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.-inset-1{top:-.25rem;right:-.25rem;bottom:-.25rem;left:-.25rem}.inset-0{top:0;right:0;bottom:0;left:0}.inset-y-0{top:0;bottom:0}.-bottom-0\.5{bottom:-.125rem}.-bottom-1{bottom:-.25rem}.-bottom-1\.5{bottom:-.375rem}.-bottom-2{bottom:-.5rem}.-bottom-4{bottom:-1rem}.-left-1\.5{left:-.375rem}.-right-0\.5{right:-.125rem}.-right-1{right:-.25rem}.-right-1\.5{right:-.375rem}.-top-1{top:-.25rem}.-top-1\.5{top:-.375rem}.bottom-0{bottom:0}.bottom-1\.5{bottom:.375rem}.bottom-16{bottom:4rem}.bottom-2{bottom:.5rem}.bottom-2\.5{bottom:.625rem}.bottom-20{bottom:5rem}.bottom-4{bottom:1rem}.bottom-5{bottom:1.25rem}.bottom-6{bottom:1.5rem}.bottom-8{bottom:2rem}.bottom-\[60px\]{bottom:60px}.bottom-full{bottom:100%}.left-0{left:0}.left-0\.5{left:.125rem}.left-1\/2{left:50%}.left-2{left:.5rem}.left-2\.5{left:.625rem}.left-20{left:5rem}.left-3{left:.75rem}.right-0{right:0}.right-2{right:.5rem}.right-2\.5{right:.625rem}.right-20{right:5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-0\.5{top:.125rem}.top-1{top:.25rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-20{top:5rem}.top-3{top:.75rem}.top-full{top:100%}.isolate{isolation:isolate}.isolation-auto{isolation:auto}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[1001\]{z-index:1001}.z-\[100\]{z-index:100}.col-span-2{grid-column:span 2 / span 2}.float-right{float:right}.float-left{float:left}.float-none{float:none}.clear-left{clear:left}.clear-right{clear:right}.clear-both{clear:both}.clear-none{clear:none}.-m-1{margin:-.25rem}.-m-px{margin:-1px}.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-4{margin:1rem}.-mx-1\.5{margin-left:-.375rem;margin-right:-.375rem}.-mx-5{margin-left:-1.25rem;margin-right:-1.25rem}.-my-1\.5{margin-top:-.375rem;margin-bottom:-.375rem}.mx-0{margin-left:0;margin-right:0}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.my-8{margin-top:2rem;margin-bottom:2rem}.\!mb-0{margin-bottom:0!important}.\!mt-0{margin-top:0!important}.-mb-px{margin-bottom:-1px}.-mr-1{margin-right:-.25rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0{margin-left:0}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-72{margin-left:18rem}.ml-auto{margin-left:auto}.mr-0{margin-right:0}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-0{margin-top:0}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.box-border{box-sizing:border-box}.box-content{box-sizing:content-box}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.inline-table{display:inline-table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row-group{display:table-row-group}.table-row{display:table-row}.flow-root{display:flow-root}.grid{display:grid}.inline-grid{display:inline-grid}.contents{display:contents}.list-item{display:list-item}.hidden{display:none}.h-0{height:0px}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-36{height:9rem}.h-4{height:1rem}.h-4\/5{height:80%}.h-48{height:12rem}.h-5{height:1.25rem}.h-5\/6{height:83.333333%}.h-56{height:14rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[200px\]{height:200px}.h-\[400px\]{height:400px}.h-\[70vh\]{height:70vh}.h-auto{height:auto}.h-full{height:100%}.h-modal{height:calc(100% - 2rem)}.h-px{height:1px}.h-screen{height:100vh}.max-h-0{max-height:0px}.max-h-32{max-height:8rem}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-60{max-height:15rem}.max-h-72{max-height:18rem}.max-h-80{max-height:20rem}.max-h-96{max-height:24rem}.max-h-\[400px\]{max-height:400px}.max-h-\[500px\]{max-height:500px}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.max-h-full{max-height:100%}.min-h-0{min-height:0px}.min-h-\[200px\]{min-height:200px}.min-h-\[220px\]{min-height:220px}.min-h-\[3rem\]{min-height:3rem}.min-h-\[44px\]{min-height:44px}.min-h-\[500px\]{min-height:500px}.min-h-\[80px\]{min-height:80px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-0\.5{width:.125rem}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-11\/12{width:91.666667%}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-36{width:9rem}.w-4{width:1rem}.w-4\/5{width:80%}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[15rem\]{width:15rem}.w-\[16rem\]{width:16rem}.w-\[300px\]{width:300px}.w-\[500px\]{width:500px}.w-\[95\%\]{width:95%}.w-\[this-is\\\\\]{width:this-is\\}.w-\[this-is\]{width:this-is}.w-\[weird-and-invalid\]{width:weird-and-invalid}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.min-w-0{min-width:0px}.min-w-\[24rem\]{min-width:24rem}.min-w-\[300px\]{min-width:300px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[24rem\]{max-width:24rem}.max-w-\[300px\]{max-width:300px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.\!flex-none{flex:none!important}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.grow{flex-grow:1}.table-auto{table-layout:auto}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.border-separate{border-collapse:separate}.origin-left{transform-origin:left}.origin-top-right{transform-origin:top right}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-2{--tw-translate-y: -.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\/2{--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-1\/2{--tw-translate-y: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-x-0{--tw-scale-x: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\!transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.transform,.transform-cpu{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform-gpu{transform:translate3d(var(--tw-translate-x),var(--tw-translate-y),0) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform-none{transform:none}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-help{cursor:help}.cursor-move{cursor:move}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.touch-auto{touch-action:auto}.touch-none{touch-action:none}.touch-pan-x{--tw-pan-x: pan-x;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pan-left{--tw-pan-x: pan-left;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pan-right{--tw-pan-x: pan-right;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pan-y{--tw-pan-y: pan-y;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pan-up{--tw-pan-y: pan-up;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pan-down{--tw-pan-y: pan-down;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pinch-zoom{--tw-pinch-zoom: pinch-zoom;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-manipulation{touch-action:manipulation}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.select-auto{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.resize-none{resize:none}.resize-y{resize:vertical}.resize-x{resize:horizontal}.resize{resize:both}.snap-none{scroll-snap-type:none}.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}.snap-y{scroll-snap-type:y var(--tw-scroll-snap-strictness)}.snap-both{scroll-snap-type:both var(--tw-scroll-snap-strictness)}.snap-mandatory{--tw-scroll-snap-strictness: mandatory}.snap-proximity{--tw-scroll-snap-strictness: proximity}.snap-start{scroll-snap-align:start}.snap-end{scroll-snap-align:end}.snap-center{scroll-snap-align:center}.snap-align-none{scroll-snap-align:none}.snap-normal{scroll-snap-stop:normal}.snap-always{scroll-snap-stop:always}.list-inside{list-style-position:inside}.list-outside{list-style-position:outside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.break-before-auto{-moz-column-break-before:auto;break-before:auto}.break-before-avoid{-moz-column-break-before:avoid;break-before:avoid}.break-before-all{-moz-column-break-before:all;break-before:all}.break-before-avoid-page{-moz-column-break-before:avoid;break-before:avoid-page}.break-before-page{-moz-column-break-before:page;break-before:page}.break-before-left{-moz-column-break-before:left;break-before:left}.break-before-right{-moz-column-break-before:right;break-before:right}.break-before-column{-moz-column-break-before:column;break-before:column}.break-inside-auto{-moz-column-break-inside:auto;break-inside:auto}.break-inside-avoid{-moz-column-break-inside:avoid;break-inside:avoid}.break-inside-avoid-page{break-inside:avoid-page}.break-inside-avoid-column{-moz-column-break-inside:avoid;break-inside:avoid-column}.break-after-auto{-moz-column-break-after:auto;break-after:auto}.break-after-avoid{-moz-column-break-after:avoid;break-after:avoid}.break-after-all{-moz-column-break-after:all;break-after:all}.break-after-avoid-page{-moz-column-break-after:avoid;break-after:avoid-page}.break-after-page{-moz-column-break-after:page;break-after:page}.break-after-left{-moz-column-break-after:left;break-after:left}.break-after-right{-moz-column-break-after:right;break-after:right}.break-after-column{-moz-column-break-after:column;break-after:column}.grid-flow-row{grid-auto-flow:row}.grid-flow-col{grid-auto-flow:column}.grid-flow-dense{grid-auto-flow:dense}.grid-flow-row-dense{grid-auto-flow:row dense}.grid-flow-col-dense{grid-auto-flow:column dense}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.flex-nowrap{flex-wrap:nowrap}.place-content-center{place-content:center}.place-content-start{place-content:start}.place-content-end{place-content:end}.place-content-between{place-content:space-between}.place-content-around{place-content:space-around}.place-content-evenly{place-content:space-evenly}.place-content-baseline{place-content:baseline}.place-content-stretch{place-content:stretch}.place-items-start{place-items:start}.place-items-end{place-items:end}.place-items-center{place-items:center}.place-items-baseline{place-items:baseline}.place-items-stretch{place-items:stretch}.content-center{align-content:center}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-between{align-content:space-between}.content-around{align-content:space-around}.content-evenly{align-content:space-evenly}.content-baseline{align-content:baseline}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.\!items-center{align-items:center!important}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.\!justify-start{justify-content:flex-start!important}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.justify-items-start{justify-items:start}.justify-items-end{justify-items:end}.justify-items-center{justify-items:center}.justify-items-stretch{justify-items:stretch}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-4{row-gap:1rem}.-space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.75rem * var(--tw-space-x-reverse));margin-left:calc(-.75rem * calc(1 - var(--tw-space-x-reverse)))}.-space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-1rem * var(--tw-space-x-reverse));margin-left:calc(-1rem * calc(1 - var(--tw-space-x-reverse)))}.-space-x-px>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-1px * var(--tw-space-x-reverse));margin-left:calc(-1px * calc(1 - var(--tw-space-x-reverse)))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.space-y-reverse>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 1}.space-x-reverse>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 1}.divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-y-reverse>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 1}.divide-x-reverse>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 1}.divide-solid>:not([hidden])~:not([hidden]){border-style:solid}.divide-dashed>:not([hidden])~:not([hidden]){border-style:dashed}.divide-dotted>:not([hidden])~:not([hidden]){border-style:dotted}.divide-double>:not([hidden])~:not([hidden]){border-style:double}.divide-none>:not([hidden])~:not([hidden]){border-style:none}.divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(243 244 246 / var(--tw-divide-opacity))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity))}.place-self-auto{place-self:auto}.place-self-start{place-self:start}.place-self-end{place-self:end}.place-self-center{place-self:center}.place-self-stretch{place-self:stretch}.self-auto{align-self:auto}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.self-baseline{align-self:baseline}.justify-self-auto{justify-self:auto}.justify-self-start{justify-self:start}.justify-self-end{justify-self:end}.justify-self-center{justify-self:center}.justify-self-stretch{justify-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-clip{overflow:clip}.overflow-visible{overflow:visible}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.overflow-x-clip{overflow-x:clip}.overflow-y-clip{overflow-y:clip}.overflow-x-visible{overflow-x:visible}.overflow-y-visible{overflow-y:visible}.overflow-x-scroll{overflow-x:scroll}.overflow-y-scroll{overflow-y:scroll}.overscroll-auto{overscroll-behavior:auto}.overscroll-contain{overscroll-behavior:contain}.overscroll-none{overscroll-behavior:none}.overscroll-y-auto{overscroll-behavior-y:auto}.overscroll-y-contain{overscroll-behavior-y:contain}.overscroll-y-none{overscroll-behavior-y:none}.overscroll-x-auto{overscroll-behavior-x:auto}.overscroll-x-contain{overscroll-behavior-x:contain}.overscroll-x-none{overscroll-behavior-x:none}.scroll-auto{scroll-behavior:auto}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overflow-ellipsis,.text-ellipsis{text-overflow:ellipsis}.text-clip{text-overflow:clip}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-normal{overflow-wrap:normal;word-break:normal}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.\!rounded-full{border-radius:9999px!important}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-md{border-bottom-right-radius:.375rem;border-bottom-left-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-l-lg{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-r-lg{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.rounded-bl{border-bottom-left-radius:.25rem}.rounded-br{border-bottom-right-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.rounded-tr{border-top-right-radius:.25rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\[3px\]{border-width:3px}.border-x{border-left-width:1px;border-right-width:1px}.border-y{border-top-width:1px;border-bottom-width:1px}.\!border-t-0{border-top-width:0px!important}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-t-0{border-top-width:0px}.border-t-2{border-top-width:2px}.border-t-4{border-top-width:4px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-dotted{border-style:dotted}.border-double{border-style:double}.border-hidden{border-style:hidden}.border-none{border-style:none}.border-bg-dark{border-color:var(--color-bg-dark)}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(195 221 253 / var(--tw-border-opacity))}.border-blue-300{--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity))}.border-blue-700{--tw-border-opacity: 1;border-color:rgb(26 86 219 / var(--tw-border-opacity))}.border-current{border-color:currentColor}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.border-gray-200\/30{border-color:#e5e7eb4d}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity))}.border-green-500{--tw-border-opacity: 1;border-color:rgb(14 159 110 / var(--tw-border-opacity))}.border-green-600{--tw-border-opacity: 1;border-color:rgb(5 122 85 / var(--tw-border-opacity))}.border-green-700{--tw-border-opacity: 1;border-color:rgb(4 108 78 / var(--tw-border-opacity))}.border-orange-300{--tw-border-opacity: 1;border-color:rgb(253 186 140 / var(--tw-border-opacity))}.border-pink-600{--tw-border-opacity: 1;border-color:rgb(214 31 105 / var(--tw-border-opacity))}.border-pink-700{--tw-border-opacity: 1;border-color:rgb(191 18 93 / var(--tw-border-opacity))}.border-primary{border-color:var(--color-primary)}.border-primary-light{border-color:var(--color-primary-light)}.border-purple-600{--tw-border-opacity: 1;border-color:rgb(126 58 242 / var(--tw-border-opacity))}.border-purple-700{--tw-border-opacity: 1;border-color:rgb(108 43 217 / var(--tw-border-opacity))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(248 180 180 / var(--tw-border-opacity))}.border-red-400{--tw-border-opacity: 1;border-color:rgb(249 128 128 / var(--tw-border-opacity))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(240 82 82 / var(--tw-border-opacity))}.border-red-600{--tw-border-opacity: 1;border-color:rgb(224 36 36 / var(--tw-border-opacity))}.border-red-700{--tw-border-opacity: 1;border-color:rgb(200 30 30 / var(--tw-border-opacity))}.border-secondary{border-color:var(--color-secondary)}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}.border-yellow-400{--tw-border-opacity: 1;border-color:rgb(227 160 8 / var(--tw-border-opacity))}.border-yellow-500{--tw-border-opacity: 1;border-color:rgb(194 120 3 / var(--tw-border-opacity))}.border-l-red-500{--tw-border-opacity: 1;border-left-color:rgb(240 82 82 / var(--tw-border-opacity))}.border-t-primary{border-top-color:var(--color-primary)}.bg-\[rgb\(255\,0\,0\)\]{--tw-bg-opacity: 1;background-color:rgb(255 0 0 / var(--tw-bg-opacity))}.bg-accent{background-color:var(--color-accent)}.bg-bg-dark-tone-panel{background-color:var(--color-bg-dark-tone-panel)}.bg-bg-light{background-color:var(--color-bg-light)}.bg-bg-light-tone{background-color:var(--color-bg-light-tone)}.bg-bg-light-tone-panel{background-color:var(--color-bg-light-tone-panel)}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-black\/70{background-color:#000000b3}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}.bg-blue-200{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(235 245 255 / var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.bg-blue-700{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.bg-gray-50\/50{background-color:#f9fafb80}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(222 247 236 / var(--tw-bg-opacity))}.bg-green-200{--tw-bg-opacity: 1;background-color:rgb(188 240 218 / var(--tw-bg-opacity))}.bg-green-400{--tw-bg-opacity: 1;background-color:rgb(49 196 141 / var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(243 250 247 / var(--tw-bg-opacity))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(14 159 110 / var(--tw-bg-opacity))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity))}.bg-green-700{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(229 237 255 / var(--tw-bg-opacity))}.bg-indigo-200{--tw-bg-opacity: 1;background-color:rgb(205 219 254 / var(--tw-bg-opacity))}.bg-indigo-500{--tw-bg-opacity: 1;background-color:rgb(104 117 245 / var(--tw-bg-opacity))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(88 80 236 / var(--tw-bg-opacity))}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(254 236 220 / var(--tw-bg-opacity))}.bg-pink-100{--tw-bg-opacity: 1;background-color:rgb(252 232 243 / var(--tw-bg-opacity))}.bg-pink-200{--tw-bg-opacity: 1;background-color:rgb(250 209 232 / var(--tw-bg-opacity))}.bg-pink-700{--tw-bg-opacity: 1;background-color:rgb(191 18 93 / var(--tw-bg-opacity))}.bg-primary{background-color:var(--color-primary)}.bg-primary-light{background-color:var(--color-primary-light)}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(237 235 254 / var(--tw-bg-opacity))}.bg-purple-200{--tw-bg-opacity: 1;background-color:rgb(220 215 254 / var(--tw-bg-opacity))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(246 245 255 / var(--tw-bg-opacity))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(144 97 249 / var(--tw-bg-opacity))}.bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(126 58 242 / var(--tw-bg-opacity))}.bg-purple-700{--tw-bg-opacity: 1;background-color:rgb(108 43 217 / var(--tw-bg-opacity))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(253 232 232 / var(--tw-bg-opacity))}.bg-red-200{--tw-bg-opacity: 1;background-color:rgb(251 213 213 / var(--tw-bg-opacity))}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(249 128 128 / var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(253 242 242 / var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(240 82 82 / var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity))}.bg-red-700{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.bg-secondary{background-color:var(--color-secondary)}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-white\/30{background-color:#ffffff4d}.bg-white\/50{background-color:#ffffff80}.bg-white\/70{background-color:#ffffffb3}.bg-white\/80{background-color:#fffc}.bg-white\/95{background-color:#fffffff2}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(253 246 178 / var(--tw-bg-opacity))}.bg-yellow-200{--tw-bg-opacity: 1;background-color:rgb(252 233 106 / var(--tw-bg-opacity))}.bg-yellow-400{--tw-bg-opacity: 1;background-color:rgb(227 160 8 / var(--tw-bg-opacity))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(253 253 234 / var(--tw-bg-opacity))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(194 120 3 / var(--tw-bg-opacity))}.bg-opacity-5{--tw-bg-opacity: .05}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-60{--tw-bg-opacity: .6}.bg-opacity-70{--tw-bg-opacity: .7}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-bg-light{--tw-gradient-from: var(--color-bg-light) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #3F83F8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500\/10{--tw-gradient-from: rgb(63 131 248 / .1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-50{--tw-gradient-from: #F9FAFB var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-400{--tw-gradient-from: #31C48D var(--tw-gradient-from-position);--tw-gradient-to: rgb(49 196 141 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-500{--tw-gradient-from: #0E9F6E var(--tw-gradient-from-position);--tw-gradient-to: rgb(14 159 110 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-600{--tw-gradient-from: #5850EC var(--tw-gradient-from-position);--tw-gradient-to: rgb(88 80 236 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-lime-500{--tw-gradient-from: #84cc16 var(--tw-gradient-from-position);--tw-gradient-to: rgb(132 204 22 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from: #E74694 var(--tw-gradient-from-position);--tw-gradient-to: rgb(231 70 148 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from: #9061F9 var(--tw-gradient-from-position);--tw-gradient-to: rgb(144 97 249 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-600{--tw-gradient-from: #7E3AF2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 58 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-200{--tw-gradient-from: #FBD5D5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(251 213 213 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #F05252 var(--tw-gradient-from-position);--tw-gradient-to: rgb(240 82 82 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-teal-200{--tw-gradient-from: #AFECEF var(--tw-gradient-from-position);--tw-gradient-to: rgb(175 236 239 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-teal-300{--tw-gradient-from: #7EDCE2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 220 226 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-teal-500{--tw-gradient-from: #0694A2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 148 162 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-5\%{--tw-gradient-from-position: 5%}.via-bg-light{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--color-bg-light) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-blue-600{--tw-gradient-to: rgb(28 100 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #1C64F2 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-cyan-600{--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #0891b2 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-green-600{--tw-gradient-to: rgb(5 122 85 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #057A55 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-lime-600{--tw-gradient-to: rgb(101 163 13 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #65a30d var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-pink-600{--tw-gradient-to: rgb(214 31 105 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #D61F69 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-600{--tw-gradient-to: rgb(126 58 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #7E3AF2 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-red-300{--tw-gradient-to: rgb(248 180 180 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #F8B4B4 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-red-600{--tw-gradient-to: rgb(224 36 36 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #E02424 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-teal-600{--tw-gradient-to: rgb(4 116 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #047481 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-10\%{--tw-gradient-via-position: 10%}.to-blue-100{--tw-gradient-to: #E1EFFE var(--tw-gradient-to-position)}.to-blue-500{--tw-gradient-to: #3F83F8 var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to: #1C64F2 var(--tw-gradient-to-position)}.to-blue-700{--tw-gradient-to: #1A56DB var(--tw-gradient-to-position)}.to-cyan-700{--tw-gradient-to: #0e7490 var(--tw-gradient-to-position)}.to-green-700{--tw-gradient-to: #046C4E var(--tw-gradient-to-position)}.to-lime-200{--tw-gradient-to: #d9f99d var(--tw-gradient-to-position)}.to-lime-300{--tw-gradient-to: #bef264 var(--tw-gradient-to-position)}.to-lime-700{--tw-gradient-to: #4d7c0f var(--tw-gradient-to-position)}.to-orange-400{--tw-gradient-to: #FF8A4C var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #E74694 var(--tw-gradient-to-position)}.to-pink-700{--tw-gradient-to: #BF125D var(--tw-gradient-to-position)}.to-purple-500\/10{--tw-gradient-to: rgb(144 97 249 / .1) var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #7E3AF2 var(--tw-gradient-to-position)}.to-purple-700{--tw-gradient-to: #6C2BD9 var(--tw-gradient-to-position)}.to-red-700{--tw-gradient-to: #C81E1E var(--tw-gradient-to-position)}.to-teal-700{--tw-gradient-to: #036672 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-yellow-200{--tw-gradient-to: #FCE96A var(--tw-gradient-to-position)}.to-100\%{--tw-gradient-to-position: 100%}.decoration-slice{-webkit-box-decoration-break:slice;box-decoration-break:slice}.decoration-clone{-webkit-box-decoration-break:clone;box-decoration-break:clone}.box-decoration-slice{-webkit-box-decoration-break:slice;box-decoration-break:slice}.box-decoration-clone{-webkit-box-decoration-break:clone;box-decoration-break:clone}.bg-fixed{background-attachment:fixed}.bg-local{background-attachment:local}.bg-scroll{background-attachment:scroll}.bg-clip-border{background-clip:border-box}.bg-clip-padding{background-clip:padding-box}.bg-clip-content{background-clip:content-box}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-repeat{background-repeat:repeat}.bg-no-repeat{background-repeat:no-repeat}.bg-repeat-x{background-repeat:repeat-x}.bg-repeat-y{background-repeat:repeat-y}.bg-repeat-round{background-repeat:round}.bg-repeat-space{background-repeat:space}.bg-origin-border{background-origin:border-box}.bg-origin-padding{background-origin:padding-box}.bg-origin-content{background-origin:content-box}.fill-blue-500{fill:#3f83f8}.fill-blue-600{fill:#1c64f2}.fill-current{fill:currentColor}.fill-gray-300{fill:#d1d5db}.fill-gray-600{fill:#4b5563}.fill-green-500{fill:#0e9f6e}.fill-pink-600{fill:#d61f69}.fill-primary{fill:var(--color-primary)}.fill-purple-600{fill:#7e3af2}.fill-red-600{fill:#e02424}.fill-secondary{fill:var(--color-secondary)}.fill-white{fill:#fff}.fill-yellow-400{fill:#e3a008}.stroke-current{stroke:currentColor}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.object-fill{-o-object-fit:fill;object-fit:fill}.object-none{-o-object-fit:none;object-fit:none}.object-scale-down{-o-object-fit:scale-down;object-fit:scale-down}.\!p-1{padding:.25rem!important}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.\!pt-0{padding-top:0!important}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-80{padding-bottom:20rem}.pl-10{padding-left:2.5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pl-6{padding-left:1.5rem}.pr-10{padding-right:2.5rem}.pr-2{padding-right:.5rem}.pr-24{padding-right:6rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-12{padding-top:3rem}.pt-16{padding-top:4rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.text-start{text-align:start}.text-end{text-align:end}.align-baseline{vertical-align:baseline}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.align-text-top{vertical-align:text-top}.align-text-bottom{vertical-align:text-bottom}.align-sub{vertical-align:sub}.align-super{vertical-align:super}.font-mono{font-family:JetBrains Mono,Consolas,monospace}.font-sans{font-family:Inter,Outfit,PTSans,Roboto,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.font-thin{font-weight:100}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.italic{font-style:italic}.not-italic{font-style:normal}.normal-nums{font-variant-numeric:normal}.ordinal{--tw-ordinal: ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.slashed-zero{--tw-slashed-zero: slashed-zero;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.lining-nums{--tw-numeric-figure: lining-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.oldstyle-nums{--tw-numeric-figure: oldstyle-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.proportional-nums{--tw-numeric-spacing: proportional-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.diagonal-fractions{--tw-numeric-fraction: diagonal-fractions;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.stacked-fractions{--tw-numeric-fraction: stacked-fractions;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-6{line-height:1.5rem}.leading-9{line-height:2.25rem}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-\[\#336699\]\/\[\.35\]{color:#33669959}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-blue-100{--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}.text-blue-200{--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.text-blue-300{--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.text-blue-400{--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.text-blue-500{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.text-blue-700{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}.text-blue-900{--tw-text-opacity: 1;color:rgb(35 56 118 / var(--tw-text-opacity))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.text-green-200{--tw-text-opacity: 1;color:rgb(188 240 218 / var(--tw-text-opacity))}.text-green-500{--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.text-green-600{--tw-text-opacity: 1;color:rgb(5 122 85 / var(--tw-text-opacity))}.text-green-700{--tw-text-opacity: 1;color:rgb(4 108 78 / var(--tw-text-opacity))}.text-green-800{--tw-text-opacity: 1;color:rgb(3 84 63 / var(--tw-text-opacity))}.text-green-900{--tw-text-opacity: 1;color:rgb(1 71 55 / var(--tw-text-opacity))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(104 117 245 / var(--tw-text-opacity))}.text-indigo-700{--tw-text-opacity: 1;color:rgb(81 69 205 / var(--tw-text-opacity))}.text-indigo-800{--tw-text-opacity: 1;color:rgb(66 56 157 / var(--tw-text-opacity))}.text-indigo-900{--tw-text-opacity: 1;color:rgb(54 47 120 / var(--tw-text-opacity))}.text-light-text-panel{color:var(--color-light-text-panel)}.text-orange-200{--tw-text-opacity: 1;color:rgb(252 217 189 / var(--tw-text-opacity))}.text-orange-500{--tw-text-opacity: 1;color:rgb(255 90 31 / var(--tw-text-opacity))}.text-orange-600{--tw-text-opacity: 1;color:rgb(208 56 1 / var(--tw-text-opacity))}.text-pink-500{--tw-text-opacity: 1;color:rgb(231 70 148 / var(--tw-text-opacity))}.text-pink-600{--tw-text-opacity: 1;color:rgb(214 31 105 / var(--tw-text-opacity))}.text-pink-700{--tw-text-opacity: 1;color:rgb(191 18 93 / var(--tw-text-opacity))}.text-pink-800{--tw-text-opacity: 1;color:rgb(153 21 75 / var(--tw-text-opacity))}.text-pink-900{--tw-text-opacity: 1;color:rgb(117 26 61 / var(--tw-text-opacity))}.text-primary{color:var(--color-primary)}.text-purple-500{--tw-text-opacity: 1;color:rgb(144 97 249 / var(--tw-text-opacity))}.text-purple-600{--tw-text-opacity: 1;color:rgb(126 58 242 / var(--tw-text-opacity))}.text-purple-700{--tw-text-opacity: 1;color:rgb(108 43 217 / var(--tw-text-opacity))}.text-purple-800{--tw-text-opacity: 1;color:rgb(85 33 181 / var(--tw-text-opacity))}.text-purple-900{--tw-text-opacity: 1;color:rgb(74 29 150 / var(--tw-text-opacity))}.text-red-100{--tw-text-opacity: 1;color:rgb(253 232 232 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(251 213 213 / var(--tw-text-opacity))}.text-red-400{--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}.text-red-500{--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.text-red-600{--tw-text-opacity: 1;color:rgb(224 36 36 / var(--tw-text-opacity))}.text-red-700{--tw-text-opacity: 1;color:rgb(200 30 30 / var(--tw-text-opacity))}.text-red-800{--tw-text-opacity: 1;color:rgb(155 28 28 / var(--tw-text-opacity))}.text-red-900{--tw-text-opacity: 1;color:rgb(119 29 29 / var(--tw-text-opacity))}.text-secondary{color:var(--color-secondary)}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-950{--tw-text-opacity: 1;color:rgb(2 6 23 / var(--tw-text-opacity))}.text-teal-500{--tw-text-opacity: 1;color:rgb(6 148 162 / var(--tw-text-opacity))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(227 160 8 / var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(194 120 3 / var(--tw-text-opacity))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(159 88 10 / var(--tw-text-opacity))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(142 75 16 / var(--tw-text-opacity))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(114 59 19 / var(--tw-text-opacity))}.text-yellow-900{--tw-text-opacity: 1;color:rgb(99 49 18 / var(--tw-text-opacity))}.text-opacity-95{--tw-text-opacity: .95}.underline{text-decoration-line:underline}.overline{text-decoration-line:overline}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.decoration-solid{text-decoration-style:solid}.decoration-double{text-decoration-style:double}.decoration-dotted{text-decoration-style:dotted}.decoration-dashed{text-decoration-style:dashed}.decoration-wavy{text-decoration-style:wavy}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.accent-blue-600{accent-color:#1C64F2}.accent-primary{accent-color:var(--color-primary)}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.bg-blend-normal{background-blend-mode:normal}.bg-blend-multiply{background-blend-mode:multiply}.bg-blend-screen{background-blend-mode:screen}.bg-blend-overlay{background-blend-mode:overlay}.bg-blend-darken{background-blend-mode:darken}.bg-blend-lighten{background-blend-mode:lighten}.bg-blend-color-dodge{background-blend-mode:color-dodge}.bg-blend-color-burn{background-blend-mode:color-burn}.bg-blend-hard-light{background-blend-mode:hard-light}.bg-blend-soft-light{background-blend-mode:soft-light}.bg-blend-difference{background-blend-mode:difference}.bg-blend-exclusion{background-blend-mode:exclusion}.bg-blend-hue{background-blend-mode:hue}.bg-blend-saturation{background-blend-mode:saturation}.bg-blend-color{background-blend-mode:color}.bg-blend-luminosity{background-blend-mode:luminosity}.mix-blend-normal{mix-blend-mode:normal}.mix-blend-multiply{mix-blend-mode:multiply}.mix-blend-screen{mix-blend-mode:screen}.mix-blend-overlay{mix-blend-mode:overlay}.mix-blend-darken{mix-blend-mode:darken}.mix-blend-lighten{mix-blend-mode:lighten}.mix-blend-color-dodge{mix-blend-mode:color-dodge}.mix-blend-color-burn{mix-blend-mode:color-burn}.mix-blend-hard-light{mix-blend-mode:hard-light}.mix-blend-soft-light{mix-blend-mode:soft-light}.mix-blend-difference{mix-blend-mode:difference}.mix-blend-exclusion{mix-blend-mode:exclusion}.mix-blend-hue{mix-blend-mode:hue}.mix-blend-saturation{mix-blend-mode:saturation}.mix-blend-color{mix-blend-mode:color}.mix-blend-luminosity{mix-blend-mode:luminosity}.mix-blend-plus-lighter{mix-blend-mode:plus-lighter}.\!shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1) !important;--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color) !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)!important}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-blue-500\/50{--tw-shadow-color: rgb(63 131 248 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-blue-800\/80{--tw-shadow-color: rgb(30 66 159 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-cyan-500\/50{--tw-shadow-color: rgb(6 182 212 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-cyan-800\/80{--tw-shadow-color: rgb(21 94 117 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-green-500\/50{--tw-shadow-color: rgb(14 159 110 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-green-800\/80{--tw-shadow-color: rgb(3 84 63 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-lime-500\/50{--tw-shadow-color: rgb(132 204 22 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-lime-800\/80{--tw-shadow-color: rgb(63 98 18 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-pink-500\/50{--tw-shadow-color: rgb(231 70 148 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-pink-800\/80{--tw-shadow-color: rgb(153 21 75 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-purple-500\/50{--tw-shadow-color: rgb(144 97 249 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-purple-800\/80{--tw-shadow-color: rgb(85 33 181 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-500\/50{--tw-shadow-color: rgb(240 82 82 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-800\/80{--tw-shadow-color: rgb(155 28 28 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-teal-500\/50{--tw-shadow-color: rgb(6 148 162 / .5);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-dashed{outline-style:dashed}.outline-dotted{outline-style:dotted}.outline-double{outline-style:double}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-inset{--tw-ring-inset: inset}.ring-black{--tw-ring-opacity: 1;--tw-ring-color: rgb(0 0 0 / var(--tw-ring-opacity))}.ring-blue-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity))}.ring-blue-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.ring-blue-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(30 66 159 / var(--tw-ring-opacity))}.ring-cyan-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(21 94 117 / var(--tw-ring-opacity))}.ring-gray-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity))}.ring-gray-600{--tw-ring-opacity: 1;--tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity))}.ring-gray-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(31 41 55 / var(--tw-ring-opacity))}.ring-green-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}.ring-green-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(3 84 63 / var(--tw-ring-opacity))}.ring-pink-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(153 21 75 / var(--tw-ring-opacity))}.ring-pink-900{--tw-ring-opacity: 1;--tw-ring-color: rgb(117 26 61 / var(--tw-ring-opacity))}.ring-purple-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(85 33 181 / var(--tw-ring-opacity))}.ring-purple-900{--tw-ring-opacity: 1;--tw-ring-color: rgb(74 29 150 / var(--tw-ring-opacity))}.ring-red-400{--tw-ring-opacity: 1;--tw-ring-color: rgb(249 128 128 / var(--tw-ring-opacity))}.ring-red-900{--tw-ring-opacity: 1;--tw-ring-color: rgb(119 29 29 / var(--tw-ring-opacity))}.ring-white{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity))}.ring-yellow-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(194 120 3 / var(--tw-ring-opacity))}.ring-opacity-5{--tw-ring-opacity: .05}.ring-offset-1{--tw-ring-offset-width: 1px}.ring-offset-2{--tw-ring-offset-width: 2px}.ring-offset-gray-800{--tw-ring-offset-color: #1F2937}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-md{--tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / .07)) drop-shadow(0 2px 2px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-sm{--tw-drop-shadow: drop-shadow(0 1px 1px rgb(0 0 0 / .05));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert: invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.sepia{--tw-sepia: sepia(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.\!filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter-none{filter:none}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-grayscale{--tw-backdrop-grayscale: grayscale(100%);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-invert{--tw-backdrop-invert: invert(100%);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-sepia{--tw-backdrop-sepia: sepia(100%);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter-none{-webkit-backdrop-filter:none;backdrop-filter:none}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-1000{transition-duration:1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.duration-75{transition-duration:75ms}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.content-\[\'this-is-also-valid\]-weirdly-enough\'\]{--tw-content: "this-is-also-valid]-weirdly-enough";content:var(--tw-content)}.scrollbar{scrollbar-width:auto;scrollbar-color:var(--scrollbar-thumb, initial) var(--scrollbar-track, initial)}.scrollbar::-webkit-scrollbar{display:block;width:var(--scrollbar-width, 16px);height:var(--scrollbar-height, 16px)}.scrollbar-thin::-webkit-scrollbar-track{background-color:var(--scrollbar-track);border-radius:var(--scrollbar-track-radius)}.scrollbar-thin::-webkit-scrollbar-track:hover{background-color:var(--scrollbar-track-hover, var(--scrollbar-track))}.scrollbar-thin::-webkit-scrollbar-track:active{background-color:var(--scrollbar-track-active, var(--scrollbar-track-hover, var(--scrollbar-track)))}.scrollbar-thin::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:var(--scrollbar-thumb-radius)}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover, var(--scrollbar-thumb))}.scrollbar-thin::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-thumb-active, var(--scrollbar-thumb-hover, var(--scrollbar-thumb)))}.scrollbar-thin::-webkit-scrollbar-corner{background-color:var(--scrollbar-corner);border-radius:var(--scrollbar-corner-radius)}.scrollbar-thin::-webkit-scrollbar-corner:hover{background-color:var(--scrollbar-corner-hover, var(--scrollbar-corner))}.scrollbar-thin::-webkit-scrollbar-corner:active{background-color:var(--scrollbar-corner-active, var(--scrollbar-corner-hover, var(--scrollbar-corner)))}.scrollbar-thin{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb, initial) var(--scrollbar-track, initial)}.scrollbar-thin::-webkit-scrollbar{display:block;width:8px;height:8px}.scrollbar-track-bg-light{--scrollbar-track: var(--color-bg-light) !important}.scrollbar-track-bg-light-tone{--scrollbar-track: var(--color-bg-light-tone) !important}.scrollbar-track-blue-100{--scrollbar-track: #E1EFFE !important}.scrollbar-track-blue-900{--scrollbar-track: #233876 !important}.scrollbar-track-gray-200{--scrollbar-track: #E5E7EB !important}.scrollbar-track-transparent{--scrollbar-track: transparent !important}.scrollbar-thumb-bg-light-tone{--scrollbar-thumb: var(--color-bg-light-tone) !important}.scrollbar-thumb-bg-light-tone-panel{--scrollbar-thumb: var(--color-bg-light-tone-panel) !important}.scrollbar-thumb-blue-300{--scrollbar-thumb: #A4CAFE !important}.scrollbar-thumb-blue-500{--scrollbar-thumb: #3F83F8 !important}.scrollbar-thumb-blue-700{--scrollbar-thumb: #1A56DB !important}.scrollbar-thumb-gray-300{--scrollbar-thumb: #D1D5DB !important}.scrollbar-thumb-gray-400{--scrollbar-thumb: #9CA3AF !important}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.bg-status-unknown{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.bg-status-unknown:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}:root{--lollms-title: L🐠llMS;--falling-object: "";--activate-dropping-animation: 0;--lollms-welcome-short-message: Welcome to LoLLMS;--lollms-welcome-message: Embark on a journey through the realm of advanced AI with LoLLMS, your ultimate companion for intelligent conversations and multimodal interactions. Unleash the power of large language models and explore new frontiers in artificial intelligence.}.display-none{display:none}h1{margin-bottom:1.5rem;font-size:2.25rem;line-height:2.5rem;font-weight:700;--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}h1:is(.dark *){--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}@media (min-width: 768px){h1{font-size:3rem;line-height:1}}h2{margin-bottom:1rem;font-size:1.875rem;line-height:2.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}h2:is(.dark *){--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}h3{margin-bottom:.75rem;font-size:1.5rem;line-height:2rem;font-weight:500;--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}h3:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}h4{margin-bottom:.5rem;font-size:1.25rem;line-height:1.75rem;font-weight:500;--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}h4:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}h1,h2{border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity));padding-bottom:.5rem}h1:is(.dark *),h2:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity))}p{overflow-wrap:break-word;font-family:Inter,Outfit,PTSans,Roboto,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:1rem;line-height:1.5rem;line-height:1.625;letter-spacing:-.025em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}p:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}@media (min-width: 768px){p{font-size:1.125rem;line-height:1.75rem;line-height:2}}ul,ol{margin-top:1rem;margin-bottom:1rem;padding-left:1rem;padding-right:1rem;font-size:1rem;line-height:1.75rem}ul{margin-left:.5rem;list-style-type:disc}ul>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}li{position:relative;padding-left:.5rem}ol{margin-left:.5rem;list-style-type:decimal}ol>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}ul ul,ol ol,ul ol,ol ul{margin-top:.5rem;margin-bottom:0;margin-left:1.5rem}li::marker{color:#4b5563}:root{--color-primary: #4a90e2;--color-primary-light: #6ab7f1;--color-secondary: #8ab8e0;--color-accent: #3a7ca1;--color-light-text-panel: #ffffff;--color-dark-text-panel: #e0e0e0;--color-bg-light-panel: #f0faff;--color-bg-light: #ffffff;--color-bg-light-tone: #e0f0ff;--color-bg-light-code-block: #f5faff;--color-bg-light-tone-panel: #d0e0f0;--color-bg-light-discussion: #f8faff;--color-bg-light-discussion-odd: #f0faff;--color-bg-dark: #0a0a1a;--color-bg-dark-tone: #151521;--color-bg-dark-tone-panel: #1c1c2a;--color-bg-dark-code-block: #151521;--color-bg-dark-discussion: #0e0e1a;--color-bg-dark-discussion-odd: #0d0d1a}textarea,input,select{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}textarea:is(.dark *),input:is(.dark *),select:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity))}.background-color{min-height:100vh;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #E1EFFE var(--tw-gradient-from-position);--tw-gradient-to: rgb(225 239 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #CABFFD var(--tw-gradient-to-position)}.background-color:is(.dark *){--tw-gradient-from: #1E429F var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 66 159 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #4A1D96 var(--tw-gradient-to-position)}.toolbar-color{border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.toolbar-color:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.panels-color{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.panels-color:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.unicolor-panels-color{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.unicolor-panels-color:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.chatbox-color{--tw-bg-opacity: 1;background-color:rgb(235 245 255 / var(--tw-bg-opacity))}.chatbox-color:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.message{position:relative;margin:.5rem;display:flex;width:100%;flex-grow:1;flex-direction:column;flex-wrap:wrap;overflow:visible;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity));padding:1.25rem 1.25rem .75rem;font-size:1.125rem;line-height:1.75rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.message:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity))}.message{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(35 56 118 / var(--tw-text-opacity))}.message:is(.dark *){background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #233876 var(--tw-gradient-from-position);--tw-gradient-to: rgb(35 56 118 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #1E429F var(--tw-gradient-to-position);--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}.message:hover{--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.message:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.message:nth-child(2n){--tw-bg-opacity: 1;background-color:rgb(235 245 255 / var(--tw-bg-opacity))}.message:nth-child(2n):is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity))}.message:nth-child(odd){--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}.message:nth-child(odd):is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.message-header{margin-bottom:.5rem;font-size:1.25rem;line-height:1.75rem;font-weight:600}.message-content{font-size:1.125rem;line-height:1.75rem;line-height:1.625}body{min-height:100vh;--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));font-size:1rem;line-height:1.5rem}body:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity))}.discussion{margin-right:.5rem;font-size:.75rem;line-height:1rem}.discussion-hilighted{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity));font-size:.75rem;line-height:1rem}.discussion-hilighted:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.bg-gradient-welcome{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #E1EFFE var(--tw-gradient-from-position);--tw-gradient-to: rgb(225 239 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #CABFFD var(--tw-gradient-to-position)}.bg-gradient-welcome:is(.dark *){--tw-gradient-from: #1E429F var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 66 159 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #4A1D96 var(--tw-gradient-to-position)}.bg-gradient-progress{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #C3DDFD var(--tw-gradient-from-position);--tw-gradient-to: rgb(195 221 253 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #A4CAFE var(--tw-gradient-to-position)}.bg-gradient-progress:is(.dark *){--tw-gradient-from: #1A56DB var(--tw-gradient-from-position);--tw-gradient-to: rgb(26 86 219 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #1C64F2 var(--tw-gradient-to-position)}.text-gradient-title{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #1A56DB var(--tw-gradient-from-position);--tw-gradient-to: rgb(26 86 219 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #3F83F8 var(--tw-gradient-to-position);-webkit-background-clip:text;background-clip:text;color:transparent}.text-gradient-title:is(.dark *){--tw-gradient-from: #A4CAFE var(--tw-gradient-from-position);--tw-gradient-to: rgb(164 202 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #3F83F8 var(--tw-gradient-to-position)}.text-subtitle{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.text-subtitle:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.text-author{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.text-author:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.text-loading{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.text-loading:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.text-progress{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.text-progress:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.btn-primary{border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));padding:.5rem 1rem;font-weight:700;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.btn-secondary{border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity));padding:.5rem 1rem;font-weight:700;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.btn-secondary:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.card{border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:1.5rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.card:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.input{border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));padding:.5rem 1rem}.input:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.input:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.input:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(118 169 250 / var(--tw-ring-opacity))}.label{margin-bottom:.25rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.label:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.link{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.link:hover{--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}.link:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.link:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.navbar-container{border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity));--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.navbar-container:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.game-menu{position:relative;display:flex;align-items:center;justify-content:center}.text-shadow-custom{text-shadow:1px 1px 0px #e0e0e0,-1px -1px 0px #e0e0e0,1px -1px 0px #e0e0e0,-1px 1px 0px #e0e0e0}.menu-item{margin-bottom:.5rem;padding:.5rem 1rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity));transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.menu-item:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.menu-item:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}.menu-item:is(.dark *):hover{--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.menu-item.active-link{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-top-left-radius:.375rem;border-top-right-radius:.375rem;--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity));transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1);text-shadow:1px 1px 0px #e0e0e0,-1px -1px 0px #e0e0e0,1px -1px 0px #e0e0e0,-1px 1px 0px #e0e0e0}.menu-item.active-link:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.menu-item.active-link:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-text-opacity: 1;color:rgb(35 56 118 / var(--tw-text-opacity))}.menu-item.active-link:is(.dark *):hover{--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.menu-item.active-link{text-shadow:0 0 10px rgba(128,128,128,.5)}.menu-item.active-link:before{content:"";position:absolute;bottom:-5px;left:0;width:100%;height:5px;background:linear-gradient(to right,#4a90e2,#8ab8e0,#4a90e2);border-radius:10px;animation:shimmer 2s infinite}.dark .menu-item.active-link:before{background:linear-gradient(to right,#6ab7f1,#aaa,#6ab7f1)}@keyframes shimmer{0%{background-position:-100% 0}to{background-position:100% 0}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.feather-emoji{display:inline-block;margin-left:5px;animation:bounce 2s infinite}.app-card{border-radius:.75rem;border-width:1px;--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));padding:1.5rem;--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity));--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.app-card:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.app-card:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}.app-card:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}button{transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}button:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scrollbar-thin{scrollbar-width:thin;scrollbar-color:#76A9FA #C3DDFD}.dark .scrollbar-thin{scrollbar-color:#1C64F2 #1E429F}.scrollbar-thin::-webkit-scrollbar{width:.5rem}.scrollbar-thin::-webkit-scrollbar-track{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.scrollbar-thin:is(.dark *)::-webkit-scrollbar-track{--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.scrollbar-thin::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}.scrollbar-thin:is(.dark *)::-webkit-scrollbar-thumb{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.scrollbar-thin::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.scrollbar-thin:is(.dark *)::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.btn{display:flex;align-items:center;border-radius:.5rem;padding:.5rem 1rem;font-weight:600;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-primary{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.btn-primary:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.btn-primary:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity))}.btn-primary:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(28 100 242 / var(--tw-ring-opacity))}.btn-secondary{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.btn-secondary:hover{--tw-bg-opacity: 1;background-color:rgb(164 202 254 / var(--tw-bg-opacity))}.btn-secondary:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(195 221 253 / var(--tw-ring-opacity))}.btn-secondary:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.btn-secondary:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.btn-secondary:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(28 100 242 / var(--tw-ring-opacity))}.search-input{width:100%;border-bottom-width:2px;--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity));background-color:transparent;padding:.5rem 1rem .5rem 2.5rem;--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.search-input:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px}.search-input:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity));--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}.search-input:focus:is(.dark *){--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.scrollbar::-webkit-scrollbar-track{background-color:var(--scrollbar-track);border-radius:var(--scrollbar-track-radius)}.scrollbar::-webkit-scrollbar-track:hover{background-color:var(--scrollbar-track-hover, var(--scrollbar-track))}.scrollbar::-webkit-scrollbar-track:active{background-color:var(--scrollbar-track-active, var(--scrollbar-track-hover, var(--scrollbar-track)))}.scrollbar::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:var(--scrollbar-thumb-radius)}.scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover, var(--scrollbar-thumb))}.scrollbar::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-thumb-active, var(--scrollbar-thumb-hover, var(--scrollbar-thumb)))}.scrollbar::-webkit-scrollbar-corner{background-color:var(--scrollbar-corner);border-radius:var(--scrollbar-corner-radius)}.scrollbar::-webkit-scrollbar-corner:hover{background-color:var(--scrollbar-corner-hover, var(--scrollbar-corner))}.scrollbar::-webkit-scrollbar-corner:active{background-color:var(--scrollbar-corner-active, var(--scrollbar-corner-hover, var(--scrollbar-corner)))}.scrollbar{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb, initial) var(--scrollbar-track, initial)}.scrollbar::-webkit-scrollbar{display:block;width:8px;height:8px}.scrollbar{--scrollbar-track: #C3DDFD;--scrollbar-thumb: #76A9FA;scrollbar-width:thin;scrollbar-color:#76A9FA #C3DDFD}.dark .scrollbar{scrollbar-color:#1C64F2 #1E429F}.scrollbar::-webkit-scrollbar{width:.5rem}.scrollbar::-webkit-scrollbar-track{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.scrollbar:is(.dark *)::-webkit-scrollbar-track{--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.scrollbar::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}.scrollbar:is(.dark *)::-webkit-scrollbar-thumb{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.scrollbar::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.scrollbar:is(.dark *)::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.scrollbar{--scrollbar-thumb-hover: #3F83F8}.scrollbar:is(.dark *){--scrollbar-track: #1A56DB;--scrollbar-thumb: #1C64F2;--scrollbar-thumb-hover: #3F83F8}.animated-progressbar-bg{position:relative;height:1.25rem;width:100%;overflow:hidden;border-radius:9999px;background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #C3DDFD var(--tw-gradient-from-position);--tw-gradient-to: rgb(195 221 253 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #DCD7FE var(--tw-gradient-to-position);--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.animated-progressbar-bg:is(.dark *){--tw-gradient-from: #1E429F var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 66 159 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #5521B5 var(--tw-gradient-to-position)}.animated-progressbar-fg{position:absolute;top:0;left:0;height:100%;background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #3F83F8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #9061F9 var(--tw-gradient-to-position);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.animated-progressbar-fg:is(.dark *){--tw-gradient-from: #1C64F2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(28 100 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #7E3AF2 var(--tw-gradient-to-position)}.discussion-toolbox{display:flex;--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));align-items:center;gap:.5rem;border-top-left-radius:.375rem;border-bottom-left-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:.5rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.group:hover .discussion-toolbox{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.discussion-toolbox:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.lollms-title-style{text-shadow:2px 2px 4px rgba(0,0,0,.2),2px 2px 0px white,-2px -2px 0px white,2px -2px 0px white,-2px 2px 0px white;background:linear-gradient(45deg,#f59e0b,#fbbf24);-webkit-background-clip:text;background-clip:text}.chat-bar{position:relative;display:flex;flex-grow:1;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:center;gap:.5rem;--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));padding:.25rem;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.chat-bar:hover{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.chat-bar:is(.dark *){--tw-border-opacity: 1;border-color:rgb(202 191 253 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.chat-bar{height:50px;transition:all .3s ease}.chat-bar:hover{box-shadow:0 4px 6px -1px #00ff001a,0 2px 4px -1px #00ff000f}.svg-button{border-radius:9999px;padding:.5rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.svg-button:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.svg-button:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.svg-button:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.svg-button:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.svg-button:active{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.svg-button:active:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.nav-button{border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nav-button:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.nav-button:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.nav-button:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.nav-button-active{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.nav-button-active:hover{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.nav-button-active:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.nav-button-active:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.btn-on{--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.btn-on:is(.dark *){--tw-text-opacity: 1;color:rgb(49 196 141 / var(--tw-text-opacity))}.btn-off{--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.btn-off:is(.dark *){--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}.interesting-facts{margin-top:1.5rem;margin-bottom:1.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:.5rem;background-color:#fffc;padding:1rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.interesting-facts:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.interesting-facts:is(.dark *){background-color:#1f2937cc}.toolbar-button{cursor:pointer;border-style:none;background-color:transparent;padding:.5rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.toolbar-button:hover{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.context-menu{position:absolute;background-color:#fff;border:1px solid #e0e0e0;box-shadow:0 2px 10px #0000001a;border-radius:4px;padding:8px 0;min-width:150px;z-index:1000}.context-menu-item{padding:8px 16px;font-size:14px;color:#333;cursor:pointer;transition:background-color .2s ease}.context-menu-item:hover{background-color:#f5f5f5}.context-menu-separator{height:1px;background-color:#e0e0e0;margin:4px 0}.context-menu-item-disabled{color:#999;cursor:not-allowed}.context-menu-item-icon{margin-right:8px}.steps-container{margin-bottom:1rem;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.steps-header{display:flex;cursor:pointer;align-items:center;--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:1rem}.steps-header:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.steps-title{margin:0;font-size:1rem;line-height:1.5rem;font-weight:600}.step-item{margin-bottom:.5rem;border-left-width:2px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));padding-left:1rem}.steps-container{margin-bottom:1rem;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.steps-container:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.steps-header{display:flex;cursor:pointer;align-items:center;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));padding:1rem}.steps-header:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.steps-icon{margin-right:1rem}.steps-summary{flex-grow:1}.steps-title{margin:0;font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.steps-title:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.steps-status{margin:0;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.steps-status:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.toggle-icon{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-icon:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.steps-content{padding:1rem}.steps-list{margin:0;list-style-type:none;padding:0}.step-item{margin-bottom:.5rem;border-left-width:2px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));padding-left:1rem}.step-item:last-child{margin-bottom:0}.step-item:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.step-container{margin-bottom:1rem;transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.step-wrapper{display:flex;align-items:flex-start;border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:.75rem}.step-wrapper:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.step-icon{margin-right:.75rem;height:1.5rem;width:1.5rem;flex-shrink:0}.icon-success{height:1.5rem;width:1.5rem;--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.icon-fail{height:1.5rem;width:1.5rem;--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.icon-spinner{height:1.5rem;width:1.5rem}@keyframes spin{to{transform:rotate(360deg)}}.icon-spinner{animation:spin 1s linear infinite;border-radius:9999px;border-width:2px;--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));border-top-color:transparent}.icon-spinner:is(.dark *){--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.step-content{flex-grow:1}.step-text{font-size:1rem;line-height:1.5rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.step-text:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.step-description{margin-top:.25rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.step-description:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.fade-enter-active,.fade-leave-active{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.fade-enter,.fade-leave-to{opacity:0}.status-icon{cursor:pointer;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.icon{height:1.5rem;width:1.5rem}.icon-success{--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.icon-success:is(.dark *){--tw-text-opacity: 1;color:rgb(49 196 141 / var(--tw-text-opacity))}.icon-fail{--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.icon-fail:is(.dark *){--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}.icon-text{font-size:1.25rem;line-height:1.75rem;font-weight:700;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.icon-text:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.user-settings-panel>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.user-settings-panel{border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));padding:1rem;--tw-text-opacity: 1;color:rgb(35 56 118 / var(--tw-text-opacity));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.user-settings-panel:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}@media (min-width: 768px){.user-settings-panel{padding:1.5rem}}.folder-item-base{display:flex;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;border-radius:.5rem;padding:1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.folder-item-base:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.folder-item-base{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}.folder-item-base:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.folder-item-base:hover{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.folder-item-base:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.folder-item-base{border-width:1px}.folder-item-icon{margin-bottom:.5rem;height:2.5rem;width:2.5rem;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.group:hover .folder-item-icon{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.folder-item-label{margin-top:.5rem;text-align:center;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.folder-item-label:is(.dark *){--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.folder-item-personalities{--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.folder-item-personalities:is(.dark *){--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.folder-item-icon-personalities{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.folder-item-icon-personalities:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.folder-item-functions{--tw-border-opacity: 1;border-color:rgb(14 159 110 / var(--tw-border-opacity))}.folder-item-functions:is(.dark *){--tw-border-opacity: 1;border-color:rgb(49 196 141 / var(--tw-border-opacity))}.folder-item-icon-functions{--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.folder-item-icon-functions:is(.dark *){--tw-text-opacity: 1;color:rgb(49 196 141 / var(--tw-text-opacity))}.folder-item-configs{--tw-border-opacity: 1;border-color:rgb(194 120 3 / var(--tw-border-opacity))}.folder-item-configs:is(.dark *){--tw-border-opacity: 1;border-color:rgb(227 160 8 / var(--tw-border-opacity))}.folder-item-icon-configs{--tw-text-opacity: 1;color:rgb(194 120 3 / var(--tw-text-opacity))}.folder-item-icon-configs:is(.dark *){--tw-text-opacity: 1;color:rgb(227 160 8 / var(--tw-text-opacity))}.folder-item-outputs{--tw-border-opacity: 1;border-color:rgb(144 97 249 / var(--tw-border-opacity))}.folder-item-outputs:is(.dark *){--tw-border-opacity: 1;border-color:rgb(172 148 250 / var(--tw-border-opacity))}.folder-item-icon-outputs{--tw-text-opacity: 1;color:rgb(144 97 249 / var(--tw-text-opacity))}.folder-item-icon-outputs:is(.dark *){--tw-text-opacity: 1;color:rgb(172 148 250 / var(--tw-text-opacity))}.folder-item-discussions{--tw-border-opacity: 1;border-color:rgb(240 82 82 / var(--tw-border-opacity))}.folder-item-discussions:is(.dark *){--tw-border-opacity: 1;border-color:rgb(249 128 128 / var(--tw-border-opacity))}.folder-item-icon-discussions{--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.folder-item-icon-discussions:is(.dark *){--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}@keyframes matrix-rain{0%{background-position:0 0}to{background-position:0 1000px}}@media (min-width: 640px){.sm\:container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}.sm\:container{max-width:640px}@media (min-width: 768px){.sm\:container{max-width:768px}}@media (min-width: 1024px){.sm\:container{max-width:1024px}}@media (min-width: 1280px){.sm\:container{max-width:1280px}}@media (min-width: 1536px){.sm\:container{max-width:1536px}}}.placeholder\:text-blue-400::-moz-placeholder{--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.placeholder\:text-blue-400::placeholder{--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:left-\[2px\]:after{content:var(--tw-content);left:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:h-5:after{content:var(--tw-content);height:1.25rem}.after\:w-5:after{content:var(--tw-content);width:1.25rem}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:border:after{content:var(--tw-content);border-width:1px}.after\:border-gray-300:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.after\:bg-white:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.after\:transition-all:after{content:var(--tw-content);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:content-\[\'\'\]:after{--tw-content: "";content:var(--tw-content)}.last\:mb-0:last-child{margin-bottom:0}.even\:bg-bg-light-discussion-odd:nth-child(2n){background-color:var(--color-bg-light-discussion-odd)}.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:block{display:block}.group\/item:hover .group-hover\/item\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\/item:hover .group-hover\/item\:scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-blue-500{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.group:hover .group-hover\:bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-white\/50{background-color:#ffffff80}.group:hover .group-hover\:bg-opacity-0{--tw-bg-opacity: 0}.group:hover .group-hover\:from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-green-400{--tw-gradient-from: #31C48D var(--tw-gradient-from-position);--tw-gradient-to: rgb(49 196 141 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-pink-500{--tw-gradient-from: #E74694 var(--tw-gradient-from-position);--tw-gradient-to: rgb(231 70 148 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-purple-500{--tw-gradient-from: #9061F9 var(--tw-gradient-from-position);--tw-gradient-to: rgb(144 97 249 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-purple-600{--tw-gradient-from: #7E3AF2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 58 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-red-200{--tw-gradient-from: #FBD5D5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(251 213 213 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-teal-300{--tw-gradient-from: #7EDCE2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 220 226 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:via-red-300{--tw-gradient-to: rgb(248 180 180 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #F8B4B4 var(--tw-gradient-via-position), var(--tw-gradient-to)}.group:hover .group-hover\:to-blue-500{--tw-gradient-to: #3F83F8 var(--tw-gradient-to-position)}.group:hover .group-hover\:to-blue-600{--tw-gradient-to: #1C64F2 var(--tw-gradient-to-position)}.group:hover .group-hover\:to-lime-300{--tw-gradient-to: #bef264 var(--tw-gradient-to-position)}.group:hover .group-hover\:to-orange-400{--tw-gradient-to: #FF8A4C var(--tw-gradient-to-position)}.group:hover .group-hover\:to-pink-500{--tw-gradient-to: #E74694 var(--tw-gradient-to-position)}.group:hover .group-hover\:to-yellow-200{--tw-gradient-to: #FCE96A var(--tw-gradient-to-position)}.group:hover .group-hover\:text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.group\/item:hover .group-hover\/item\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}.group:focus .group-focus\:outline-none{outline:2px solid transparent;outline-offset:2px}.group:focus .group-focus\:ring-4{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.group:focus .group-focus\:ring-white{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity))}.peer:checked~.peer-checked\:bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.peer:checked~.peer-checked\:after\:translate-x-full:after{content:var(--tw-content);--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\:after\:border-white:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}.peer:focus~.peer-focus\:outline-none{outline:2px solid transparent;outline-offset:2px}.peer:focus~.peer-focus\:ring-4{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.peer:focus~.peer-focus\:ring-blue-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity))}.hover\:z-10:hover{z-index:10}.hover\:-translate-y-1:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.03\]:hover{--tw-scale-x: 1.03;--tw-scale-y: 1.03;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-x-100:hover{--tw-scale-x: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-2:hover{border-width:2px}.hover\:border-solid:hover{border-style:solid}.hover\:border-blue-300:hover{--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity))}.hover\:border-blue-400:hover{--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.hover\:border-gray-600:hover{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.hover\:border-primary:hover{border-color:var(--color-primary)}.hover\:border-secondary:hover{border-color:var(--color-secondary)}.hover\:bg-bg-light-tone:hover{background-color:var(--color-bg-light-tone)}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}.hover\:bg-blue-200:hover{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.hover\:bg-blue-50\/50:hover{background-color:#ebf5ff80}.hover\:bg-blue-500:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.hover\:bg-blue-600:hover{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.hover\:bg-blue-800:hover{--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.hover\:bg-gray-400:hover{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.hover\:bg-gray-900:hover{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.hover\:bg-green-200:hover{--tw-bg-opacity: 1;background-color:rgb(188 240 218 / var(--tw-bg-opacity))}.hover\:bg-green-600:hover{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.hover\:bg-green-800:hover{--tw-bg-opacity: 1;background-color:rgb(3 84 63 / var(--tw-bg-opacity))}.hover\:bg-pink-800:hover{--tw-bg-opacity: 1;background-color:rgb(153 21 75 / var(--tw-bg-opacity))}.hover\:bg-primary:hover{background-color:var(--color-primary)}.hover\:bg-primary-light:hover{background-color:var(--color-primary-light)}.hover\:bg-purple-800:hover{--tw-bg-opacity: 1;background-color:rgb(85 33 181 / var(--tw-bg-opacity))}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(253 232 232 / var(--tw-bg-opacity))}.hover\:bg-red-200:hover{--tw-bg-opacity: 1;background-color:rgb(251 213 213 / var(--tw-bg-opacity))}.hover\:bg-red-300:hover{--tw-bg-opacity: 1;background-color:rgb(248 180 180 / var(--tw-bg-opacity))}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(253 242 242 / var(--tw-bg-opacity))}.hover\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.hover\:bg-red-800:hover{--tw-bg-opacity: 1;background-color:rgb(155 28 28 / var(--tw-bg-opacity))}.hover\:bg-transparent:hover{background-color:transparent}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.hover\:bg-yellow-200:hover{--tw-bg-opacity: 1;background-color:rgb(252 233 106 / var(--tw-bg-opacity))}.hover\:bg-yellow-500:hover{--tw-bg-opacity: 1;background-color:rgb(194 120 3 / var(--tw-bg-opacity))}.hover\:bg-opacity-80:hover{--tw-bg-opacity: .8}.hover\:bg-gradient-to-bl:hover{background-image:linear-gradient(to bottom left,var(--tw-gradient-stops))}.hover\:bg-gradient-to-br:hover{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.hover\:bg-gradient-to-l:hover{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.hover\:bg-gradient-to-r:hover{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.hover\:from-blue-50:hover{--tw-gradient-from: #EBF5FF var(--tw-gradient-from-position);--tw-gradient-to: rgb(235 245 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-blue-500\/20:hover{--tw-gradient-from: rgb(63 131 248 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-teal-200:hover{--tw-gradient-from: #AFECEF var(--tw-gradient-from-position);--tw-gradient-to: rgb(175 236 239 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-lime-200:hover{--tw-gradient-to: #d9f99d var(--tw-gradient-to-position)}.hover\:to-purple-50:hover{--tw-gradient-to: #F6F5FF var(--tw-gradient-to-position)}.hover\:to-purple-500\/20:hover{--tw-gradient-to: rgb(144 97 249 / .2) var(--tw-gradient-to-position)}.hover\:font-bold:hover{font-weight:700}.hover\:text-black:hover{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.hover\:text-blue-500:hover{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.hover\:text-blue-600:hover{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.hover\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.hover\:text-gray-800:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.hover\:text-green-500:hover{--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.hover\:text-green-600:hover{--tw-text-opacity: 1;color:rgb(5 122 85 / var(--tw-text-opacity))}.hover\:text-indigo-600:hover{--tw-text-opacity: 1;color:rgb(88 80 236 / var(--tw-text-opacity))}.hover\:text-primary:hover{color:var(--color-primary)}.hover\:text-purple-600:hover{--tw-text-opacity: 1;color:rgb(126 58 242 / var(--tw-text-opacity))}.hover\:text-red-500:hover{--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.hover\:text-red-600:hover{--tw-text-opacity: 1;color:rgb(224 36 36 / var(--tw-text-opacity))}.hover\:text-red-700:hover{--tw-text-opacity: 1;color:rgb(200 30 30 / var(--tw-text-opacity))}.hover\:text-secondary:hover{color:var(--color-secondary)}.hover\:text-teal-600:hover{--tw-text-opacity: 1;color:rgb(4 116 129 / var(--tw-text-opacity))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.hover\:text-yellow-500:hover{--tw-text-opacity: 1;color:rgb(194 120 3 / var(--tw-text-opacity))}.hover\:text-yellow-600:hover{--tw-text-opacity: 1;color:rgb(159 88 10 / var(--tw-text-opacity))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-none:hover{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:ring-blue-500:hover{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.hover\:scrollbar-thumb-primary{--scrollbar-thumb-hover: var(--color-primary) !important}.before\:hover\:text-center:hover:before{content:var(--tw-content);text-align:center}.hover\:before\:text-center:hover:before{content:var(--tw-content);text-align:center}.focus\:z-10:focus{z-index:10}.focus\:border-blue-300:focus{--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity))}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.focus\:border-primary:focus{border-color:var(--color-primary)}.focus\:border-secondary:focus{border-color:var(--color-secondary)}.focus\:border-transparent:focus{border-color:transparent}.focus\:text-blue-700:focus{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-4:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(195 221 253 / var(--tw-ring-opacity))}.focus\:ring-blue-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity))}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(118 169 250 / var(--tw-ring-opacity))}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.focus\:ring-blue-500\/50:focus{--tw-ring-color: rgb(63 131 248 / .5)}.focus\:ring-blue-700:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(26 86 219 / var(--tw-ring-opacity))}.focus\:ring-cyan-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(165 243 252 / var(--tw-ring-opacity))}.focus\:ring-cyan-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(103 232 249 / var(--tw-ring-opacity))}.focus\:ring-gray-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(229 231 235 / var(--tw-ring-opacity))}.focus\:ring-gray-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity))}.focus\:ring-gray-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity))}.focus\:ring-green-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(188 240 218 / var(--tw-ring-opacity))}.focus\:ring-green-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(132 225 188 / var(--tw-ring-opacity))}.focus\:ring-green-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(49 196 141 / var(--tw-ring-opacity))}.focus\:ring-lime-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(217 249 157 / var(--tw-ring-opacity))}.focus\:ring-lime-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(190 242 100 / var(--tw-ring-opacity))}.focus\:ring-pink-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(250 209 232 / var(--tw-ring-opacity))}.focus\:ring-pink-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 180 217 / var(--tw-ring-opacity))}.focus\:ring-primary:focus{--tw-ring-color: var(--color-primary)}.focus\:ring-purple-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(220 215 254 / var(--tw-ring-opacity))}.focus\:ring-purple-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(202 191 253 / var(--tw-ring-opacity))}.focus\:ring-red-100:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(253 232 232 / var(--tw-ring-opacity))}.focus\:ring-red-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 180 180 / var(--tw-ring-opacity))}.focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(249 128 128 / var(--tw-ring-opacity))}.focus\:ring-red-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity))}.focus\:ring-secondary:focus{--tw-ring-color: var(--color-secondary)}.focus\:ring-teal-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(126 220 226 / var(--tw-ring-opacity))}.focus\:ring-yellow-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(250 202 21 / var(--tw-ring-opacity))}.focus\:ring-yellow-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(227 160 8 / var(--tw-ring-opacity))}.focus\:ring-opacity-50:focus{--tw-ring-opacity: .5}.focus\:ring-offset-1:focus{--tw-ring-offset-width: 1px}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus\:ring-offset-blue-100:focus{--tw-ring-offset-color: #E1EFFE}.focus\:hover\:text-center:hover:focus{text-align:center}.hover\:focus\:text-center:focus:hover{text-align:center}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-blue-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.active\:scale-75:active{--tw-scale-x: .75;--tw-scale-y: .75;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-90:active{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scrollbar-thumb-secondary{--scrollbar-thumb-active: var(--color-secondary) !important}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:hover\:bg-transparent:hover:disabled{background-color:transparent}.disabled\:hover\:text-gray-600:hover:disabled{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.dark\:inline:is(.dark *){display:inline}.dark\:hidden:is(.dark *){display:none}.dark\:divide-gray-700:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity))}.dark\:border-bg-light:is(.dark *){border-color:var(--color-bg-light)}.dark\:border-blue-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.dark\:border-blue-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.dark\:border-blue-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity))}.dark\:border-blue-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(26 86 219 / var(--tw-border-opacity))}.dark\:border-gray-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity))}.dark\:border-gray-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity))}.dark\:border-gray-900:is(.dark *){--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity))}.dark\:border-green-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(14 159 110 / var(--tw-border-opacity))}.dark\:border-orange-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(208 56 1 / var(--tw-border-opacity))}.dark\:border-pink-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(241 126 184 / var(--tw-border-opacity))}.dark\:border-pink-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(231 70 148 / var(--tw-border-opacity))}.dark\:border-purple-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(172 148 250 / var(--tw-border-opacity))}.dark\:border-purple-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(144 97 249 / var(--tw-border-opacity))}.dark\:border-red-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(240 82 82 / var(--tw-border-opacity))}.dark\:border-red-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(224 36 36 / var(--tw-border-opacity))}.dark\:border-red-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(200 30 30 / var(--tw-border-opacity))}.dark\:border-transparent:is(.dark *){border-color:transparent}.dark\:border-yellow-300:is(.dark *){--tw-border-opacity: 1;border-color:rgb(250 202 21 / var(--tw-border-opacity))}.dark\:bg-bg-dark:is(.dark *){background-color:var(--color-bg-dark)}.dark\:bg-bg-dark-tone:is(.dark *){background-color:var(--color-bg-dark-tone)}.dark\:bg-bg-dark-tone-panel:is(.dark *){background-color:var(--color-bg-dark-tone-panel)}.dark\:bg-black:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.dark\:bg-blue-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.dark\:bg-blue-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.dark\:bg-blue-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.dark\:bg-blue-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.dark\:bg-blue-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.dark\:bg-blue-800\/50:is(.dark *){background-color:#1e429f80}.dark\:bg-blue-800\/60:is(.dark *){background-color:#1e429f99}.dark\:bg-blue-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity))}.dark\:bg-blue-900\/30:is(.dark *){background-color:#2338764d}.dark\:bg-blue-900\/50:is(.dark *){background-color:#23387680}.dark\:bg-gray-300:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.dark\:bg-gray-400:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.dark\:bg-gray-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.dark\:bg-gray-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:bg-gray-700\/50:is(.dark *){background-color:#37415180}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:bg-gray-800\/20:is(.dark *){background-color:#1f293733}.dark\:bg-gray-800\/30:is(.dark *){background-color:#1f29374d}.dark\:bg-gray-800\/50:is(.dark *){background-color:#1f293780}.dark\:bg-gray-800\/70:is(.dark *){background-color:#1f2937b3}.dark\:bg-gray-800\/80:is(.dark *){background-color:#1f2937cc}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.dark\:bg-gray-900\/95:is(.dark *){background-color:#111827f2}.dark\:bg-green-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(188 240 218 / var(--tw-bg-opacity))}.dark\:bg-green-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(14 159 110 / var(--tw-bg-opacity))}.dark\:bg-green-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity))}.dark\:bg-green-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(3 84 63 / var(--tw-bg-opacity))}.dark\:bg-green-900\/20:is(.dark *){background-color:#01473733}.dark\:bg-indigo-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(205 219 254 / var(--tw-bg-opacity))}.dark\:bg-indigo-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(104 117 245 / var(--tw-bg-opacity))}.dark\:bg-orange-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(180 52 3 / var(--tw-bg-opacity))}.dark\:bg-orange-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(138 44 13 / var(--tw-bg-opacity))}.dark\:bg-orange-900\/30:is(.dark *){background-color:#771d1d4d}.dark\:bg-pink-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(250 209 232 / var(--tw-bg-opacity))}.dark\:bg-pink-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(214 31 105 / var(--tw-bg-opacity))}.dark\:bg-purple-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(220 215 254 / var(--tw-bg-opacity))}.dark\:bg-purple-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(144 97 249 / var(--tw-bg-opacity))}.dark\:bg-purple-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(126 58 242 / var(--tw-bg-opacity))}.dark\:bg-red-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(251 213 213 / var(--tw-bg-opacity))}.dark\:bg-red-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(240 82 82 / var(--tw-bg-opacity))}.dark\:bg-red-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity))}.dark\:bg-red-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.dark\:bg-red-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(155 28 28 / var(--tw-bg-opacity))}.dark\:bg-red-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(119 29 29 / var(--tw-bg-opacity))}.dark\:bg-red-900\/20:is(.dark *){background-color:#771d1d33}.dark\:bg-red-900\/30:is(.dark *){background-color:#771d1d4d}.dark\:bg-white:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.dark\:bg-yellow-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(252 233 106 / var(--tw-bg-opacity))}.dark\:bg-opacity-50:is(.dark *){--tw-bg-opacity: .5}.dark\:bg-opacity-80:is(.dark *){--tw-bg-opacity: .8}.dark\:from-bg-dark:is(.dark *){--tw-gradient-from: var(--color-bg-dark) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-blue-400\/20:is(.dark *){--tw-gradient-from: rgb(118 169 250 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(118 169 250 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-gray-900:is(.dark *){--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-indigo-400:is(.dark *){--tw-gradient-from: #8DA2FB var(--tw-gradient-from-position);--tw-gradient-to: rgb(141 162 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:via-bg-dark:is(.dark *){--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--color-bg-dark) var(--tw-gradient-via-position), var(--tw-gradient-to)}.dark\:to-blue-950:is(.dark *){--tw-gradient-to: #172554 var(--tw-gradient-to-position)}.dark\:to-purple-400:is(.dark *){--tw-gradient-to: #AC94FA var(--tw-gradient-to-position)}.dark\:to-purple-400\/20:is(.dark *){--tw-gradient-to: rgb(172 148 250 / .2) var(--tw-gradient-to-position)}.dark\:fill-blue-300:is(.dark *){fill:#a4cafe}.dark\:fill-blue-400:is(.dark *){fill:#76a9fa}.dark\:fill-gray-300:is(.dark *){fill:#d1d5db}.dark\:text-amber-400:is(.dark *){--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity))}.dark\:text-blue-100:is(.dark *){--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}.dark\:text-blue-200:is(.dark *){--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.dark\:text-blue-500:is(.dark *){--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.dark\:text-blue-600:is(.dark *){--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.dark\:text-blue-800:is(.dark *){--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}.dark\:text-dark-text-panel:is(.dark *){color:var(--color-dark-text-panel)}.dark\:text-gray-100:is(.dark *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.dark\:text-gray-600:is(.dark *){--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.dark\:text-gray-800:is(.dark *){--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.dark\:text-green-200:is(.dark *){--tw-text-opacity: 1;color:rgb(188 240 218 / var(--tw-text-opacity))}.dark\:text-green-400:is(.dark *){--tw-text-opacity: 1;color:rgb(49 196 141 / var(--tw-text-opacity))}.dark\:text-green-500:is(.dark *){--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.dark\:text-green-800:is(.dark *){--tw-text-opacity: 1;color:rgb(3 84 63 / var(--tw-text-opacity))}.dark\:text-green-900:is(.dark *){--tw-text-opacity: 1;color:rgb(1 71 55 / var(--tw-text-opacity))}.dark\:text-indigo-500:is(.dark *){--tw-text-opacity: 1;color:rgb(104 117 245 / var(--tw-text-opacity))}.dark\:text-indigo-900:is(.dark *){--tw-text-opacity: 1;color:rgb(54 47 120 / var(--tw-text-opacity))}.dark\:text-orange-200:is(.dark *){--tw-text-opacity: 1;color:rgb(252 217 189 / var(--tw-text-opacity))}.dark\:text-orange-400:is(.dark *){--tw-text-opacity: 1;color:rgb(255 138 76 / var(--tw-text-opacity))}.dark\:text-pink-400:is(.dark *){--tw-text-opacity: 1;color:rgb(241 126 184 / var(--tw-text-opacity))}.dark\:text-pink-500:is(.dark *){--tw-text-opacity: 1;color:rgb(231 70 148 / var(--tw-text-opacity))}.dark\:text-pink-900:is(.dark *){--tw-text-opacity: 1;color:rgb(117 26 61 / var(--tw-text-opacity))}.dark\:text-primary:is(.dark *){color:var(--color-primary)}.dark\:text-purple-400:is(.dark *){--tw-text-opacity: 1;color:rgb(172 148 250 / var(--tw-text-opacity))}.dark\:text-purple-500:is(.dark *){--tw-text-opacity: 1;color:rgb(144 97 249 / var(--tw-text-opacity))}.dark\:text-purple-900:is(.dark *){--tw-text-opacity: 1;color:rgb(74 29 150 / var(--tw-text-opacity))}.dark\:text-red-200:is(.dark *){--tw-text-opacity: 1;color:rgb(251 213 213 / var(--tw-text-opacity))}.dark\:text-red-300:is(.dark *){--tw-text-opacity: 1;color:rgb(248 180 180 / var(--tw-text-opacity))}.dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}.dark\:text-red-500:is(.dark *){--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.dark\:text-red-500\/90:is(.dark *){color:#f05252e6}.dark\:text-red-800:is(.dark *){--tw-text-opacity: 1;color:rgb(155 28 28 / var(--tw-text-opacity))}.dark\:text-red-900:is(.dark *){--tw-text-opacity: 1;color:rgb(119 29 29 / var(--tw-text-opacity))}.dark\:text-slate-50:is(.dark *){--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:text-yellow-300:is(.dark *){--tw-text-opacity: 1;color:rgb(250 202 21 / var(--tw-text-opacity))}.dark\:text-yellow-400:is(.dark *){--tw-text-opacity: 1;color:rgb(227 160 8 / var(--tw-text-opacity))}.dark\:text-yellow-500:is(.dark *){--tw-text-opacity: 1;color:rgb(194 120 3 / var(--tw-text-opacity))}.dark\:text-yellow-800:is(.dark *){--tw-text-opacity: 1;color:rgb(114 59 19 / var(--tw-text-opacity))}.dark\:text-yellow-900:is(.dark *){--tw-text-opacity: 1;color:rgb(99 49 18 / var(--tw-text-opacity))}.dark\:placeholder-gray-400:is(.dark *)::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.dark\:placeholder-gray-400:is(.dark *)::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.dark\:shadow-lg:is(.dark *){--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:shadow-blue-800\/80:is(.dark *){--tw-shadow-color: rgb(30 66 159 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-cyan-800\/80:is(.dark *){--tw-shadow-color: rgb(21 94 117 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-green-800\/80:is(.dark *){--tw-shadow-color: rgb(3 84 63 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-lime-800\/80:is(.dark *){--tw-shadow-color: rgb(63 98 18 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-pink-800\/80:is(.dark *){--tw-shadow-color: rgb(153 21 75 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-purple-800\/80:is(.dark *){--tw-shadow-color: rgb(85 33 181 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-red-800\/80:is(.dark *){--tw-shadow-color: rgb(155 28 28 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-teal-800\/80:is(.dark *){--tw-shadow-color: rgb(5 80 92 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:ring-blue-600:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(28 100 242 / var(--tw-ring-opacity))}.dark\:ring-gray-500:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity))}.dark\:ring-gray-700:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(55 65 81 / var(--tw-ring-opacity))}.dark\:ring-white:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity))}.dark\:ring-opacity-20:is(.dark *){--tw-ring-opacity: .2}.dark\:ring-offset-blue-900:is(.dark *){--tw-ring-offset-color: #233876}.dark\:ring-offset-gray-700:is(.dark *){--tw-ring-offset-color: #374151}.dark\:ring-offset-gray-800:is(.dark *){--tw-ring-offset-color: #1F2937}.dark\:scrollbar-track-bg-dark:is(.dark *){--scrollbar-track: var(--color-bg-dark) !important}.dark\:scrollbar-track-bg-dark-tone:is(.dark *){--scrollbar-track: var(--color-bg-dark-tone) !important}.dark\:scrollbar-track-blue-900:is(.dark *){--scrollbar-track: #233876 !important}.dark\:scrollbar-track-gray-700:is(.dark *){--scrollbar-track: #374151 !important}.dark\:scrollbar-track-gray-800:is(.dark *){--scrollbar-track: #1F2937 !important}.dark\:scrollbar-thumb-bg-dark-tone:is(.dark *){--scrollbar-thumb: var(--color-bg-dark-tone) !important}.dark\:scrollbar-thumb-bg-dark-tone-panel:is(.dark *){--scrollbar-thumb: var(--color-bg-dark-tone-panel) !important}.dark\:scrollbar-thumb-blue-700:is(.dark *){--scrollbar-thumb: #1A56DB !important}.dark\:scrollbar-thumb-gray-500:is(.dark *){--scrollbar-thumb: #6B7280 !important}.dark\:scrollbar-thumb-gray-600:is(.dark *){--scrollbar-thumb: #4B5563 !important}.dark\:placeholder\:text-blue-500:is(.dark *)::-moz-placeholder{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.dark\:placeholder\:text-blue-500:is(.dark *)::placeholder{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.dark\:even\:bg-bg-dark-discussion-odd:nth-child(2n):is(.dark *){background-color:var(--color-bg-dark-discussion-odd)}.group:hover .dark\:group-hover\:border-blue-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.group:hover .dark\:group-hover\:bg-gray-800\/60:is(.dark *){background-color:#1f293799}.group:hover .dark\:group-hover\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.group:focus .dark\:group-focus\:ring-gray-800\/70:is(.dark *){--tw-ring-color: rgb(31 41 55 / .7)}.peer:focus~.dark\:peer-focus\:ring-blue-800:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(30 66 159 / var(--tw-ring-opacity))}.dark\:hover\:border-blue-600:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity))}.dark\:hover\:border-gray-600:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.dark\:hover\:border-primary:hover:is(.dark *){border-color:var(--color-primary)}.dark\:hover\:bg-blue-300:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(164 202 254 / var(--tw-bg-opacity))}.dark\:hover\:bg-blue-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.dark\:hover\:bg-blue-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.dark\:hover\:bg-blue-900:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity))}.dark\:hover\:bg-blue-900\/20:hover:is(.dark *){background-color:#23387633}.dark\:hover\:bg-blue-900\/30:hover:is(.dark *){background-color:#2338764d}.dark\:hover\:bg-gray-500:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.dark\:hover\:bg-gray-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:hover\:bg-gray-600\/50:hover:is(.dark *){background-color:#4b556380}.dark\:hover\:bg-gray-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:hover\:bg-gray-700\/50:hover:is(.dark *){background-color:#37415180}.dark\:hover\:bg-gray-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:hover\:bg-green-300:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(132 225 188 / var(--tw-bg-opacity))}.dark\:hover\:bg-green-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity))}.dark\:hover\:bg-green-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.dark\:hover\:bg-pink-500:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(231 70 148 / var(--tw-bg-opacity))}.dark\:hover\:bg-pink-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(191 18 93 / var(--tw-bg-opacity))}.dark\:hover\:bg-primary:hover:is(.dark *){background-color:var(--color-primary)}.dark\:hover\:bg-purple-500:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(144 97 249 / var(--tw-bg-opacity))}.dark\:hover\:bg-purple-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(108 43 217 / var(--tw-bg-opacity))}.dark\:hover\:bg-red-300:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(248 180 180 / var(--tw-bg-opacity))}.dark\:hover\:bg-red-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity))}.dark\:hover\:bg-red-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.dark\:hover\:bg-red-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(155 28 28 / var(--tw-bg-opacity))}.dark\:hover\:bg-red-900:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(119 29 29 / var(--tw-bg-opacity))}.dark\:hover\:bg-yellow-300:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(250 202 21 / var(--tw-bg-opacity))}.dark\:hover\:bg-yellow-400:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(227 160 8 / var(--tw-bg-opacity))}.hover\:dark\:bg-bg-dark-tone:is(.dark *):hover{background-color:var(--color-bg-dark-tone)}.dark\:hover\:bg-opacity-80:hover:is(.dark *){--tw-bg-opacity: .8}.dark\:hover\:from-blue-400\/30:hover:is(.dark *){--tw-gradient-from: rgb(118 169 250 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(118 169 250 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:hover\:from-blue-900\/30:hover:is(.dark *){--tw-gradient-from: rgb(35 56 118 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(35 56 118 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:hover\:to-purple-400\/30:hover:is(.dark *){--tw-gradient-to: rgb(172 148 250 / .3) var(--tw-gradient-to-position)}.dark\:hover\:to-purple-900\/30:hover:is(.dark *){--tw-gradient-to: rgb(74 29 150 / .3) var(--tw-gradient-to-position)}.dark\:hover\:text-blue-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.dark\:hover\:text-blue-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.dark\:hover\:text-blue-500:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.dark\:hover\:text-gray-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.dark\:hover\:text-gray-900:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.dark\:hover\:text-green-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(49 196 141 / var(--tw-text-opacity))}.dark\:hover\:text-red-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}.dark\:hover\:text-red-500:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:hover\:text-yellow-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(227 160 8 / var(--tw-text-opacity))}.dark\:hover\:ring-blue-400:hover:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(118 169 250 / var(--tw-ring-opacity))}.dark\:hover\:scrollbar-thumb-primary:is(.dark *){--scrollbar-thumb-hover: var(--color-primary) !important}.dark\:focus\:border-blue-500:focus:is(.dark *){--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.dark\:focus\:border-secondary:focus:is(.dark *){border-color:var(--color-secondary)}.dark\:focus\:text-white:focus:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:focus\:ring-blue-500:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.dark\:focus\:ring-blue-600:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(28 100 242 / var(--tw-ring-opacity))}.dark\:focus\:ring-blue-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(30 66 159 / var(--tw-ring-opacity))}.dark\:focus\:ring-cyan-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(21 94 117 / var(--tw-ring-opacity))}.dark\:focus\:ring-gray-500:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity))}.dark\:focus\:ring-gray-600:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity))}.dark\:focus\:ring-gray-700:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(55 65 81 / var(--tw-ring-opacity))}.dark\:focus\:ring-gray-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(31 41 55 / var(--tw-ring-opacity))}.dark\:focus\:ring-green-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(3 84 63 / var(--tw-ring-opacity))}.dark\:focus\:ring-lime-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(63 98 18 / var(--tw-ring-opacity))}.dark\:focus\:ring-pink-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(153 21 75 / var(--tw-ring-opacity))}.dark\:focus\:ring-pink-900:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(117 26 61 / var(--tw-ring-opacity))}.dark\:focus\:ring-purple-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(85 33 181 / var(--tw-ring-opacity))}.dark\:focus\:ring-purple-900:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(74 29 150 / var(--tw-ring-opacity))}.dark\:focus\:ring-red-400:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(249 128 128 / var(--tw-ring-opacity))}.dark\:focus\:ring-red-600:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(224 36 36 / var(--tw-ring-opacity))}.dark\:focus\:ring-red-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(155 28 28 / var(--tw-ring-opacity))}.dark\:focus\:ring-red-900:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(119 29 29 / var(--tw-ring-opacity))}.dark\:focus\:ring-secondary:focus:is(.dark *){--tw-ring-color: var(--color-secondary)}.dark\:focus\:ring-teal-700:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(3 102 114 / var(--tw-ring-opacity))}.dark\:focus\:ring-teal-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(5 80 92 / var(--tw-ring-opacity))}.dark\:focus\:ring-yellow-900:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(99 49 18 / var(--tw-ring-opacity))}.dark\:focus\:ring-offset-blue-800:focus:is(.dark *){--tw-ring-offset-color: #1E429F}.dark\:focus\:ring-offset-gray-700:focus:is(.dark *){--tw-ring-offset-color: #374151}.dark\:focus\:ring-offset-gray-800:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.dark\:focus\:ring-offset-gray-900:focus:is(.dark *){--tw-ring-offset-color: #111827}.dark\:focus-visible\:ring-offset-gray-700\/50:focus-visible:is(.dark *){--tw-ring-offset-color: rgb(55 65 81 / .5)}.dark\:focus-visible\:ring-offset-gray-800:focus-visible:is(.dark *){--tw-ring-offset-color: #1F2937}@media (min-width: 640px){.sm\:mb-0{margin-bottom:0}.sm\:mr-4{margin-right:1rem}.sm\:mt-0{margin-top:0}.sm\:h-10{height:2.5rem}.sm\:h-6{height:1.5rem}.sm\:h-64{height:16rem}.sm\:w-1\/4{width:25%}.sm\:w-10{width:2.5rem}.sm\:w-6{width:1.5rem}.sm\:w-64{width:16rem}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:rounded-lg{border-radius:.5rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:text-center{text-align:center}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:underline{text-decoration-line:underline}}@media (min-width: 768px){.md\:inset-0{top:0;right:0;bottom:0;left:0}.md\:order-2{order:2}.md\:col-span-1{grid-column:span 1 / span 1}.md\:col-span-2{grid-column:span 2 / span 2}.md\:ml-80{margin-left:20rem}.md\:mr-6{margin-right:1.5rem}.md\:mt-0{margin-top:0}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-auto{height:auto}.md\:h-full{height:100%}.md\:w-1\/3{width:33.333333%}.md\:w-1\/4{width:25%}.md\:w-32{width:8rem}.md\:w-48{width:12rem}.md\:w-80{width:20rem}.md\:w-auto{width:auto}.md\:max-w-xl{max-width:36rem}.md\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[minmax\(150px\,25\%\)_1fr\]{grid-template-columns:minmax(150px,25%) 1fr}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:gap-4{gap:1rem}.md\:space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.md\:space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.md\:rounded-none{border-radius:0}.md\:rounded-l-lg{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.md\:border-0{border-width:0px}.md\:bg-transparent{background-color:transparent}.md\:p-0{padding:0}.md\:p-6{padding:1.5rem}.md\:p-8{padding:2rem}.md\:text-right{text-align:right}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:font-medium{font-weight:500}.md\:text-blue-700{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.md\:hover\:bg-transparent:hover{background-color:transparent}.md\:hover\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.md\:dark\:bg-gray-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.md\:dark\:hover\:bg-transparent:hover:is(.dark *){background-color:transparent}.md\:dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}}@media (min-width: 1024px){.lg\:ml-96{margin-left:24rem}.lg\:w-1\/4{width:25%}.lg\:w-96{width:24rem}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.dark\:lg\:hover\:\[paint-order\:markers\]:hover:is(.dark *){paint-order:markers}}@media (min-width: 1280px){.xl\:h-80{height:20rem}.xl\:w-1\/6{width:16.666667%}}@media (min-width: 1536px){.\32xl\:h-96{height:24rem}} diff --git a/web/dist/assets/index-B_v3os1E.js b/web/dist/assets/index-DrzOneYA.js similarity index 95% rename from web/dist/assets/index-B_v3os1E.js rename to web/dist/assets/index-DrzOneYA.js index 78cba99d..7e1cf17a 100644 --- a/web/dist/assets/index-B_v3os1E.js +++ b/web/dist/assets/index-DrzOneYA.js @@ -11,7 +11,7 @@ var qH=Object.defineProperty;var GH=(t,e,n)=>e in t?qH(t,e,{enumerable:!0,config * @vue/runtime-core v3.5.10 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/function $c(t,e,n,o){try{return o?t(...o):t()}catch(r){Y5(r,e,n)}}function $o(t,e,n,o){if(dt(t)){const r=$c(t,e,n,o);return r&&iM(r)&&r.catch(i=>{Y5(i,e,n)}),r}if(nt(t)){const r=[];for(let i=0;i>>1,r=Mr[o],i=xc(r);i=xc(n)?Mr.push(t):Mr.splice(qP(e),0,t),t.flags|=1,kM()}}function kM(){!Sc&&!nf&&(nf=!0,sp=IM.then(PM))}function GP(t){nt(t)?dl.push(...t):D1&&t.id===-1?D1.splice(tl+1,0,t):t.flags&1||(dl.push(t),t.flags|=1),kM()}function im(t,e,n=Sc?Xo+1:0){for(;nxc(n)-xc(o));if(dl.length=0,D1){D1.push(...e);return}for(D1=e,tl=0;tlt.id==null?t.flags&2?-1:1/0:t.id;function PM(t){nf=!1,Sc=!0;try{for(Xo=0;Xo{o._d&&mm(-1);const i=c5(e);let s;try{s=t(...r)}finally{c5(i),o._d&&mm(1)}return s};return o._n=!0,o._c=!0,o._d=!0,o}function Le(t,e){if(Un===null)return t;const n=e0(Un),o=t.dirs||(t.dirs=[]);for(let r=0;rt.__isTeleport,dc=t=>t&&(t.disabled||t.disabled===""),jP=t=>t&&(t.defer||t.defer===""),om=t=>typeof SVGElement<"u"&&t instanceof SVGElement,sm=t=>typeof MathMLElement=="function"&&t instanceof MathMLElement,rf=(t,e)=>{const n=t&&t.to;return Tn(n)?e?e(n):null:n},zP={name:"Teleport",__isTeleport:!0,process(t,e,n,o,r,i,s,a,l,c){const{mc:u,pc:d,pbc:f,o:{insert:T,querySelector:h,createText:g,createComment:Q}}=c,m=dc(e.props);let{shapeFlag:_,children:v,dynamicChildren:b}=e;if(t==null){const y=e.el=g(""),E=e.anchor=g("");T(y,n,o),T(E,n,o);const x=(C,A)=>{_&16&&(r&&r.isCE&&(r.ce._teleportTarget=C),u(v,C,A,r,i,s,a,l))},L=()=>{const C=e.target=rf(e.props,h),A=FM(C,e,g,T);C&&(s!=="svg"&&om(C)?s="svg":s!=="mathml"&&sm(C)&&(s="mathml"),m||(x(C,A),V6(e)))};m&&(x(n,E),V6(e)),jP(e.props)?Fn(L,i):L()}else{e.el=t.el,e.targetStart=t.targetStart;const y=e.anchor=t.anchor,E=e.target=t.target,x=e.targetAnchor=t.targetAnchor,L=dc(t.props),C=L?n:E,A=L?y:x;if(s==="svg"||om(E)?s="svg":(s==="mathml"||sm(E))&&(s="mathml"),b?(f(t.dynamicChildren,b,C,r,i,s,a),dp(t,e,!0)):l||d(t,e,C,A,r,i,s,a,!1),m)L?e.props&&t.props&&e.props.to!==t.props.to&&(e.props.to=t.props.to):g6(e,n,y,c,1);else if((e.props&&e.props.to)!==(t.props&&t.props.to)){const O=e.target=rf(e.props,h);O&&g6(e,O,null,c,0)}else L&&g6(e,E,x,c,1);V6(e)}},remove(t,e,n,{um:o,o:{remove:r}},i){const{shapeFlag:s,children:a,anchor:l,targetStart:c,targetAnchor:u,target:d,props:f}=t;if(d&&(r(c),r(u)),i&&r(l),s&16){const T=i||!dc(f);for(let h=0;h{t.isMounted=!0}),D2(()=>{t.isUnmounting=!0}),t}const Mi=[Function,Array],qM={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Mi,onEnter:Mi,onAfterEnter:Mi,onEnterCancelled:Mi,onBeforeLeave:Mi,onLeave:Mi,onAfterLeave:Mi,onLeaveCancelled:Mi,onBeforeAppear:Mi,onAppear:Mi,onAfterAppear:Mi,onAppearCancelled:Mi},GM=t=>{const e=t.subTree;return e.component?GM(e.component):e},KP={name:"BaseTransition",props:qM,setup(t,{slots:e}){const n=fp(),o=UM();return()=>{const r=e.default&&lp(e.default(),!0);if(!r||!r.length)return;const i=jM(r),s=Pt(t),{mode:a}=s;if(o.isLeaving)return R0(i);const l=am(i);if(!l)return R0(i);let c=Lc(l,s,o,n,f=>c=f);l.type!==cr&&W1(l,c);const u=n.subTree,d=u&&am(u);if(d&&d.type!==cr&&!U1(l,d)&&GM(n).type!==cr){const f=Lc(d,s,o,n);if(W1(d,f),a==="out-in"&&l.type!==cr)return o.isLeaving=!0,f.afterLeave=()=>{o.isLeaving=!1,n.job.flags&8||n.update(),delete f.afterLeave},R0(i);a==="in-out"&&l.type!==cr&&(f.delayLeave=(T,h,g)=>{const Q=zM(o,d);Q[String(d.key)]=d,T[I1]=()=>{h(),T[I1]=void 0,delete c.delayedLeave},c.delayedLeave=g})}return i}}};function jM(t){let e=t[0];if(t.length>1){for(const n of t)if(n.type!==cr){e=n;break}}return e}const ZP=KP;function zM(t,e){const{leavingVNodes:n}=t;let o=n.get(e.type);return o||(o=Object.create(null),n.set(e.type,o)),o}function Lc(t,e,n,o,r){const{appear:i,mode:s,persisted:a=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:T,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:Q,onAppear:m,onAfterAppear:_,onAppearCancelled:v}=e,b=String(t.key),y=zM(n,t),E=(C,A)=>{C&&$o(C,o,9,A)},x=(C,A)=>{const O=A[1];E(C,A),nt(C)?C.every(R=>R.length<=1)&&O():C.length<=1&&O()},L={mode:s,persisted:a,beforeEnter(C){let A=l;if(!n.isMounted)if(i)A=Q||l;else return;C[I1]&&C[I1](!0);const O=y[b];O&&U1(t,O)&&O.el[I1]&&O.el[I1](),E(A,[C])},enter(C){let A=c,O=u,R=d;if(!n.isMounted)if(i)A=m||c,O=_||u,R=v||d;else return;let I=!1;const M=C[_6]=$=>{I||(I=!0,$?E(R,[C]):E(O,[C]),L.delayedLeave&&L.delayedLeave(),C[_6]=void 0)};A?x(A,[C,M]):M()},leave(C,A){const O=String(t.key);if(C[_6]&&C[_6](!0),n.isUnmounting)return A();E(f,[C]);let R=!1;const I=C[I1]=M=>{R||(R=!0,A(),M?E(g,[C]):E(h,[C]),C[I1]=void 0,y[O]===t&&delete y[O])};y[O]=t,T?x(T,[C,I]):I()},clone(C){const A=Lc(C,e,n,o,r);return r&&r(A),A}};return L}function R0(t){if(W5(t))return t=y1(t),t.children=null,t}function am(t){if(!W5(t))return BM(t.type)&&t.children?jM(t.children):t;const{shapeFlag:e,children:n}=t;if(n){if(e&16)return n[0];if(e&32&&dt(n.default))return n.default()}}function W1(t,e){t.shapeFlag&6&&t.component?(t.transition=e,W1(t.component.subTree,e)):t.shapeFlag&128?(t.ssContent.transition=e.clone(t.ssContent),t.ssFallback.transition=e.clone(t.ssFallback)):t.transition=e}function lp(t,e=!1,n){let o=[],r=0;for(let i=0;i1)for(let i=0;iof(h,e&&(nt(e)?e[g]:e),n,o,r));return}if(S2(o)&&!r)return;const i=o.shapeFlag&4?e0(o.component):o.el,s=r?null:i,{i:a,r:l}=t,c=e&&e.r,u=a.refs===rn?a.refs={}:a.refs,d=a.setupState,f=Pt(d),T=d===rn?()=>!1:h=>jt(f,h);if(c!=null&&c!==l&&(Tn(c)?(u[c]=null,T(c)&&(d[c]=null)):Pn(c)&&(c.value=null)),dt(l))$c(l,a,12,[s,u]);else{const h=Tn(l),g=Pn(l);if(h||g){const Q=()=>{if(t.f){const m=h?T(l)?d[l]:u[l]:l.value;r?nt(m)&&Zf(m,i):nt(m)?m.includes(i)||m.push(i):h?(u[l]=[i],T(l)&&(d[l]=u[l])):(l.value=[i],t.k&&(u[t.k]=l.value))}else h?(u[l]=s,T(l)&&(d[l]=s)):g&&(l.value=s,t.k&&(u[t.k]=s))};s?(Q.id=-1,Fn(Q,n)):Q()}}}const S2=t=>!!t.type.__asyncLoader,W5=t=>t.type.__isKeepAlive,XP={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(t,{slots:e}){const n=fp(),o=n.ctx;if(!o.renderer)return()=>{const _=e.default&&e.default();return _&&_.length===1?_[0]:_};const r=new Map,i=new Set;let s=null;const a=n.suspense,{renderer:{p:l,m:c,um:u,o:{createElement:d}}}=o,f=d("div");o.activate=(_,v,b,y,E)=>{const x=_.component;c(_,v,b,0,a),l(x.vnode,_,v,b,x,a,y,_.slotScopeIds,E),Fn(()=>{x.isDeactivated=!1,x.a&&cl(x.a);const L=_.props&&_.props.onVnodeMounted;L&&Hi(L,x.parent,_)},a)},o.deactivate=_=>{const v=_.component;d5(v.m),d5(v.a),c(_,f,null,1,a),Fn(()=>{v.da&&cl(v.da);const b=_.props&&_.props.onVnodeUnmounted;b&&Hi(b,v.parent,_),v.isDeactivated=!0},a)};function T(_){N0(_),u(_,n,a,!0)}function h(_){r.forEach((v,b)=>{const y=df(v.type);y&&!_(y)&&g(b)})}function g(_){const v=r.get(_);v&&(!s||!U1(v,s))?T(v):s&&N0(s),r.delete(_),i.delete(_)}$n(()=>[t.include,t.exclude],([_,v])=>{_&&h(b=>sc(_,b)),v&&h(b=>!sc(v,b))},{flush:"post",deep:!0});let Q=null;const m=()=>{Q!=null&&(T5(n.subTree.type)?Fn(()=>{r.set(Q,Q6(n.subTree))},n.subTree.suspense):r.set(Q,Q6(n.subTree)))};return Hr(m),N2(m),D2(()=>{r.forEach(_=>{const{subTree:v,suspense:b}=n,y=Q6(v);if(_.type===y.type&&_.key===y.key){N0(y);const E=y.component.da;E&&Fn(E,b);return}T(_)})}),()=>{if(Q=null,!e.default)return s=null;const _=e.default(),v=_[0];if(_.length>1)return s=null,_;if(!gl(v)||!(v.shapeFlag&4)&&!(v.shapeFlag&128))return s=null,v;let b=Q6(v);if(b.type===cr)return s=null,b;const y=b.type,E=df(S2(b)?b.type.__asyncResolved||{}:y),{include:x,exclude:L,max:C}=t;if(x&&(!E||!sc(x,E))||L&&E&&sc(L,E))return b.shapeFlag&=-257,s=b,v;const A=b.key==null?y:b.key,O=r.get(A);return b.el&&(b=y1(b),v.shapeFlag&128&&(v.ssContent=b)),Q=A,O?(b.el=O.el,b.component=O.component,b.transition&&W1(b,b.transition),b.shapeFlag|=512,i.delete(A),i.add(A)):(i.add(A),C&&i.size>parseInt(C,10)&&g(i.values().next().value)),b.shapeFlag|=256,s=b,T5(v.type)?v:b}}},JP=XP;function sc(t,e){return nt(t)?t.some(n=>sc(n,e)):Tn(t)?t.split(",").includes(e):YH(t)?(t.lastIndex=0,t.test(e)):!1}function e$(t,e){WM(t,"a",e)}function t$(t,e){WM(t,"da",e)}function WM(t,e,n=nr){const o=t.__wdc||(t.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return t()});if(K5(e,o,n),n){let r=n.parent;for(;r&&r.parent;)W5(r.parent.vnode)&&n$(o,e,n,r),r=r.parent}}function n$(t,e,n,o){const r=K5(e,t,o,!0);cp(()=>{Zf(o[e],r)},n)}function N0(t){t.shapeFlag&=-257,t.shapeFlag&=-513}function Q6(t){return t.shapeFlag&128?t.ssContent:t}function K5(t,e,n=nr,o=!1){if(n){const r=n[t]||(n[t]=[]),i=e.__weh||(e.__weh=(...s)=>{Z1();const a=Bc(n),l=$o(e,n,t,s);return a(),X1(),l});return o?r.unshift(i):r.push(i),i}}const E1=t=>(e,n=nr)=>{(!J5||t==="sp")&&K5(t,(...o)=>e(...o),n)},r$=E1("bm"),Hr=E1("m"),i$=E1("bu"),N2=E1("u"),D2=E1("bum"),cp=E1("um"),o$=E1("sp"),s$=E1("rtg"),a$=E1("rtc");function l$(t,e=nr){K5("ec",t,e)}const KM="components";function ze(t,e){return XM(KM,t,!0,e)||t}const ZM=Symbol.for("v-ndc");function Vc(t){return Tn(t)?XM(KM,t,!1)||t:t||ZM}function XM(t,e,n=!0,o=!1){const r=Un||nr;if(r){const i=r.type;{const a=df(i,!1);if(a&&(a===e||a===Gi(e)||a===B5(Gi(e))))return i}const s=lm(r[t]||i[t],e)||lm(r.appContext[t],e);return!s&&o?i:s}}function lm(t,e){return t&&(t[e]||t[Gi(e)]||t[B5(Gi(e))])}function Pe(t,e,n,o){let r;const i=n,s=nt(t);if(s||Tn(t)){const a=s&&ul(t);let l=!1;a&&(l=!Fi(t),t=U5(t)),r=new Array(t.length);for(let c=0,u=t.length;ce(a,l,void 0,i));else{const a=Object.keys(t);r=new Array(a.length);for(let l=0,c=a.length;lgl(e)?!(e.type===cr||e.type===xe&&!JM(e.children)):!0)?t:null}const sf=t=>t?QR(t)?e0(t):sf(t.parent):null,Tc=qn(Object.create(null),{$:t=>t,$el:t=>t.vnode.el,$data:t=>t.data,$props:t=>t.props,$attrs:t=>t.attrs,$slots:t=>t.slots,$refs:t=>t.refs,$parent:t=>sf(t.parent),$root:t=>sf(t.root),$host:t=>t.ce,$emit:t=>t.emit,$options:t=>tR(t),$forceUpdate:t=>t.f||(t.f=()=>{ap(t.update)}),$nextTick:t=>t.n||(t.n=Se.bind(t.proxy)),$watch:t=>w$.bind(t)}),D0=(t,e)=>t!==rn&&!t.__isScriptSetup&&jt(t,e),c$={get({_:t},e){if(e==="__v_skip")return!0;const{ctx:n,setupState:o,data:r,props:i,accessCache:s,type:a,appContext:l}=t;let c;if(e[0]!=="$"){const T=s[e];if(T!==void 0)switch(T){case 1:return o[e];case 2:return r[e];case 4:return n[e];case 3:return i[e]}else{if(D0(o,e))return s[e]=1,o[e];if(r!==rn&&jt(r,e))return s[e]=2,r[e];if((c=t.propsOptions[0])&&jt(c,e))return s[e]=3,i[e];if(n!==rn&&jt(n,e))return s[e]=4,n[e];af&&(s[e]=0)}}const u=Tc[e];let d,f;if(u)return e==="$attrs"&&Tr(t.attrs,"get",""),u(t);if((d=a.__cssModules)&&(d=d[e]))return d;if(n!==rn&&jt(n,e))return s[e]=4,n[e];if(f=l.config.globalProperties,jt(f,e))return f[e]},set({_:t},e,n){const{data:o,setupState:r,ctx:i}=t;return D0(r,e)?(r[e]=n,!0):o!==rn&&jt(o,e)?(o[e]=n,!0):jt(t.props,e)||e[0]==="$"&&e.slice(1)in t?!1:(i[e]=n,!0)},has({_:{data:t,setupState:e,accessCache:n,ctx:o,appContext:r,propsOptions:i}},s){let a;return!!n[s]||t!==rn&&jt(t,s)||D0(e,s)||(a=i[0])&&jt(a,s)||jt(o,s)||jt(Tc,s)||jt(r.config.globalProperties,s)},defineProperty(t,e,n){return n.get!=null?t._.accessCache[e]=0:jt(n,"value")&&this.set(t,e,n.value,null),Reflect.defineProperty(t,e,n)}};function cm(t){return nt(t)?t.reduce((e,n)=>(e[n]=null,e),{}):t}let af=!0;function u$(t){const e=tR(t),n=t.proxy,o=t.ctx;af=!1,e.beforeCreate&&um(e.beforeCreate,t,"bc");const{data:r,computed:i,methods:s,watch:a,provide:l,inject:c,created:u,beforeMount:d,mounted:f,beforeUpdate:T,updated:h,activated:g,deactivated:Q,beforeDestroy:m,beforeUnmount:_,destroyed:v,unmounted:b,render:y,renderTracked:E,renderTriggered:x,errorCaptured:L,serverPrefetch:C,expose:A,inheritAttrs:O,components:R,directives:I,filters:M}=e;if(c&&d$(c,o,null),s)for(const G in s){const P=s[G];dt(P)&&(o[G]=P.bind(n))}if(r){const G=r.call(n,n);en(G)&&(t.data=fr(G))}if(af=!0,i)for(const G in i){const P=i[G],F=dt(P)?P.bind(n,n):dt(P.get)?P.get.bind(n,n):rs,B=!dt(P)&&dt(P.set)?P.set.bind(n):rs,q=je({get:F,set:B});Object.defineProperty(o,G,{enumerable:!0,configurable:!0,get:()=>q.value,set:ee=>q.value=ee})}if(a)for(const G in a)eR(a[G],o,n,G);if(l){const G=dt(l)?l.call(n):l;Reflect.ownKeys(G).forEach(P=>{fl(P,G[P])})}u&&um(u,t,"c");function U(G,P){nt(P)?P.forEach(F=>G(F.bind(n))):P&&G(P.bind(n))}if(U(r$,d),U(Hr,f),U(i$,T),U(N2,h),U(e$,g),U(t$,Q),U(l$,L),U(a$,E),U(s$,x),U(D2,_),U(cp,b),U(o$,C),nt(A))if(A.length){const G=t.exposed||(t.exposed={});A.forEach(P=>{Object.defineProperty(G,P,{get:()=>n[P],set:F=>n[P]=F})})}else t.exposed||(t.exposed={});y&&t.render===rs&&(t.render=y),O!=null&&(t.inheritAttrs=O),R&&(t.components=R),I&&(t.directives=I),C&&YM(t)}function d$(t,e,n=rs){nt(t)&&(t=lf(t));for(const o in t){const r=t[o];let i;en(r)?"default"in r?i=Ui(r.from||o,r.default,!0):i=Ui(r.from||o):i=Ui(r),Pn(i)?Object.defineProperty(e,o,{enumerable:!0,configurable:!0,get:()=>i.value,set:s=>i.value=s}):e[o]=i}}function um(t,e,n){$o(nt(t)?t.map(o=>o.bind(e.proxy)):t.bind(e.proxy),e,n)}function eR(t,e,n,o){let r=o.includes(".")?pR(n,o):()=>n[o];if(Tn(t)){const i=e[t];dt(i)&&$n(r,i)}else if(dt(t))$n(r,t.bind(n));else if(en(t))if(nt(t))t.forEach(i=>eR(i,e,n,o));else{const i=dt(t.handler)?t.handler.bind(n):e[t.handler];dt(i)&&$n(r,i,t)}}function tR(t){const e=t.type,{mixins:n,extends:o}=e,{mixins:r,optionsCache:i,config:{optionMergeStrategies:s}}=t.appContext,a=i.get(e);let l;return a?l=a:!r.length&&!n&&!o?l=e:(l={},r.length&&r.forEach(c=>u5(l,c,s,!0)),u5(l,e,s)),en(e)&&i.set(e,l),l}function u5(t,e,n,o=!1){const{mixins:r,extends:i}=e;i&&u5(t,i,n,!0),r&&r.forEach(s=>u5(t,s,n,!0));for(const s in e)if(!(o&&s==="expose")){const a=T$[s]||n&&n[s];t[s]=a?a(t[s],e[s]):e[s]}return t}const T$={data:dm,props:Tm,emits:Tm,methods:ac,computed:ac,beforeCreate:wr,created:wr,beforeMount:wr,mounted:wr,beforeUpdate:wr,updated:wr,beforeDestroy:wr,beforeUnmount:wr,destroyed:wr,unmounted:wr,activated:wr,deactivated:wr,errorCaptured:wr,serverPrefetch:wr,components:ac,directives:ac,watch:p$,provide:dm,inject:f$};function dm(t,e){return e?t?function(){return qn(dt(t)?t.call(this,this):t,dt(e)?e.call(this,this):e)}:e:t}function f$(t,e){return ac(lf(t),lf(e))}function lf(t){if(nt(t)){const e={};for(let n=0;n1)return n&&dt(e)?e.call(o&&o.proxy):e}}const rR={},iR=()=>Object.create(rR),oR=t=>Object.getPrototypeOf(t)===rR;function g$(t,e,n,o=!1){const r={},i=iR();t.propsDefaults=Object.create(null),sR(t,e,r,i);for(const s in t.propsOptions[0])s in r||(r[s]=void 0);n?t.props=o?r:OM(r):t.type.props?t.props=r:t.props=i,t.attrs=i}function _$(t,e,n,o){const{props:r,attrs:i,vnode:{patchFlag:s}}=t,a=Pt(r),[l]=t.propsOptions;let c=!1;if((o||s>0)&&!(s&16)){if(s&8){const u=t.vnode.dynamicProps;for(let d=0;d{l=!0;const[f,T]=aR(d,e,!0);qn(s,f),T&&a.push(...T)};!n&&e.mixins.length&&e.mixins.forEach(u),t.extends&&u(t.extends),t.mixins&&t.mixins.forEach(u)}if(!i&&!l)return en(t)&&o.set(t,al),al;if(nt(i))for(let u=0;ut[0]==="_"||t==="$stable",up=t=>nt(t)?t.map(es):[es(t)],v$=(t,e,n)=>{if(e._n)return e;const o=Ge((...r)=>up(e(...r)),n);return o._c=!1,o},cR=(t,e,n)=>{const o=t._ctx;for(const r in t){if(lR(r))continue;const i=t[r];if(dt(i))e[r]=v$(r,i,o);else if(i!=null){const s=up(i);e[r]=()=>s}}},uR=(t,e)=>{const n=up(e);t.slots.default=()=>n},dR=(t,e,n)=>{for(const o in e)(n||o!=="_")&&(t[o]=e[o])},y$=(t,e,n)=>{const o=t.slots=iR();if(t.vnode.shapeFlag&32){const r=e._;r?(dR(o,e,n),n&&aM(o,"_",r,!0)):cR(e,o)}else e&&uR(t,e)},b$=(t,e,n)=>{const{vnode:o,slots:r}=t;let i=!0,s=rn;if(o.shapeFlag&32){const a=e._;a?n&&a===1?i=!1:dR(r,e,n):(i=!e.$stable,cR(e,r)),s=e}else e&&(uR(t,e),s={default:1});if(i)for(const a in r)!lR(a)&&s[a]==null&&delete r[a]},Fn=k$;function E$(t){return S$(t)}function S$(t,e){const n=lM();n.__VUE__=!0;const{insert:o,remove:r,patchProp:i,createElement:s,createText:a,createComment:l,setText:c,setElementText:u,parentNode:d,nextSibling:f,setScopeId:T=rs,insertStaticContent:h}=t,g=(Y,W,X,se=null,le=null,de=null,Te=void 0,ge=null,_e=!!W.dynamicChildren)=>{if(Y===W)return;Y&&!U1(Y,W)&&(se=z(Y),ee(Y,le,de,!0),Y=null),W.patchFlag===-2&&(_e=!1,W.dynamicChildren=null);const{type:ve,ref:$e,shapeFlag:be}=W;switch(ve){case X5:Q(Y,W,X,se);break;case cr:m(Y,W,X,se);break;case B6:Y==null&&_(W,X,se,Te);break;case xe:R(Y,W,X,se,le,de,Te,ge,_e);break;default:be&1?y(Y,W,X,se,le,de,Te,ge,_e):be&6?I(Y,W,X,se,le,de,Te,ge,_e):(be&64||be&128)&&ve.process(Y,W,X,se,le,de,Te,ge,_e,fe)}$e!=null&&le&&of($e,Y&&Y.ref,de,W||Y,!W)},Q=(Y,W,X,se)=>{if(Y==null)o(W.el=a(W.children),X,se);else{const le=W.el=Y.el;W.children!==Y.children&&c(le,W.children)}},m=(Y,W,X,se)=>{Y==null?o(W.el=l(W.children||""),X,se):W.el=Y.el},_=(Y,W,X,se)=>{[Y.el,Y.anchor]=h(Y.children,W,X,se,Y.el,Y.anchor)},v=({el:Y,anchor:W},X,se)=>{let le;for(;Y&&Y!==W;)le=f(Y),o(Y,X,se),Y=le;o(W,X,se)},b=({el:Y,anchor:W})=>{let X;for(;Y&&Y!==W;)X=f(Y),r(Y),Y=X;r(W)},y=(Y,W,X,se,le,de,Te,ge,_e)=>{W.type==="svg"?Te="svg":W.type==="math"&&(Te="mathml"),Y==null?E(W,X,se,le,de,Te,ge,_e):C(Y,W,le,de,Te,ge,_e)},E=(Y,W,X,se,le,de,Te,ge)=>{let _e,ve;const{props:$e,shapeFlag:be,transition:Ne,dirs:Be}=Y;if(_e=Y.el=s(Y.type,de,$e&&$e.is,$e),be&8?u(_e,Y.children):be&16&&L(Y.children,_e,null,se,le,I0(Y,de),Te,ge),Be&&ua(Y,null,se,"created"),x(_e,Y,Y.scopeId,Te,se),$e){for(const ct in $e)ct!=="value"&&!uc(ct)&&i(_e,ct,null,$e[ct],de,se);"value"in $e&&i(_e,"value",null,$e.value,de),(ve=$e.onVnodeBeforeMount)&&Hi(ve,se,Y)}Be&&ua(Y,null,se,"beforeMount");const Ue=x$(le,Ne);Ue&&Ne.beforeEnter(_e),o(_e,W,X),((ve=$e&&$e.onVnodeMounted)||Ue||Be)&&Fn(()=>{ve&&Hi(ve,se,Y),Ue&&Ne.enter(_e),Be&&ua(Y,null,se,"mounted")},le)},x=(Y,W,X,se,le)=>{if(X&&T(Y,X),se)for(let de=0;de{for(let ve=_e;ve{const ge=W.el=Y.el;let{patchFlag:_e,dynamicChildren:ve,dirs:$e}=W;_e|=Y.patchFlag&16;const be=Y.props||rn,Ne=W.props||rn;let Be;if(X&&da(X,!1),(Be=Ne.onVnodeBeforeUpdate)&&Hi(Be,X,W,Y),$e&&ua(W,Y,X,"beforeUpdate"),X&&da(X,!0),(be.innerHTML&&Ne.innerHTML==null||be.textContent&&Ne.textContent==null)&&u(ge,""),ve?A(Y.dynamicChildren,ve,ge,X,se,I0(W,le),de):Te||P(Y,W,ge,null,X,se,I0(W,le),de,!1),_e>0){if(_e&16)O(ge,be,Ne,X,le);else if(_e&2&&be.class!==Ne.class&&i(ge,"class",null,Ne.class,le),_e&4&&i(ge,"style",be.style,Ne.style,le),_e&8){const Ue=W.dynamicProps;for(let ct=0;ct{Be&&Hi(Be,X,W,Y),$e&&ua(W,Y,X,"updated")},se)},A=(Y,W,X,se,le,de,Te)=>{for(let ge=0;ge{if(W!==X){if(W!==rn)for(const de in W)!uc(de)&&!(de in X)&&i(Y,de,W[de],null,le,se);for(const de in X){if(uc(de))continue;const Te=X[de],ge=W[de];Te!==ge&&de!=="value"&&i(Y,de,ge,Te,le,se)}"value"in X&&i(Y,"value",W.value,X.value,le)}},R=(Y,W,X,se,le,de,Te,ge,_e)=>{const ve=W.el=Y?Y.el:a(""),$e=W.anchor=Y?Y.anchor:a("");let{patchFlag:be,dynamicChildren:Ne,slotScopeIds:Be}=W;Be&&(ge=ge?ge.concat(Be):Be),Y==null?(o(ve,X,se),o($e,X,se),L(W.children||[],X,$e,le,de,Te,ge,_e)):be>0&&be&64&&Ne&&Y.dynamicChildren?(A(Y.dynamicChildren,Ne,X,le,de,Te,ge),(W.key!=null||le&&W===le.subTree)&&dp(Y,W,!0)):P(Y,W,X,$e,le,de,Te,ge,_e)},I=(Y,W,X,se,le,de,Te,ge,_e)=>{W.slotScopeIds=ge,Y==null?W.shapeFlag&512?le.ctx.activate(W,X,se,Te,_e):M(W,X,se,le,de,Te,_e):$(Y,W,_e)},M=(Y,W,X,se,le,de,Te)=>{const ge=Y.component=F$(Y,se,le);if(W5(Y)&&(ge.ctx.renderer=fe),U$(ge,!1,Te),ge.asyncDep){if(le&&le.registerDep(ge,U,Te),!Y.el){const _e=ge.subTree=ne(cr);m(null,_e,W,X)}}else U(ge,Y,W,X,le,de,Te)},$=(Y,W,X)=>{const se=W.component=Y.component;if(D$(Y,W,X))if(se.asyncDep&&!se.asyncResolved){G(se,W,X);return}else se.next=W,se.update();else W.el=Y.el,se.vnode=W},U=(Y,W,X,se,le,de,Te)=>{const ge=()=>{if(Y.isMounted){let{next:be,bu:Ne,u:Be,parent:Ue,vnode:ct}=Y;{const Ft=TR(Y);if(Ft){be&&(be.el=ct.el,G(Y,be,Te)),Ft.asyncDep.then(()=>{Y.isUnmounted||ge()});return}}let at=be,Dt;da(Y,!1),be?(be.el=ct.el,G(Y,be,Te)):be=ct,Ne&&cl(Ne),(Dt=be.props&&be.props.onVnodeBeforeUpdate)&&Hi(Dt,Ue,be,ct),da(Y,!0);const Bt=pm(Y),fn=Y.subTree;Y.subTree=Bt,g(fn,Bt,d(fn.el),z(fn),Y,le,de),be.el=Bt.el,at===null&&I$(Y,Bt.el),Be&&Fn(Be,le),(Dt=be.props&&be.props.onVnodeUpdated)&&Fn(()=>Hi(Dt,Ue,be,ct),le)}else{let be;const{el:Ne,props:Be}=W,{bm:Ue,m:ct,parent:at,root:Dt,type:Bt}=Y,fn=S2(W);da(Y,!1),Ue&&cl(Ue),!fn&&(be=Be&&Be.onVnodeBeforeMount)&&Hi(be,at,W),da(Y,!0);{Dt.ce&&Dt.ce._injectChildStyle(Bt);const Ft=Y.subTree=pm(Y);g(null,Ft,X,se,Y,le,de),W.el=Ft.el}if(ct&&Fn(ct,le),!fn&&(be=Be&&Be.onVnodeMounted)){const Ft=W;Fn(()=>Hi(be,at,Ft),le)}(W.shapeFlag&256||at&&S2(at.vnode)&&at.vnode.shapeFlag&256)&&Y.a&&Fn(Y.a,le),Y.isMounted=!0,W=X=se=null}};Y.scope.on();const _e=Y.effect=new pM(ge);Y.scope.off();const ve=Y.update=_e.run.bind(_e),$e=Y.job=_e.runIfDirty.bind(_e);$e.i=Y,$e.id=Y.uid,_e.scheduler=()=>ap($e),da(Y,!0),ve()},G=(Y,W,X)=>{W.component=Y;const se=Y.vnode.props;Y.vnode=W,Y.next=null,_$(Y,W.props,se,X),b$(Y,W.children,X),Z1(),im(Y),X1()},P=(Y,W,X,se,le,de,Te,ge,_e=!1)=>{const ve=Y&&Y.children,$e=Y?Y.shapeFlag:0,be=W.children,{patchFlag:Ne,shapeFlag:Be}=W;if(Ne>0){if(Ne&128){B(ve,be,X,se,le,de,Te,ge,_e);return}else if(Ne&256){F(ve,be,X,se,le,de,Te,ge,_e);return}}Be&8?($e&16&&pe(ve,le,de),be!==ve&&u(X,be)):$e&16?Be&16?B(ve,be,X,se,le,de,Te,ge,_e):pe(ve,le,de,!0):($e&8&&u(X,""),Be&16&&L(be,X,se,le,de,Te,ge,_e))},F=(Y,W,X,se,le,de,Te,ge,_e)=>{Y=Y||al,W=W||al;const ve=Y.length,$e=W.length,be=Math.min(ve,$e);let Ne;for(Ne=0;Ne$e?pe(Y,le,de,!0,!1,be):L(W,X,se,le,de,Te,ge,_e,be)},B=(Y,W,X,se,le,de,Te,ge,_e)=>{let ve=0;const $e=W.length;let be=Y.length-1,Ne=$e-1;for(;ve<=be&&ve<=Ne;){const Be=Y[ve],Ue=W[ve]=_e?k1(W[ve]):es(W[ve]);if(U1(Be,Ue))g(Be,Ue,X,null,le,de,Te,ge,_e);else break;ve++}for(;ve<=be&&ve<=Ne;){const Be=Y[be],Ue=W[Ne]=_e?k1(W[Ne]):es(W[Ne]);if(U1(Be,Ue))g(Be,Ue,X,null,le,de,Te,ge,_e);else break;be--,Ne--}if(ve>be){if(ve<=Ne){const Be=Ne+1,Ue=Be<$e?W[Be].el:se;for(;ve<=Ne;)g(null,W[ve]=_e?k1(W[ve]):es(W[ve]),X,Ue,le,de,Te,ge,_e),ve++}}else if(ve>Ne)for(;ve<=be;)ee(Y[ve],le,de,!0),ve++;else{const Be=ve,Ue=ve,ct=new Map;for(ve=Ue;ve<=Ne;ve++){const St=W[ve]=_e?k1(W[ve]):es(W[ve]);St.key!=null&&ct.set(St.key,ve)}let at,Dt=0;const Bt=Ne-Ue+1;let fn=!1,Ft=0;const vt=new Array(Bt);for(ve=0;ve=Bt){ee(St,le,de,!0);continue}let un;if(St.key!=null)un=ct.get(St.key);else for(at=Ue;at<=Ne;at++)if(vt[at-Ue]===0&&U1(St,W[at])){un=at;break}un===void 0?ee(St,le,de,!0):(vt[un-Ue]=ve+1,un>=Ft?Ft=un:fn=!0,g(St,W[un],X,null,le,de,Te,ge,_e),Dt++)}const Ut=fn?L$(vt):al;for(at=Ut.length-1,ve=Bt-1;ve>=0;ve--){const St=Ue+ve,un=W[St],rr=St+1<$e?W[St+1].el:se;vt[ve]===0?g(null,un,X,rr,le,de,Te,ge,_e):fn&&(at<0||ve!==Ut[at]?q(un,X,rr,2):at--)}}},q=(Y,W,X,se,le=null)=>{const{el:de,type:Te,transition:ge,children:_e,shapeFlag:ve}=Y;if(ve&6){q(Y.component.subTree,W,X,se);return}if(ve&128){Y.suspense.move(W,X,se);return}if(ve&64){Te.move(Y,W,X,fe);return}if(Te===xe){o(de,W,X);for(let be=0;be<_e.length;be++)q(_e[be],W,X,se);o(Y.anchor,W,X);return}if(Te===B6){v(Y,W,X);return}if(se!==2&&ve&1&&ge)if(se===0)ge.beforeEnter(de),o(de,W,X),Fn(()=>ge.enter(de),le);else{const{leave:be,delayLeave:Ne,afterLeave:Be}=ge,Ue=()=>o(de,W,X),ct=()=>{be(de,()=>{Ue(),Be&&Be()})};Ne?Ne(de,Ue,ct):ct()}else o(de,W,X)},ee=(Y,W,X,se=!1,le=!1)=>{const{type:de,props:Te,ref:ge,children:_e,dynamicChildren:ve,shapeFlag:$e,patchFlag:be,dirs:Ne,cacheIndex:Be}=Y;if(be===-2&&(le=!1),ge!=null&&of(ge,null,X,Y,!0),Be!=null&&(W.renderCache[Be]=void 0),$e&256){W.ctx.deactivate(Y);return}const Ue=$e&1&&Ne,ct=!S2(Y);let at;if(ct&&(at=Te&&Te.onVnodeBeforeUnmount)&&Hi(at,W,Y),$e&6)ue(Y.component,X,se);else{if($e&128){Y.suspense.unmount(X,se);return}Ue&&ua(Y,null,W,"beforeUnmount"),$e&64?Y.type.remove(Y,W,X,fe,se):ve&&!ve.hasOnce&&(de!==xe||be>0&&be&64)?pe(ve,W,X,!1,!0):(de===xe&&be&384||!le&&$e&16)&&pe(_e,W,X),se&&K(Y)}(ct&&(at=Te&&Te.onVnodeUnmounted)||Ue)&&Fn(()=>{at&&Hi(at,W,Y),Ue&&ua(Y,null,W,"unmounted")},X)},K=Y=>{const{type:W,el:X,anchor:se,transition:le}=Y;if(W===xe){j(X,se);return}if(W===B6){b(Y);return}const de=()=>{r(X),le&&!le.persisted&&le.afterLeave&&le.afterLeave()};if(Y.shapeFlag&1&&le&&!le.persisted){const{leave:Te,delayLeave:ge}=le,_e=()=>Te(X,de);ge?ge(Y.el,de,_e):_e()}else de()},j=(Y,W)=>{let X;for(;Y!==W;)X=f(Y),r(Y),Y=X;r(W)},ue=(Y,W,X)=>{const{bum:se,scope:le,job:de,subTree:Te,um:ge,m:_e,a:ve}=Y;d5(_e),d5(ve),se&&cl(se),le.stop(),de&&(de.flags|=8,ee(Te,Y,W,X)),ge&&Fn(ge,W),Fn(()=>{Y.isUnmounted=!0},W),W&&W.pendingBranch&&!W.isUnmounted&&Y.asyncDep&&!Y.asyncResolved&&Y.suspenseId===W.pendingId&&(W.deps--,W.deps===0&&W.resolve())},pe=(Y,W,X,se=!1,le=!1,de=0)=>{for(let Te=de;Te{if(Y.shapeFlag&6)return z(Y.component.subTree);if(Y.shapeFlag&128)return Y.suspense.next();const W=f(Y.anchor||Y.el),X=W&&W[VM];return X?f(X):W};let te=!1;const ae=(Y,W,X)=>{Y==null?W._vnode&&ee(W._vnode,null,null,!0):g(W._vnode||null,Y,W,null,null,null,X),W._vnode=Y,te||(te=!0,im(),HM(),te=!1)},fe={p:g,um:ee,m:q,r:K,mt:M,mc:L,pc:P,pbc:A,n:z,o:t};return{render:ae,hydrate:void 0,createApp:m$(ae)}}function I0({type:t,props:e},n){return n==="svg"&&t==="foreignObject"||n==="mathml"&&t==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:n}function da({effect:t,job:e},n){n?(t.flags|=32,e.flags|=4):(t.flags&=-33,e.flags&=-5)}function x$(t,e){return(!t||t&&!t.pendingBranch)&&e&&!e.persisted}function dp(t,e,n=!1){const o=t.children,r=e.children;if(nt(o)&&nt(r))for(let i=0;i>1,t[n[a]]0&&(e[o]=n[i-1]),n[i]=o)}}for(i=n.length,s=n[i-1];i-- >0;)n[i]=s,s=e[s];return n}function TR(t){const e=t.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:TR(e)}function d5(t){if(t)for(let e=0;eUi(C$);function $n(t,e,n){return fR(t,e,n)}function fR(t,e,n=rn){const{immediate:o,deep:r,flush:i,once:s}=n,a=qn({},n);let l;if(J5)if(i==="sync"){const f=A$();l=f.__watcherHandles||(f.__watcherHandles=[])}else if(!e||o)a.once=!0;else{const f=()=>{};return f.stop=rs,f.resume=rs,f.pause=rs,f}const c=nr;a.call=(f,T,h)=>$o(f,c,T,h);let u=!1;i==="post"?a.scheduler=f=>{Fn(f,c&&c.suspense)}:i!=="sync"&&(u=!0,a.scheduler=(f,T)=>{T?f():ap(f)}),a.augmentJob=f=>{e&&(f.flags|=4),u&&(f.flags|=2,c&&(f.id=c.uid,f.i=c))};const d=FP(t,e,a);return l&&l.push(d),d}function w$(t,e,n){const o=this.proxy,r=Tn(t)?t.includes(".")?pR(o,t):()=>o[t]:t.bind(o,o);let i;dt(e)?i=e:(i=e.handler,n=e);const s=Bc(this),a=fR(r,i.bind(o),n);return s(),a}function pR(t,e){const n=e.split(".");return()=>{let o=t;for(let r=0;re==="modelValue"||e==="model-value"?t.modelModifiers:t[`${e}Modifiers`]||t[`${Gi(e)}Modifiers`]||t[`${K1(e)}Modifiers`];function M$(t,e,...n){if(t.isUnmounted)return;const o=t.vnode.props||rn;let r=n;const i=e.startsWith("update:"),s=i&&O$(o,e.slice(7));s&&(s.trim&&(r=n.map(u=>Tn(u)?u.trim():u)),s.number&&(r=n.map(o5)));let a,l=o[a=C0(e)]||o[a=C0(Gi(e))];!l&&i&&(l=o[a=C0(K1(e))]),l&&$o(l,t,6,r);const c=o[a+"Once"];if(c){if(!t.emitted)t.emitted={};else if(t.emitted[a])return;t.emitted[a]=!0,$o(c,t,6,r)}}function hR(t,e,n=!1){const o=e.emitsCache,r=o.get(t);if(r!==void 0)return r;const i=t.emits;let s={},a=!1;if(!dt(t)){const l=c=>{const u=hR(c,e,!0);u&&(a=!0,qn(s,u))};!n&&e.mixins.length&&e.mixins.forEach(l),t.extends&&l(t.extends),t.mixins&&t.mixins.forEach(l)}return!i&&!a?(en(t)&&o.set(t,null),null):(nt(i)?i.forEach(l=>s[l]=null):qn(s,i),en(t)&&o.set(t,s),s)}function Z5(t,e){return!t||!$5(e)?!1:(e=e.slice(2).replace(/Once$/,""),jt(t,e[0].toLowerCase()+e.slice(1))||jt(t,K1(e))||jt(t,e))}function pm(t){const{type:e,vnode:n,proxy:o,withProxy:r,propsOptions:[i],slots:s,attrs:a,emit:l,render:c,renderCache:u,props:d,data:f,setupState:T,ctx:h,inheritAttrs:g}=t,Q=c5(t);let m,_;try{if(n.shapeFlag&4){const b=r||o,y=b;m=es(c.call(y,b,u,d,T,f,h)),_=a}else{const b=e;m=es(b.length>1?b(d,{attrs:a,slots:s,emit:l}):b(d,null)),_=e.props?a:R$(a)}}catch(b){fc.length=0,Y5(b,t,1),m=ne(cr)}let v=m;if(_&&g!==!1){const b=Object.keys(_),{shapeFlag:y}=v;b.length&&y&7&&(i&&b.some(Kf)&&(_=N$(_,i)),v=y1(v,_,!1,!0))}return n.dirs&&(v=y1(v,null,!1,!0),v.dirs=v.dirs?v.dirs.concat(n.dirs):n.dirs),n.transition&&W1(v,n.transition),m=v,c5(Q),m}const R$=t=>{let e;for(const n in t)(n==="class"||n==="style"||$5(n))&&((e||(e={}))[n]=t[n]);return e},N$=(t,e)=>{const n={};for(const o in t)(!Kf(o)||!(o.slice(9)in e))&&(n[o]=t[o]);return n};function D$(t,e,n){const{props:o,children:r,component:i}=t,{props:s,children:a,patchFlag:l}=e,c=i.emitsOptions;if(e.dirs||e.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return o?hm(o,s,c):!!s;if(l&8){const u=e.dynamicProps;for(let d=0;dt.__isSuspense;function k$(t,e){e&&e.pendingBranch?nt(t)?e.effects.push(...t):e.effects.push(t):GP(t)}const xe=Symbol.for("v-fgt"),X5=Symbol.for("v-txt"),cr=Symbol.for("v-cmt"),B6=Symbol.for("v-stc"),fc=[];let Rr=null;function N(t=!1){fc.push(Rr=t?null:[])}function H$(){fc.pop(),Rr=fc[fc.length-1]||null}let ml=1;function mm(t){ml+=t,t<0&&Rr&&(Rr.hasOnce=!0)}function mR(t){return t.dynamicChildren=ml>0?Rr||al:null,H$(),ml>0&&Rr&&Rr.push(t),t}function H(t,e,n,o,r,i){return mR(S(t,e,n,o,r,i,!0))}function ot(t,e,n,o,r){return mR(ne(t,e,n,o,r,!0))}function gl(t){return t?t.__v_isVNode===!0:!1}function U1(t,e){return t.type===e.type&&t.key===e.key}const gR=({key:t})=>t??null,F6=({ref:t,ref_key:e,ref_for:n})=>(typeof t=="number"&&(t=""+t),t!=null?Tn(t)||Pn(t)||dt(t)?{i:Un,r:t,k:e,f:!!n}:t:null);function S(t,e=null,n=null,o=0,r=null,i=t===xe?0:1,s=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&gR(e),ref:e&&F6(e),scopeId:$M,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:o,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Un};return a?(Tp(l,n),i&128&&t.normalize(l)):n&&(l.shapeFlag|=Tn(n)?8:16),ml>0&&!s&&Rr&&(l.patchFlag>0||i&6)&&l.patchFlag!==32&&Rr.push(l),l}const ne=P$;function P$(t,e=null,n=null,o=0,r=null,i=!1){if((!t||t===ZM)&&(t=cr),gl(t)){const a=y1(t,e,!0);return n&&Tp(a,n),ml>0&&!i&&Rr&&(a.shapeFlag&6?Rr[Rr.indexOf(t)]=a:Rr.push(a)),a.patchFlag=-2,a}if(z$(t)&&(t=t.__vccOpts),e){e=$$(e);let{class:a,style:l}=e;a&&!Tn(a)&&(e.class=Ee(a)),en(l)&&(ip(l)&&!nt(l)&&(l=qn({},l)),e.style=an(l))}const s=Tn(t)?1:T5(t)?128:BM(t)?64:en(t)?4:dt(t)?2:0;return S(t,e,n,o,r,s,i,!0)}function $$(t){return t?ip(t)||oR(t)?qn({},t):t:null}function y1(t,e,n=!1,o=!1){const{props:r,ref:i,patchFlag:s,children:a,transition:l}=t,c=e?_R(r||{},e):r,u={__v_isVNode:!0,__v_skip:!0,type:t.type,props:c,key:c&&gR(c),ref:e&&e.ref?n&&i?nt(i)?i.concat(F6(e)):[i,F6(e)]:F6(e):i,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:a,target:t.target,targetStart:t.targetStart,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==xe?s===-1?16:s|16:s,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:l,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&y1(t.ssContent),ssFallback:t.ssFallback&&y1(t.ssFallback),el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return l&&o&&W1(u,l.clone(u)),u}function Re(t=" ",e=0){return ne(X5,null,t,e)}function tr(t,e){const n=ne(B6,null,t);return n.staticCount=e,n}function Z(t="",e=!1){return e?(N(),ot(cr,null,t)):ne(cr,null,t)}function es(t){return t==null||typeof t=="boolean"?ne(cr):nt(t)?ne(xe,null,t.slice()):gl(t)?k1(t):ne(X5,null,String(t))}function k1(t){return t.el===null&&t.patchFlag!==-1||t.memo?t:y1(t)}function Tp(t,e){let n=0;const{shapeFlag:o}=t;if(e==null)e=null;else if(nt(e))n=16;else if(typeof e=="object")if(o&65){const r=e.default;r&&(r._c&&(r._d=!1),Tp(t,r()),r._c&&(r._d=!0));return}else{n=32;const r=e._;!r&&!oR(e)?e._ctx=Un:r===3&&Un&&(Un.slots._===1?e._=1:(e._=2,t.patchFlag|=1024))}else dt(e)?(e={default:e,_ctx:Un},n=32):(e=String(e),o&64?(n=16,e=[Re(e)]):n=8);t.children=e,t.shapeFlag|=n}function _R(...t){const e={};for(let n=0;nnr||Un;let f5,uf;{const t=lM(),e=(n,o)=>{let r;return(r=t[n])||(r=t[n]=[]),r.push(o),i=>{r.length>1?r.forEach(s=>s(i)):r[0](i)}};f5=e("__VUE_INSTANCE_SETTERS__",n=>nr=n),uf=e("__VUE_SSR_SETTERS__",n=>J5=n)}const Bc=t=>{const e=nr;return f5(t),t.scope.on(),()=>{t.scope.off(),f5(e)}},gm=()=>{nr&&nr.scope.off(),f5(null)};function QR(t){return t.vnode.shapeFlag&4}let J5=!1;function U$(t,e=!1,n=!1){e&&uf(e);const{props:o,children:r}=t.vnode,i=QR(t);g$(t,o,i,e),y$(t,r,n);const s=i?q$(t,e):void 0;return e&&uf(!1),s}function q$(t,e){const n=t.type;t.accessCache=Object.create(null),t.proxy=new Proxy(t.ctx,c$);const{setup:o}=n;if(o){const r=t.setupContext=o.length>1?j$(t):null,i=Bc(t);Z1();const s=$c(o,t,0,[t.props,r]);if(X1(),i(),iM(s)){if(S2(t)||YM(t),s.then(gm,gm),e)return s.then(a=>{_m(t,a)}).catch(a=>{Y5(a,t,0)});t.asyncDep=s}else _m(t,s)}else vR(t)}function _m(t,e,n){dt(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:en(e)&&(t.setupState=NM(e)),vR(t)}function vR(t,e,n){const o=t.type;t.render||(t.render=o.render||rs);{const r=Bc(t);Z1();try{u$(t)}finally{X1(),r()}}}const G$={get(t,e){return Tr(t,"get",""),t[e]}};function j$(t){const e=n=>{t.exposed=n||{}};return{attrs:new Proxy(t.attrs,G$),slots:t.slots,emit:t.emit,expose:e}}function e0(t){return t.exposed?t.exposeProxy||(t.exposeProxy=new Proxy(NM(z5(t.exposed)),{get(e,n){if(n in e)return e[n];if(n in Tc)return Tc[n](t)},has(e,n){return n in e||n in Tc}})):t.proxy}function df(t,e=!0){return dt(t)?t.displayName||t.name:t.name||e&&t.__name}function z$(t){return dt(t)&&"__vccOpts"in t}const je=(t,e)=>VP(t,e,J5);function pp(t,e,n){const o=arguments.length;return o===2?en(e)&&!nt(e)?gl(e)?ne(t,null,[e]):ne(t,e):ne(t,null,e):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&gl(n)&&(n=[n]),ne(t,e,n))}function Y$(t,e,n,o){const r=n[o];if(r&&W$(r,t))return r;const i=e();return i.memo=t.slice(),i.cacheIndex=o,n[o]=i}function W$(t,e){const n=t.memo;if(n.length!=e.length)return!1;for(let o=0;o0&&Rr&&Rr.push(t),!0}const K$="3.5.10";/** +**/function $c(t,e,n,o){try{return o?t(...o):t()}catch(r){Y5(r,e,n)}}function $o(t,e,n,o){if(dt(t)){const r=$c(t,e,n,o);return r&&iM(r)&&r.catch(i=>{Y5(i,e,n)}),r}if(nt(t)){const r=[];for(let i=0;i>>1,r=Mr[o],i=xc(r);i=xc(n)?Mr.push(t):Mr.splice(qP(e),0,t),t.flags|=1,kM()}}function kM(){!Sc&&!nf&&(nf=!0,sp=IM.then(PM))}function GP(t){nt(t)?dl.push(...t):D1&&t.id===-1?D1.splice(tl+1,0,t):t.flags&1||(dl.push(t),t.flags|=1),kM()}function im(t,e,n=Sc?Xo+1:0){for(;nxc(n)-xc(o));if(dl.length=0,D1){D1.push(...e);return}for(D1=e,tl=0;tlt.id==null?t.flags&2?-1:1/0:t.id;function PM(t){nf=!1,Sc=!0;try{for(Xo=0;Xo{o._d&&mm(-1);const i=c5(e);let s;try{s=t(...r)}finally{c5(i),o._d&&mm(1)}return s};return o._n=!0,o._c=!0,o._d=!0,o}function Le(t,e){if(Un===null)return t;const n=e0(Un),o=t.dirs||(t.dirs=[]);for(let r=0;rt.__isTeleport,dc=t=>t&&(t.disabled||t.disabled===""),jP=t=>t&&(t.defer||t.defer===""),om=t=>typeof SVGElement<"u"&&t instanceof SVGElement,sm=t=>typeof MathMLElement=="function"&&t instanceof MathMLElement,rf=(t,e)=>{const n=t&&t.to;return Tn(n)?e?e(n):null:n},zP={name:"Teleport",__isTeleport:!0,process(t,e,n,o,r,i,s,a,l,c){const{mc:u,pc:d,pbc:f,o:{insert:T,querySelector:h,createText:g,createComment:Q}}=c,m=dc(e.props);let{shapeFlag:_,children:v,dynamicChildren:b}=e;if(t==null){const y=e.el=g(""),E=e.anchor=g("");T(y,n,o),T(E,n,o);const x=(C,A)=>{_&16&&(r&&r.isCE&&(r.ce._teleportTarget=C),u(v,C,A,r,i,s,a,l))},L=()=>{const C=e.target=rf(e.props,h),A=FM(C,e,g,T);C&&(s!=="svg"&&om(C)?s="svg":s!=="mathml"&&sm(C)&&(s="mathml"),m||(x(C,A),V6(e)))};m&&(x(n,E),V6(e)),jP(e.props)?Fn(L,i):L()}else{e.el=t.el,e.targetStart=t.targetStart;const y=e.anchor=t.anchor,E=e.target=t.target,x=e.targetAnchor=t.targetAnchor,L=dc(t.props),C=L?n:E,A=L?y:x;if(s==="svg"||om(E)?s="svg":(s==="mathml"||sm(E))&&(s="mathml"),b?(f(t.dynamicChildren,b,C,r,i,s,a),dp(t,e,!0)):l||d(t,e,C,A,r,i,s,a,!1),m)L?e.props&&t.props&&e.props.to!==t.props.to&&(e.props.to=t.props.to):g6(e,n,y,c,1);else if((e.props&&e.props.to)!==(t.props&&t.props.to)){const O=e.target=rf(e.props,h);O&&g6(e,O,null,c,0)}else L&&g6(e,E,x,c,1);V6(e)}},remove(t,e,n,{um:o,o:{remove:r}},i){const{shapeFlag:s,children:a,anchor:l,targetStart:c,targetAnchor:u,target:d,props:f}=t;if(d&&(r(c),r(u)),i&&r(l),s&16){const T=i||!dc(f);for(let h=0;h{t.isMounted=!0}),D2(()=>{t.isUnmounting=!0}),t}const Mi=[Function,Array],qM={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Mi,onEnter:Mi,onAfterEnter:Mi,onEnterCancelled:Mi,onBeforeLeave:Mi,onLeave:Mi,onAfterLeave:Mi,onLeaveCancelled:Mi,onBeforeAppear:Mi,onAppear:Mi,onAfterAppear:Mi,onAppearCancelled:Mi},GM=t=>{const e=t.subTree;return e.component?GM(e.component):e},KP={name:"BaseTransition",props:qM,setup(t,{slots:e}){const n=fp(),o=UM();return()=>{const r=e.default&&lp(e.default(),!0);if(!r||!r.length)return;const i=jM(r),s=Pt(t),{mode:a}=s;if(o.isLeaving)return R0(i);const l=am(i);if(!l)return R0(i);let c=Lc(l,s,o,n,f=>c=f);l.type!==cr&&W1(l,c);const u=n.subTree,d=u&&am(u);if(d&&d.type!==cr&&!U1(l,d)&&GM(n).type!==cr){const f=Lc(d,s,o,n);if(W1(d,f),a==="out-in"&&l.type!==cr)return o.isLeaving=!0,f.afterLeave=()=>{o.isLeaving=!1,n.job.flags&8||n.update(),delete f.afterLeave},R0(i);a==="in-out"&&l.type!==cr&&(f.delayLeave=(T,h,g)=>{const Q=zM(o,d);Q[String(d.key)]=d,T[I1]=()=>{h(),T[I1]=void 0,delete c.delayedLeave},c.delayedLeave=g})}return i}}};function jM(t){let e=t[0];if(t.length>1){for(const n of t)if(n.type!==cr){e=n;break}}return e}const ZP=KP;function zM(t,e){const{leavingVNodes:n}=t;let o=n.get(e.type);return o||(o=Object.create(null),n.set(e.type,o)),o}function Lc(t,e,n,o,r){const{appear:i,mode:s,persisted:a=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:T,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:Q,onAppear:m,onAfterAppear:_,onAppearCancelled:v}=e,b=String(t.key),y=zM(n,t),E=(C,A)=>{C&&$o(C,o,9,A)},x=(C,A)=>{const O=A[1];E(C,A),nt(C)?C.every(R=>R.length<=1)&&O():C.length<=1&&O()},L={mode:s,persisted:a,beforeEnter(C){let A=l;if(!n.isMounted)if(i)A=Q||l;else return;C[I1]&&C[I1](!0);const O=y[b];O&&U1(t,O)&&O.el[I1]&&O.el[I1](),E(A,[C])},enter(C){let A=c,O=u,R=d;if(!n.isMounted)if(i)A=m||c,O=_||u,R=v||d;else return;let I=!1;const M=C[_6]=$=>{I||(I=!0,$?E(R,[C]):E(O,[C]),L.delayedLeave&&L.delayedLeave(),C[_6]=void 0)};A?x(A,[C,M]):M()},leave(C,A){const O=String(t.key);if(C[_6]&&C[_6](!0),n.isUnmounting)return A();E(f,[C]);let R=!1;const I=C[I1]=M=>{R||(R=!0,A(),M?E(g,[C]):E(h,[C]),C[I1]=void 0,y[O]===t&&delete y[O])};y[O]=t,T?x(T,[C,I]):I()},clone(C){const A=Lc(C,e,n,o,r);return r&&r(A),A}};return L}function R0(t){if(W5(t))return t=y1(t),t.children=null,t}function am(t){if(!W5(t))return BM(t.type)&&t.children?jM(t.children):t;const{shapeFlag:e,children:n}=t;if(n){if(e&16)return n[0];if(e&32&&dt(n.default))return n.default()}}function W1(t,e){t.shapeFlag&6&&t.component?(t.transition=e,W1(t.component.subTree,e)):t.shapeFlag&128?(t.ssContent.transition=e.clone(t.ssContent),t.ssFallback.transition=e.clone(t.ssFallback)):t.transition=e}function lp(t,e=!1,n){let o=[],r=0;for(let i=0;i1)for(let i=0;iof(h,e&&(nt(e)?e[g]:e),n,o,r));return}if(S2(o)&&!r)return;const i=o.shapeFlag&4?e0(o.component):o.el,s=r?null:i,{i:a,r:l}=t,c=e&&e.r,u=a.refs===rn?a.refs={}:a.refs,d=a.setupState,f=Pt(d),T=d===rn?()=>!1:h=>jt(f,h);if(c!=null&&c!==l&&(Tn(c)?(u[c]=null,T(c)&&(d[c]=null)):Pn(c)&&(c.value=null)),dt(l))$c(l,a,12,[s,u]);else{const h=Tn(l),g=Pn(l);if(h||g){const Q=()=>{if(t.f){const m=h?T(l)?d[l]:u[l]:l.value;r?nt(m)&&Zf(m,i):nt(m)?m.includes(i)||m.push(i):h?(u[l]=[i],T(l)&&(d[l]=u[l])):(l.value=[i],t.k&&(u[t.k]=l.value))}else h?(u[l]=s,T(l)&&(d[l]=s)):g&&(l.value=s,t.k&&(u[t.k]=s))};s?(Q.id=-1,Fn(Q,n)):Q()}}}const S2=t=>!!t.type.__asyncLoader,W5=t=>t.type.__isKeepAlive,XP={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(t,{slots:e}){const n=fp(),o=n.ctx;if(!o.renderer)return()=>{const _=e.default&&e.default();return _&&_.length===1?_[0]:_};const r=new Map,i=new Set;let s=null;const a=n.suspense,{renderer:{p:l,m:c,um:u,o:{createElement:d}}}=o,f=d("div");o.activate=(_,v,b,y,E)=>{const x=_.component;c(_,v,b,0,a),l(x.vnode,_,v,b,x,a,y,_.slotScopeIds,E),Fn(()=>{x.isDeactivated=!1,x.a&&cl(x.a);const L=_.props&&_.props.onVnodeMounted;L&&Hi(L,x.parent,_)},a)},o.deactivate=_=>{const v=_.component;d5(v.m),d5(v.a),c(_,f,null,1,a),Fn(()=>{v.da&&cl(v.da);const b=_.props&&_.props.onVnodeUnmounted;b&&Hi(b,v.parent,_),v.isDeactivated=!0},a)};function T(_){N0(_),u(_,n,a,!0)}function h(_){r.forEach((v,b)=>{const y=df(v.type);y&&!_(y)&&g(b)})}function g(_){const v=r.get(_);v&&(!s||!U1(v,s))?T(v):s&&N0(s),r.delete(_),i.delete(_)}$n(()=>[t.include,t.exclude],([_,v])=>{_&&h(b=>sc(_,b)),v&&h(b=>!sc(v,b))},{flush:"post",deep:!0});let Q=null;const m=()=>{Q!=null&&(T5(n.subTree.type)?Fn(()=>{r.set(Q,Q6(n.subTree))},n.subTree.suspense):r.set(Q,Q6(n.subTree)))};return Hr(m),N2(m),D2(()=>{r.forEach(_=>{const{subTree:v,suspense:b}=n,y=Q6(v);if(_.type===y.type&&_.key===y.key){N0(y);const E=y.component.da;E&&Fn(E,b);return}T(_)})}),()=>{if(Q=null,!e.default)return s=null;const _=e.default(),v=_[0];if(_.length>1)return s=null,_;if(!gl(v)||!(v.shapeFlag&4)&&!(v.shapeFlag&128))return s=null,v;let b=Q6(v);if(b.type===cr)return s=null,b;const y=b.type,E=df(S2(b)?b.type.__asyncResolved||{}:y),{include:x,exclude:L,max:C}=t;if(x&&(!E||!sc(x,E))||L&&E&&sc(L,E))return b.shapeFlag&=-257,s=b,v;const A=b.key==null?y:b.key,O=r.get(A);return b.el&&(b=y1(b),v.shapeFlag&128&&(v.ssContent=b)),Q=A,O?(b.el=O.el,b.component=O.component,b.transition&&W1(b,b.transition),b.shapeFlag|=512,i.delete(A),i.add(A)):(i.add(A),C&&i.size>parseInt(C,10)&&g(i.values().next().value)),b.shapeFlag|=256,s=b,T5(v.type)?v:b}}},JP=XP;function sc(t,e){return nt(t)?t.some(n=>sc(n,e)):Tn(t)?t.split(",").includes(e):YH(t)?(t.lastIndex=0,t.test(e)):!1}function e$(t,e){WM(t,"a",e)}function t$(t,e){WM(t,"da",e)}function WM(t,e,n=nr){const o=t.__wdc||(t.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return t()});if(K5(e,o,n),n){let r=n.parent;for(;r&&r.parent;)W5(r.parent.vnode)&&n$(o,e,n,r),r=r.parent}}function n$(t,e,n,o){const r=K5(e,t,o,!0);cp(()=>{Zf(o[e],r)},n)}function N0(t){t.shapeFlag&=-257,t.shapeFlag&=-513}function Q6(t){return t.shapeFlag&128?t.ssContent:t}function K5(t,e,n=nr,o=!1){if(n){const r=n[t]||(n[t]=[]),i=e.__weh||(e.__weh=(...s)=>{Z1();const a=Bc(n),l=$o(e,n,t,s);return a(),X1(),l});return o?r.unshift(i):r.push(i),i}}const E1=t=>(e,n=nr)=>{(!J5||t==="sp")&&K5(t,(...o)=>e(...o),n)},r$=E1("bm"),Hr=E1("m"),i$=E1("bu"),N2=E1("u"),D2=E1("bum"),cp=E1("um"),o$=E1("sp"),s$=E1("rtg"),a$=E1("rtc");function l$(t,e=nr){K5("ec",t,e)}const KM="components";function ze(t,e){return XM(KM,t,!0,e)||t}const ZM=Symbol.for("v-ndc");function Vc(t){return Tn(t)?XM(KM,t,!1)||t:t||ZM}function XM(t,e,n=!0,o=!1){const r=Un||nr;if(r){const i=r.type;{const a=df(i,!1);if(a&&(a===e||a===Gi(e)||a===B5(Gi(e))))return i}const s=lm(r[t]||i[t],e)||lm(r.appContext[t],e);return!s&&o?i:s}}function lm(t,e){return t&&(t[e]||t[Gi(e)]||t[B5(Gi(e))])}function Pe(t,e,n,o){let r;const i=n,s=nt(t);if(s||Tn(t)){const a=s&&ul(t);let l=!1;a&&(l=!Fi(t),t=U5(t)),r=new Array(t.length);for(let c=0,u=t.length;ce(a,l,void 0,i));else{const a=Object.keys(t);r=new Array(a.length);for(let l=0,c=a.length;lgl(e)?!(e.type===cr||e.type===xe&&!JM(e.children)):!0)?t:null}const sf=t=>t?QR(t)?e0(t):sf(t.parent):null,Tc=qn(Object.create(null),{$:t=>t,$el:t=>t.vnode.el,$data:t=>t.data,$props:t=>t.props,$attrs:t=>t.attrs,$slots:t=>t.slots,$refs:t=>t.refs,$parent:t=>sf(t.parent),$root:t=>sf(t.root),$host:t=>t.ce,$emit:t=>t.emit,$options:t=>tR(t),$forceUpdate:t=>t.f||(t.f=()=>{ap(t.update)}),$nextTick:t=>t.n||(t.n=Se.bind(t.proxy)),$watch:t=>w$.bind(t)}),D0=(t,e)=>t!==rn&&!t.__isScriptSetup&&jt(t,e),c$={get({_:t},e){if(e==="__v_skip")return!0;const{ctx:n,setupState:o,data:r,props:i,accessCache:s,type:a,appContext:l}=t;let c;if(e[0]!=="$"){const T=s[e];if(T!==void 0)switch(T){case 1:return o[e];case 2:return r[e];case 4:return n[e];case 3:return i[e]}else{if(D0(o,e))return s[e]=1,o[e];if(r!==rn&&jt(r,e))return s[e]=2,r[e];if((c=t.propsOptions[0])&&jt(c,e))return s[e]=3,i[e];if(n!==rn&&jt(n,e))return s[e]=4,n[e];af&&(s[e]=0)}}const u=Tc[e];let d,f;if(u)return e==="$attrs"&&Tr(t.attrs,"get",""),u(t);if((d=a.__cssModules)&&(d=d[e]))return d;if(n!==rn&&jt(n,e))return s[e]=4,n[e];if(f=l.config.globalProperties,jt(f,e))return f[e]},set({_:t},e,n){const{data:o,setupState:r,ctx:i}=t;return D0(r,e)?(r[e]=n,!0):o!==rn&&jt(o,e)?(o[e]=n,!0):jt(t.props,e)||e[0]==="$"&&e.slice(1)in t?!1:(i[e]=n,!0)},has({_:{data:t,setupState:e,accessCache:n,ctx:o,appContext:r,propsOptions:i}},s){let a;return!!n[s]||t!==rn&&jt(t,s)||D0(e,s)||(a=i[0])&&jt(a,s)||jt(o,s)||jt(Tc,s)||jt(r.config.globalProperties,s)},defineProperty(t,e,n){return n.get!=null?t._.accessCache[e]=0:jt(n,"value")&&this.set(t,e,n.value,null),Reflect.defineProperty(t,e,n)}};function cm(t){return nt(t)?t.reduce((e,n)=>(e[n]=null,e),{}):t}let af=!0;function u$(t){const e=tR(t),n=t.proxy,o=t.ctx;af=!1,e.beforeCreate&&um(e.beforeCreate,t,"bc");const{data:r,computed:i,methods:s,watch:a,provide:l,inject:c,created:u,beforeMount:d,mounted:f,beforeUpdate:T,updated:h,activated:g,deactivated:Q,beforeDestroy:m,beforeUnmount:_,destroyed:v,unmounted:b,render:y,renderTracked:E,renderTriggered:x,errorCaptured:L,serverPrefetch:C,expose:A,inheritAttrs:O,components:R,directives:I,filters:M}=e;if(c&&d$(c,o,null),s)for(const G in s){const P=s[G];dt(P)&&(o[G]=P.bind(n))}if(r){const G=r.call(n,n);en(G)&&(t.data=fr(G))}if(af=!0,i)for(const G in i){const P=i[G],F=dt(P)?P.bind(n,n):dt(P.get)?P.get.bind(n,n):rs,B=!dt(P)&&dt(P.set)?P.set.bind(n):rs,q=je({get:F,set:B});Object.defineProperty(o,G,{enumerable:!0,configurable:!0,get:()=>q.value,set:ee=>q.value=ee})}if(a)for(const G in a)eR(a[G],o,n,G);if(l){const G=dt(l)?l.call(n):l;Reflect.ownKeys(G).forEach(P=>{fl(P,G[P])})}u&&um(u,t,"c");function U(G,P){nt(P)?P.forEach(F=>G(F.bind(n))):P&&G(P.bind(n))}if(U(r$,d),U(Hr,f),U(i$,T),U(N2,h),U(e$,g),U(t$,Q),U(l$,L),U(a$,E),U(s$,x),U(D2,_),U(cp,b),U(o$,C),nt(A))if(A.length){const G=t.exposed||(t.exposed={});A.forEach(P=>{Object.defineProperty(G,P,{get:()=>n[P],set:F=>n[P]=F})})}else t.exposed||(t.exposed={});y&&t.render===rs&&(t.render=y),O!=null&&(t.inheritAttrs=O),R&&(t.components=R),I&&(t.directives=I),C&&YM(t)}function d$(t,e,n=rs){nt(t)&&(t=lf(t));for(const o in t){const r=t[o];let i;en(r)?"default"in r?i=Ui(r.from||o,r.default,!0):i=Ui(r.from||o):i=Ui(r),Pn(i)?Object.defineProperty(e,o,{enumerable:!0,configurable:!0,get:()=>i.value,set:s=>i.value=s}):e[o]=i}}function um(t,e,n){$o(nt(t)?t.map(o=>o.bind(e.proxy)):t.bind(e.proxy),e,n)}function eR(t,e,n,o){let r=o.includes(".")?pR(n,o):()=>n[o];if(Tn(t)){const i=e[t];dt(i)&&$n(r,i)}else if(dt(t))$n(r,t.bind(n));else if(en(t))if(nt(t))t.forEach(i=>eR(i,e,n,o));else{const i=dt(t.handler)?t.handler.bind(n):e[t.handler];dt(i)&&$n(r,i,t)}}function tR(t){const e=t.type,{mixins:n,extends:o}=e,{mixins:r,optionsCache:i,config:{optionMergeStrategies:s}}=t.appContext,a=i.get(e);let l;return a?l=a:!r.length&&!n&&!o?l=e:(l={},r.length&&r.forEach(c=>u5(l,c,s,!0)),u5(l,e,s)),en(e)&&i.set(e,l),l}function u5(t,e,n,o=!1){const{mixins:r,extends:i}=e;i&&u5(t,i,n,!0),r&&r.forEach(s=>u5(t,s,n,!0));for(const s in e)if(!(o&&s==="expose")){const a=T$[s]||n&&n[s];t[s]=a?a(t[s],e[s]):e[s]}return t}const T$={data:dm,props:Tm,emits:Tm,methods:ac,computed:ac,beforeCreate:wr,created:wr,beforeMount:wr,mounted:wr,beforeUpdate:wr,updated:wr,beforeDestroy:wr,beforeUnmount:wr,destroyed:wr,unmounted:wr,activated:wr,deactivated:wr,errorCaptured:wr,serverPrefetch:wr,components:ac,directives:ac,watch:p$,provide:dm,inject:f$};function dm(t,e){return e?t?function(){return qn(dt(t)?t.call(this,this):t,dt(e)?e.call(this,this):e)}:e:t}function f$(t,e){return ac(lf(t),lf(e))}function lf(t){if(nt(t)){const e={};for(let n=0;n1)return n&&dt(e)?e.call(o&&o.proxy):e}}const rR={},iR=()=>Object.create(rR),oR=t=>Object.getPrototypeOf(t)===rR;function g$(t,e,n,o=!1){const r={},i=iR();t.propsDefaults=Object.create(null),sR(t,e,r,i);for(const s in t.propsOptions[0])s in r||(r[s]=void 0);n?t.props=o?r:OM(r):t.type.props?t.props=r:t.props=i,t.attrs=i}function _$(t,e,n,o){const{props:r,attrs:i,vnode:{patchFlag:s}}=t,a=Pt(r),[l]=t.propsOptions;let c=!1;if((o||s>0)&&!(s&16)){if(s&8){const u=t.vnode.dynamicProps;for(let d=0;d{l=!0;const[f,T]=aR(d,e,!0);qn(s,f),T&&a.push(...T)};!n&&e.mixins.length&&e.mixins.forEach(u),t.extends&&u(t.extends),t.mixins&&t.mixins.forEach(u)}if(!i&&!l)return en(t)&&o.set(t,al),al;if(nt(i))for(let u=0;ut[0]==="_"||t==="$stable",up=t=>nt(t)?t.map(es):[es(t)],v$=(t,e,n)=>{if(e._n)return e;const o=Ge((...r)=>up(e(...r)),n);return o._c=!1,o},cR=(t,e,n)=>{const o=t._ctx;for(const r in t){if(lR(r))continue;const i=t[r];if(dt(i))e[r]=v$(r,i,o);else if(i!=null){const s=up(i);e[r]=()=>s}}},uR=(t,e)=>{const n=up(e);t.slots.default=()=>n},dR=(t,e,n)=>{for(const o in e)(n||o!=="_")&&(t[o]=e[o])},y$=(t,e,n)=>{const o=t.slots=iR();if(t.vnode.shapeFlag&32){const r=e._;r?(dR(o,e,n),n&&aM(o,"_",r,!0)):cR(e,o)}else e&&uR(t,e)},b$=(t,e,n)=>{const{vnode:o,slots:r}=t;let i=!0,s=rn;if(o.shapeFlag&32){const a=e._;a?n&&a===1?i=!1:dR(r,e,n):(i=!e.$stable,cR(e,r)),s=e}else e&&(uR(t,e),s={default:1});if(i)for(const a in r)!lR(a)&&s[a]==null&&delete r[a]},Fn=k$;function E$(t){return S$(t)}function S$(t,e){const n=lM();n.__VUE__=!0;const{insert:o,remove:r,patchProp:i,createElement:s,createText:a,createComment:l,setText:c,setElementText:u,parentNode:d,nextSibling:f,setScopeId:T=rs,insertStaticContent:h}=t,g=(Y,W,X,se=null,le=null,de=null,Te=void 0,ge=null,_e=!!W.dynamicChildren)=>{if(Y===W)return;Y&&!U1(Y,W)&&(se=z(Y),ee(Y,le,de,!0),Y=null),W.patchFlag===-2&&(_e=!1,W.dynamicChildren=null);const{type:ve,ref:$e,shapeFlag:be}=W;switch(ve){case X5:Q(Y,W,X,se);break;case cr:m(Y,W,X,se);break;case B6:Y==null&&_(W,X,se,Te);break;case xe:R(Y,W,X,se,le,de,Te,ge,_e);break;default:be&1?y(Y,W,X,se,le,de,Te,ge,_e):be&6?I(Y,W,X,se,le,de,Te,ge,_e):(be&64||be&128)&&ve.process(Y,W,X,se,le,de,Te,ge,_e,fe)}$e!=null&&le&&of($e,Y&&Y.ref,de,W||Y,!W)},Q=(Y,W,X,se)=>{if(Y==null)o(W.el=a(W.children),X,se);else{const le=W.el=Y.el;W.children!==Y.children&&c(le,W.children)}},m=(Y,W,X,se)=>{Y==null?o(W.el=l(W.children||""),X,se):W.el=Y.el},_=(Y,W,X,se)=>{[Y.el,Y.anchor]=h(Y.children,W,X,se,Y.el,Y.anchor)},v=({el:Y,anchor:W},X,se)=>{let le;for(;Y&&Y!==W;)le=f(Y),o(Y,X,se),Y=le;o(W,X,se)},b=({el:Y,anchor:W})=>{let X;for(;Y&&Y!==W;)X=f(Y),r(Y),Y=X;r(W)},y=(Y,W,X,se,le,de,Te,ge,_e)=>{W.type==="svg"?Te="svg":W.type==="math"&&(Te="mathml"),Y==null?E(W,X,se,le,de,Te,ge,_e):C(Y,W,le,de,Te,ge,_e)},E=(Y,W,X,se,le,de,Te,ge)=>{let _e,ve;const{props:$e,shapeFlag:be,transition:Ne,dirs:Be}=Y;if(_e=Y.el=s(Y.type,de,$e&&$e.is,$e),be&8?u(_e,Y.children):be&16&&L(Y.children,_e,null,se,le,I0(Y,de),Te,ge),Be&&ua(Y,null,se,"created"),x(_e,Y,Y.scopeId,Te,se),$e){for(const ct in $e)ct!=="value"&&!uc(ct)&&i(_e,ct,null,$e[ct],de,se);"value"in $e&&i(_e,"value",null,$e.value,de),(ve=$e.onVnodeBeforeMount)&&Hi(ve,se,Y)}Be&&ua(Y,null,se,"beforeMount");const Ue=x$(le,Ne);Ue&&Ne.beforeEnter(_e),o(_e,W,X),((ve=$e&&$e.onVnodeMounted)||Ue||Be)&&Fn(()=>{ve&&Hi(ve,se,Y),Ue&&Ne.enter(_e),Be&&ua(Y,null,se,"mounted")},le)},x=(Y,W,X,se,le)=>{if(X&&T(Y,X),se)for(let de=0;de{for(let ve=_e;ve{const ge=W.el=Y.el;let{patchFlag:_e,dynamicChildren:ve,dirs:$e}=W;_e|=Y.patchFlag&16;const be=Y.props||rn,Ne=W.props||rn;let Be;if(X&&da(X,!1),(Be=Ne.onVnodeBeforeUpdate)&&Hi(Be,X,W,Y),$e&&ua(W,Y,X,"beforeUpdate"),X&&da(X,!0),(be.innerHTML&&Ne.innerHTML==null||be.textContent&&Ne.textContent==null)&&u(ge,""),ve?A(Y.dynamicChildren,ve,ge,X,se,I0(W,le),de):Te||P(Y,W,ge,null,X,se,I0(W,le),de,!1),_e>0){if(_e&16)O(ge,be,Ne,X,le);else if(_e&2&&be.class!==Ne.class&&i(ge,"class",null,Ne.class,le),_e&4&&i(ge,"style",be.style,Ne.style,le),_e&8){const Ue=W.dynamicProps;for(let ct=0;ct{Be&&Hi(Be,X,W,Y),$e&&ua(W,Y,X,"updated")},se)},A=(Y,W,X,se,le,de,Te)=>{for(let ge=0;ge{if(W!==X){if(W!==rn)for(const de in W)!uc(de)&&!(de in X)&&i(Y,de,W[de],null,le,se);for(const de in X){if(uc(de))continue;const Te=X[de],ge=W[de];Te!==ge&&de!=="value"&&i(Y,de,ge,Te,le,se)}"value"in X&&i(Y,"value",W.value,X.value,le)}},R=(Y,W,X,se,le,de,Te,ge,_e)=>{const ve=W.el=Y?Y.el:a(""),$e=W.anchor=Y?Y.anchor:a("");let{patchFlag:be,dynamicChildren:Ne,slotScopeIds:Be}=W;Be&&(ge=ge?ge.concat(Be):Be),Y==null?(o(ve,X,se),o($e,X,se),L(W.children||[],X,$e,le,de,Te,ge,_e)):be>0&&be&64&&Ne&&Y.dynamicChildren?(A(Y.dynamicChildren,Ne,X,le,de,Te,ge),(W.key!=null||le&&W===le.subTree)&&dp(Y,W,!0)):P(Y,W,X,$e,le,de,Te,ge,_e)},I=(Y,W,X,se,le,de,Te,ge,_e)=>{W.slotScopeIds=ge,Y==null?W.shapeFlag&512?le.ctx.activate(W,X,se,Te,_e):M(W,X,se,le,de,Te,_e):$(Y,W,_e)},M=(Y,W,X,se,le,de,Te)=>{const ge=Y.component=F$(Y,se,le);if(W5(Y)&&(ge.ctx.renderer=fe),U$(ge,!1,Te),ge.asyncDep){if(le&&le.registerDep(ge,U,Te),!Y.el){const _e=ge.subTree=ne(cr);m(null,_e,W,X)}}else U(ge,Y,W,X,le,de,Te)},$=(Y,W,X)=>{const se=W.component=Y.component;if(D$(Y,W,X))if(se.asyncDep&&!se.asyncResolved){G(se,W,X);return}else se.next=W,se.update();else W.el=Y.el,se.vnode=W},U=(Y,W,X,se,le,de,Te)=>{const ge=()=>{if(Y.isMounted){let{next:be,bu:Ne,u:Be,parent:Ue,vnode:ct}=Y;{const Ft=TR(Y);if(Ft){be&&(be.el=ct.el,G(Y,be,Te)),Ft.asyncDep.then(()=>{Y.isUnmounted||ge()});return}}let at=be,Dt;da(Y,!1),be?(be.el=ct.el,G(Y,be,Te)):be=ct,Ne&&cl(Ne),(Dt=be.props&&be.props.onVnodeBeforeUpdate)&&Hi(Dt,Ue,be,ct),da(Y,!0);const Bt=pm(Y),fn=Y.subTree;Y.subTree=Bt,g(fn,Bt,d(fn.el),z(fn),Y,le,de),be.el=Bt.el,at===null&&I$(Y,Bt.el),Be&&Fn(Be,le),(Dt=be.props&&be.props.onVnodeUpdated)&&Fn(()=>Hi(Dt,Ue,be,ct),le)}else{let be;const{el:Ne,props:Be}=W,{bm:Ue,m:ct,parent:at,root:Dt,type:Bt}=Y,fn=S2(W);da(Y,!1),Ue&&cl(Ue),!fn&&(be=Be&&Be.onVnodeBeforeMount)&&Hi(be,at,W),da(Y,!0);{Dt.ce&&Dt.ce._injectChildStyle(Bt);const Ft=Y.subTree=pm(Y);g(null,Ft,X,se,Y,le,de),W.el=Ft.el}if(ct&&Fn(ct,le),!fn&&(be=Be&&Be.onVnodeMounted)){const Ft=W;Fn(()=>Hi(be,at,Ft),le)}(W.shapeFlag&256||at&&S2(at.vnode)&&at.vnode.shapeFlag&256)&&Y.a&&Fn(Y.a,le),Y.isMounted=!0,W=X=se=null}};Y.scope.on();const _e=Y.effect=new pM(ge);Y.scope.off();const ve=Y.update=_e.run.bind(_e),$e=Y.job=_e.runIfDirty.bind(_e);$e.i=Y,$e.id=Y.uid,_e.scheduler=()=>ap($e),da(Y,!0),ve()},G=(Y,W,X)=>{W.component=Y;const se=Y.vnode.props;Y.vnode=W,Y.next=null,_$(Y,W.props,se,X),b$(Y,W.children,X),Z1(),im(Y),X1()},P=(Y,W,X,se,le,de,Te,ge,_e=!1)=>{const ve=Y&&Y.children,$e=Y?Y.shapeFlag:0,be=W.children,{patchFlag:Ne,shapeFlag:Be}=W;if(Ne>0){if(Ne&128){B(ve,be,X,se,le,de,Te,ge,_e);return}else if(Ne&256){F(ve,be,X,se,le,de,Te,ge,_e);return}}Be&8?($e&16&&pe(ve,le,de),be!==ve&&u(X,be)):$e&16?Be&16?B(ve,be,X,se,le,de,Te,ge,_e):pe(ve,le,de,!0):($e&8&&u(X,""),Be&16&&L(be,X,se,le,de,Te,ge,_e))},F=(Y,W,X,se,le,de,Te,ge,_e)=>{Y=Y||al,W=W||al;const ve=Y.length,$e=W.length,be=Math.min(ve,$e);let Ne;for(Ne=0;Ne$e?pe(Y,le,de,!0,!1,be):L(W,X,se,le,de,Te,ge,_e,be)},B=(Y,W,X,se,le,de,Te,ge,_e)=>{let ve=0;const $e=W.length;let be=Y.length-1,Ne=$e-1;for(;ve<=be&&ve<=Ne;){const Be=Y[ve],Ue=W[ve]=_e?k1(W[ve]):es(W[ve]);if(U1(Be,Ue))g(Be,Ue,X,null,le,de,Te,ge,_e);else break;ve++}for(;ve<=be&&ve<=Ne;){const Be=Y[be],Ue=W[Ne]=_e?k1(W[Ne]):es(W[Ne]);if(U1(Be,Ue))g(Be,Ue,X,null,le,de,Te,ge,_e);else break;be--,Ne--}if(ve>be){if(ve<=Ne){const Be=Ne+1,Ue=Be<$e?W[Be].el:se;for(;ve<=Ne;)g(null,W[ve]=_e?k1(W[ve]):es(W[ve]),X,Ue,le,de,Te,ge,_e),ve++}}else if(ve>Ne)for(;ve<=be;)ee(Y[ve],le,de,!0),ve++;else{const Be=ve,Ue=ve,ct=new Map;for(ve=Ue;ve<=Ne;ve++){const St=W[ve]=_e?k1(W[ve]):es(W[ve]);St.key!=null&&ct.set(St.key,ve)}let at,Dt=0;const Bt=Ne-Ue+1;let fn=!1,Ft=0;const vt=new Array(Bt);for(ve=0;ve=Bt){ee(St,le,de,!0);continue}let un;if(St.key!=null)un=ct.get(St.key);else for(at=Ue;at<=Ne;at++)if(vt[at-Ue]===0&&U1(St,W[at])){un=at;break}un===void 0?ee(St,le,de,!0):(vt[un-Ue]=ve+1,un>=Ft?Ft=un:fn=!0,g(St,W[un],X,null,le,de,Te,ge,_e),Dt++)}const Ut=fn?L$(vt):al;for(at=Ut.length-1,ve=Bt-1;ve>=0;ve--){const St=Ue+ve,un=W[St],rr=St+1<$e?W[St+1].el:se;vt[ve]===0?g(null,un,X,rr,le,de,Te,ge,_e):fn&&(at<0||ve!==Ut[at]?q(un,X,rr,2):at--)}}},q=(Y,W,X,se,le=null)=>{const{el:de,type:Te,transition:ge,children:_e,shapeFlag:ve}=Y;if(ve&6){q(Y.component.subTree,W,X,se);return}if(ve&128){Y.suspense.move(W,X,se);return}if(ve&64){Te.move(Y,W,X,fe);return}if(Te===xe){o(de,W,X);for(let be=0;be<_e.length;be++)q(_e[be],W,X,se);o(Y.anchor,W,X);return}if(Te===B6){v(Y,W,X);return}if(se!==2&&ve&1&&ge)if(se===0)ge.beforeEnter(de),o(de,W,X),Fn(()=>ge.enter(de),le);else{const{leave:be,delayLeave:Ne,afterLeave:Be}=ge,Ue=()=>o(de,W,X),ct=()=>{be(de,()=>{Ue(),Be&&Be()})};Ne?Ne(de,Ue,ct):ct()}else o(de,W,X)},ee=(Y,W,X,se=!1,le=!1)=>{const{type:de,props:Te,ref:ge,children:_e,dynamicChildren:ve,shapeFlag:$e,patchFlag:be,dirs:Ne,cacheIndex:Be}=Y;if(be===-2&&(le=!1),ge!=null&&of(ge,null,X,Y,!0),Be!=null&&(W.renderCache[Be]=void 0),$e&256){W.ctx.deactivate(Y);return}const Ue=$e&1&&Ne,ct=!S2(Y);let at;if(ct&&(at=Te&&Te.onVnodeBeforeUnmount)&&Hi(at,W,Y),$e&6)ue(Y.component,X,se);else{if($e&128){Y.suspense.unmount(X,se);return}Ue&&ua(Y,null,W,"beforeUnmount"),$e&64?Y.type.remove(Y,W,X,fe,se):ve&&!ve.hasOnce&&(de!==xe||be>0&&be&64)?pe(ve,W,X,!1,!0):(de===xe&&be&384||!le&&$e&16)&&pe(_e,W,X),se&&K(Y)}(ct&&(at=Te&&Te.onVnodeUnmounted)||Ue)&&Fn(()=>{at&&Hi(at,W,Y),Ue&&ua(Y,null,W,"unmounted")},X)},K=Y=>{const{type:W,el:X,anchor:se,transition:le}=Y;if(W===xe){j(X,se);return}if(W===B6){b(Y);return}const de=()=>{r(X),le&&!le.persisted&&le.afterLeave&&le.afterLeave()};if(Y.shapeFlag&1&&le&&!le.persisted){const{leave:Te,delayLeave:ge}=le,_e=()=>Te(X,de);ge?ge(Y.el,de,_e):_e()}else de()},j=(Y,W)=>{let X;for(;Y!==W;)X=f(Y),r(Y),Y=X;r(W)},ue=(Y,W,X)=>{const{bum:se,scope:le,job:de,subTree:Te,um:ge,m:_e,a:ve}=Y;d5(_e),d5(ve),se&&cl(se),le.stop(),de&&(de.flags|=8,ee(Te,Y,W,X)),ge&&Fn(ge,W),Fn(()=>{Y.isUnmounted=!0},W),W&&W.pendingBranch&&!W.isUnmounted&&Y.asyncDep&&!Y.asyncResolved&&Y.suspenseId===W.pendingId&&(W.deps--,W.deps===0&&W.resolve())},pe=(Y,W,X,se=!1,le=!1,de=0)=>{for(let Te=de;Te{if(Y.shapeFlag&6)return z(Y.component.subTree);if(Y.shapeFlag&128)return Y.suspense.next();const W=f(Y.anchor||Y.el),X=W&&W[VM];return X?f(X):W};let te=!1;const ae=(Y,W,X)=>{Y==null?W._vnode&&ee(W._vnode,null,null,!0):g(W._vnode||null,Y,W,null,null,null,X),W._vnode=Y,te||(te=!0,im(),HM(),te=!1)},fe={p:g,um:ee,m:q,r:K,mt:M,mc:L,pc:P,pbc:A,n:z,o:t};return{render:ae,hydrate:void 0,createApp:m$(ae)}}function I0({type:t,props:e},n){return n==="svg"&&t==="foreignObject"||n==="mathml"&&t==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:n}function da({effect:t,job:e},n){n?(t.flags|=32,e.flags|=4):(t.flags&=-33,e.flags&=-5)}function x$(t,e){return(!t||t&&!t.pendingBranch)&&e&&!e.persisted}function dp(t,e,n=!1){const o=t.children,r=e.children;if(nt(o)&&nt(r))for(let i=0;i>1,t[n[a]]0&&(e[o]=n[i-1]),n[i]=o)}}for(i=n.length,s=n[i-1];i-- >0;)n[i]=s,s=e[s];return n}function TR(t){const e=t.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:TR(e)}function d5(t){if(t)for(let e=0;eUi(C$);function $n(t,e,n){return fR(t,e,n)}function fR(t,e,n=rn){const{immediate:o,deep:r,flush:i,once:s}=n,a=qn({},n);let l;if(J5)if(i==="sync"){const f=A$();l=f.__watcherHandles||(f.__watcherHandles=[])}else if(!e||o)a.once=!0;else{const f=()=>{};return f.stop=rs,f.resume=rs,f.pause=rs,f}const c=nr;a.call=(f,T,h)=>$o(f,c,T,h);let u=!1;i==="post"?a.scheduler=f=>{Fn(f,c&&c.suspense)}:i!=="sync"&&(u=!0,a.scheduler=(f,T)=>{T?f():ap(f)}),a.augmentJob=f=>{e&&(f.flags|=4),u&&(f.flags|=2,c&&(f.id=c.uid,f.i=c))};const d=FP(t,e,a);return l&&l.push(d),d}function w$(t,e,n){const o=this.proxy,r=Tn(t)?t.includes(".")?pR(o,t):()=>o[t]:t.bind(o,o);let i;dt(e)?i=e:(i=e.handler,n=e);const s=Bc(this),a=fR(r,i.bind(o),n);return s(),a}function pR(t,e){const n=e.split(".");return()=>{let o=t;for(let r=0;re==="modelValue"||e==="model-value"?t.modelModifiers:t[`${e}Modifiers`]||t[`${Gi(e)}Modifiers`]||t[`${K1(e)}Modifiers`];function M$(t,e,...n){if(t.isUnmounted)return;const o=t.vnode.props||rn;let r=n;const i=e.startsWith("update:"),s=i&&O$(o,e.slice(7));s&&(s.trim&&(r=n.map(u=>Tn(u)?u.trim():u)),s.number&&(r=n.map(o5)));let a,l=o[a=C0(e)]||o[a=C0(Gi(e))];!l&&i&&(l=o[a=C0(K1(e))]),l&&$o(l,t,6,r);const c=o[a+"Once"];if(c){if(!t.emitted)t.emitted={};else if(t.emitted[a])return;t.emitted[a]=!0,$o(c,t,6,r)}}function hR(t,e,n=!1){const o=e.emitsCache,r=o.get(t);if(r!==void 0)return r;const i=t.emits;let s={},a=!1;if(!dt(t)){const l=c=>{const u=hR(c,e,!0);u&&(a=!0,qn(s,u))};!n&&e.mixins.length&&e.mixins.forEach(l),t.extends&&l(t.extends),t.mixins&&t.mixins.forEach(l)}return!i&&!a?(en(t)&&o.set(t,null),null):(nt(i)?i.forEach(l=>s[l]=null):qn(s,i),en(t)&&o.set(t,s),s)}function Z5(t,e){return!t||!$5(e)?!1:(e=e.slice(2).replace(/Once$/,""),jt(t,e[0].toLowerCase()+e.slice(1))||jt(t,K1(e))||jt(t,e))}function pm(t){const{type:e,vnode:n,proxy:o,withProxy:r,propsOptions:[i],slots:s,attrs:a,emit:l,render:c,renderCache:u,props:d,data:f,setupState:T,ctx:h,inheritAttrs:g}=t,Q=c5(t);let m,_;try{if(n.shapeFlag&4){const b=r||o,y=b;m=es(c.call(y,b,u,d,T,f,h)),_=a}else{const b=e;m=es(b.length>1?b(d,{attrs:a,slots:s,emit:l}):b(d,null)),_=e.props?a:R$(a)}}catch(b){fc.length=0,Y5(b,t,1),m=ne(cr)}let v=m;if(_&&g!==!1){const b=Object.keys(_),{shapeFlag:y}=v;b.length&&y&7&&(i&&b.some(Kf)&&(_=N$(_,i)),v=y1(v,_,!1,!0))}return n.dirs&&(v=y1(v,null,!1,!0),v.dirs=v.dirs?v.dirs.concat(n.dirs):n.dirs),n.transition&&W1(v,n.transition),m=v,c5(Q),m}const R$=t=>{let e;for(const n in t)(n==="class"||n==="style"||$5(n))&&((e||(e={}))[n]=t[n]);return e},N$=(t,e)=>{const n={};for(const o in t)(!Kf(o)||!(o.slice(9)in e))&&(n[o]=t[o]);return n};function D$(t,e,n){const{props:o,children:r,component:i}=t,{props:s,children:a,patchFlag:l}=e,c=i.emitsOptions;if(e.dirs||e.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return o?hm(o,s,c):!!s;if(l&8){const u=e.dynamicProps;for(let d=0;dt.__isSuspense;function k$(t,e){e&&e.pendingBranch?nt(t)?e.effects.push(...t):e.effects.push(t):GP(t)}const xe=Symbol.for("v-fgt"),X5=Symbol.for("v-txt"),cr=Symbol.for("v-cmt"),B6=Symbol.for("v-stc"),fc=[];let Rr=null;function N(t=!1){fc.push(Rr=t?null:[])}function H$(){fc.pop(),Rr=fc[fc.length-1]||null}let ml=1;function mm(t){ml+=t,t<0&&Rr&&(Rr.hasOnce=!0)}function mR(t){return t.dynamicChildren=ml>0?Rr||al:null,H$(),ml>0&&Rr&&Rr.push(t),t}function H(t,e,n,o,r,i){return mR(S(t,e,n,o,r,i,!0))}function ot(t,e,n,o,r){return mR(ne(t,e,n,o,r,!0))}function gl(t){return t?t.__v_isVNode===!0:!1}function U1(t,e){return t.type===e.type&&t.key===e.key}const gR=({key:t})=>t??null,F6=({ref:t,ref_key:e,ref_for:n})=>(typeof t=="number"&&(t=""+t),t!=null?Tn(t)||Pn(t)||dt(t)?{i:Un,r:t,k:e,f:!!n}:t:null);function S(t,e=null,n=null,o=0,r=null,i=t===xe?0:1,s=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&gR(e),ref:e&&F6(e),scopeId:$M,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:o,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Un};return a?(Tp(l,n),i&128&&t.normalize(l)):n&&(l.shapeFlag|=Tn(n)?8:16),ml>0&&!s&&Rr&&(l.patchFlag>0||i&6)&&l.patchFlag!==32&&Rr.push(l),l}const ne=P$;function P$(t,e=null,n=null,o=0,r=null,i=!1){if((!t||t===ZM)&&(t=cr),gl(t)){const a=y1(t,e,!0);return n&&Tp(a,n),ml>0&&!i&&Rr&&(a.shapeFlag&6?Rr[Rr.indexOf(t)]=a:Rr.push(a)),a.patchFlag=-2,a}if(z$(t)&&(t=t.__vccOpts),e){e=$$(e);let{class:a,style:l}=e;a&&!Tn(a)&&(e.class=Ee(a)),en(l)&&(ip(l)&&!nt(l)&&(l=qn({},l)),e.style=an(l))}const s=Tn(t)?1:T5(t)?128:BM(t)?64:en(t)?4:dt(t)?2:0;return S(t,e,n,o,r,s,i,!0)}function $$(t){return t?ip(t)||oR(t)?qn({},t):t:null}function y1(t,e,n=!1,o=!1){const{props:r,ref:i,patchFlag:s,children:a,transition:l}=t,c=e?_R(r||{},e):r,u={__v_isVNode:!0,__v_skip:!0,type:t.type,props:c,key:c&&gR(c),ref:e&&e.ref?n&&i?nt(i)?i.concat(F6(e)):[i,F6(e)]:F6(e):i,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:a,target:t.target,targetStart:t.targetStart,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==xe?s===-1?16:s|16:s,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:l,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&y1(t.ssContent),ssFallback:t.ssFallback&&y1(t.ssFallback),el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return l&&o&&W1(u,l.clone(u)),u}function Me(t=" ",e=0){return ne(X5,null,t,e)}function tr(t,e){const n=ne(B6,null,t);return n.staticCount=e,n}function Z(t="",e=!1){return e?(N(),ot(cr,null,t)):ne(cr,null,t)}function es(t){return t==null||typeof t=="boolean"?ne(cr):nt(t)?ne(xe,null,t.slice()):gl(t)?k1(t):ne(X5,null,String(t))}function k1(t){return t.el===null&&t.patchFlag!==-1||t.memo?t:y1(t)}function Tp(t,e){let n=0;const{shapeFlag:o}=t;if(e==null)e=null;else if(nt(e))n=16;else if(typeof e=="object")if(o&65){const r=e.default;r&&(r._c&&(r._d=!1),Tp(t,r()),r._c&&(r._d=!0));return}else{n=32;const r=e._;!r&&!oR(e)?e._ctx=Un:r===3&&Un&&(Un.slots._===1?e._=1:(e._=2,t.patchFlag|=1024))}else dt(e)?(e={default:e,_ctx:Un},n=32):(e=String(e),o&64?(n=16,e=[Me(e)]):n=8);t.children=e,t.shapeFlag|=n}function _R(...t){const e={};for(let n=0;nnr||Un;let f5,uf;{const t=lM(),e=(n,o)=>{let r;return(r=t[n])||(r=t[n]=[]),r.push(o),i=>{r.length>1?r.forEach(s=>s(i)):r[0](i)}};f5=e("__VUE_INSTANCE_SETTERS__",n=>nr=n),uf=e("__VUE_SSR_SETTERS__",n=>J5=n)}const Bc=t=>{const e=nr;return f5(t),t.scope.on(),()=>{t.scope.off(),f5(e)}},gm=()=>{nr&&nr.scope.off(),f5(null)};function QR(t){return t.vnode.shapeFlag&4}let J5=!1;function U$(t,e=!1,n=!1){e&&uf(e);const{props:o,children:r}=t.vnode,i=QR(t);g$(t,o,i,e),y$(t,r,n);const s=i?q$(t,e):void 0;return e&&uf(!1),s}function q$(t,e){const n=t.type;t.accessCache=Object.create(null),t.proxy=new Proxy(t.ctx,c$);const{setup:o}=n;if(o){const r=t.setupContext=o.length>1?j$(t):null,i=Bc(t);Z1();const s=$c(o,t,0,[t.props,r]);if(X1(),i(),iM(s)){if(S2(t)||YM(t),s.then(gm,gm),e)return s.then(a=>{_m(t,a)}).catch(a=>{Y5(a,t,0)});t.asyncDep=s}else _m(t,s)}else vR(t)}function _m(t,e,n){dt(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:en(e)&&(t.setupState=NM(e)),vR(t)}function vR(t,e,n){const o=t.type;t.render||(t.render=o.render||rs);{const r=Bc(t);Z1();try{u$(t)}finally{X1(),r()}}}const G$={get(t,e){return Tr(t,"get",""),t[e]}};function j$(t){const e=n=>{t.exposed=n||{}};return{attrs:new Proxy(t.attrs,G$),slots:t.slots,emit:t.emit,expose:e}}function e0(t){return t.exposed?t.exposeProxy||(t.exposeProxy=new Proxy(NM(z5(t.exposed)),{get(e,n){if(n in e)return e[n];if(n in Tc)return Tc[n](t)},has(e,n){return n in e||n in Tc}})):t.proxy}function df(t,e=!0){return dt(t)?t.displayName||t.name:t.name||e&&t.__name}function z$(t){return dt(t)&&"__vccOpts"in t}const je=(t,e)=>VP(t,e,J5);function pp(t,e,n){const o=arguments.length;return o===2?en(e)&&!nt(e)?gl(e)?ne(t,null,[e]):ne(t,e):ne(t,null,e):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&gl(n)&&(n=[n]),ne(t,e,n))}function Y$(t,e,n,o){const r=n[o];if(r&&W$(r,t))return r;const i=e();return i.memo=t.slice(),i.cacheIndex=o,n[o]=i}function W$(t,e){const n=t.memo;if(n.length!=e.length)return!1;for(let o=0;o0&&Rr&&Rr.push(t),!0}const K$="3.5.10";/** * @vue/runtime-dom v3.5.10 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT @@ -24,11 +24,11 @@ var qH=Object.defineProperty;var GH=(t,e,n)=>e in t?qH(t,e,{enumerable:!0,config `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...n){const o=new this(e);return n.forEach(r=>o.set(r)),o}static accessor(e){const o=(this[Gm]=this[Gm]={accessors:{}}).accessors,r=this.prototype;function i(s){const a=Xl(s);o[a]||(TF(r,s),o[a]=!0)}return me.isArray(e)?e.forEach(i):i(e),this}};Ur.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);me.reduceDescriptors(Ur.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(o){this[n]=o}}});me.freezeMethods(Ur);function B0(t,e){const n=this||Uc,o=e||n,r=Ur.from(o.headers);let i=o.data;return me.forEach(t,function(a){i=a.call(n,i,r.normalize(),e?e.status:void 0)}),r.normalize(),i}function rN(t){return!!(t&&t.__CANCEL__)}function Hl(t,e,n){mt.call(this,t??"canceled",mt.ERR_CANCELED,e,n),this.name="CanceledError"}me.inherits(Hl,mt,{__CANCEL__:!0});function iN(t,e,n){const o=n.config.validateStatus;!n.status||!o||o(n.status)?t(n):e(new mt("Request failed with status code "+n.status,[mt.ERR_BAD_REQUEST,mt.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function fF(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function pF(t,e){t=t||10;const n=new Array(t),o=new Array(t);let r=0,i=0,s;return e=e!==void 0?e:1e3,function(l){const c=Date.now(),u=o[i];s||(s=c),n[r]=l,o[r]=c;let d=i,f=0;for(;d!==r;)f+=n[d++],d=d%t;if(r=(r+1)%t,r===i&&(i=(i+1)%t),c-s{n=u,r=null,i&&(clearTimeout(i),i=null),t.apply(null,c)};return[(...c)=>{const u=Date.now(),d=u-n;d>=o?s(c,u):(r=c,i||(i=setTimeout(()=>{i=null,s(r)},o-d)))},()=>r&&s(r)]}const g5=(t,e,n=3)=>{let o=0;const r=pF(50,250);return hF(i=>{const s=i.loaded,a=i.lengthComputable?i.total:void 0,l=s-o,c=r(l),u=s<=a;o=s;const d={loaded:s,total:a,progress:a?s/a:void 0,bytes:l,rate:c||void 0,estimated:c&&a&&u?(a-s)/c:void 0,event:i,lengthComputable:a!=null,[e?"download":"upload"]:!0};t(d)},n)},jm=(t,e)=>{const n=t!=null;return[o=>e[0]({lengthComputable:n,total:t,loaded:o}),e[1]]},zm=t=>(...e)=>me.asap(()=>t(...e)),mF=ur.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,ur.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(ur.origin),ur.navigator&&/(msie|trident)/i.test(ur.navigator.userAgent)):()=>!0,gF=ur.hasStandardBrowserEnv?{write(t,e,n,o,r,i){const s=[t+"="+encodeURIComponent(e)];me.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),me.isString(o)&&s.push("path="+o),me.isString(r)&&s.push("domain="+r),i===!0&&s.push("secure"),document.cookie=s.join("; ")},read(t){const e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function _F(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function QF(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function oN(t,e,n){let o=!_F(e);return t&&o||n==!1?QF(t,e):e}const Ym=t=>t instanceof Ur?{...t}:t;function O2(t,e){e=e||{};const n={};function o(c,u,d,f){return me.isPlainObject(c)&&me.isPlainObject(u)?me.merge.call({caseless:f},c,u):me.isPlainObject(u)?me.merge({},u):me.isArray(u)?u.slice():u}function r(c,u,d,f){if(me.isUndefined(u)){if(!me.isUndefined(c))return o(void 0,c,d,f)}else return o(c,u,d,f)}function i(c,u){if(!me.isUndefined(u))return o(void 0,u)}function s(c,u){if(me.isUndefined(u)){if(!me.isUndefined(c))return o(void 0,c)}else return o(void 0,u)}function a(c,u,d){if(d in e)return o(c,u);if(d in t)return o(void 0,c)}const l={url:i,method:i,data:i,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:a,headers:(c,u,d)=>r(Ym(c),Ym(u),d,!0)};return me.forEach(Object.keys(Object.assign({},t,e)),function(u){const d=l[u]||r,f=d(t[u],e[u],u);me.isUndefined(f)&&d!==a||(n[u]=f)}),n}const sN=t=>{const e=O2({},t);let{data:n,withXSRFToken:o,xsrfHeaderName:r,xsrfCookieName:i,headers:s,auth:a}=e;e.headers=s=Ur.from(s),e.url=eN(oN(e.baseURL,e.url),t.params,t.paramsSerializer),a&&s.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):"")));let l;if(me.isFormData(n)){if(ur.hasStandardBrowserEnv||ur.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if((l=s.getContentType())!==!1){const[c,...u]=l?l.split(";").map(d=>d.trim()).filter(Boolean):[];s.setContentType([c||"multipart/form-data",...u].join("; "))}}if(ur.hasStandardBrowserEnv&&(o&&me.isFunction(o)&&(o=o(e)),o||o!==!1&&mF(e.url))){const c=r&&i&&gF.read(i);c&&s.set(r,c)}return e},vF=typeof XMLHttpRequest<"u",yF=vF&&function(t){return new Promise(function(n,o){const r=sN(t);let i=r.data;const s=Ur.from(r.headers).normalize();let{responseType:a,onUploadProgress:l,onDownloadProgress:c}=r,u,d,f,T,h;function g(){T&&T(),h&&h(),r.cancelToken&&r.cancelToken.unsubscribe(u),r.signal&&r.signal.removeEventListener("abort",u)}let Q=new XMLHttpRequest;Q.open(r.method.toUpperCase(),r.url,!0),Q.timeout=r.timeout;function m(){if(!Q)return;const v=Ur.from("getAllResponseHeaders"in Q&&Q.getAllResponseHeaders()),y={data:!a||a==="text"||a==="json"?Q.responseText:Q.response,status:Q.status,statusText:Q.statusText,headers:v,config:t,request:Q};iN(function(x){n(x),g()},function(x){o(x),g()},y),Q=null}"onloadend"in Q?Q.onloadend=m:Q.onreadystatechange=function(){!Q||Q.readyState!==4||Q.status===0&&!(Q.responseURL&&Q.responseURL.indexOf("file:")===0)||setTimeout(m)},Q.onabort=function(){Q&&(o(new mt("Request aborted",mt.ECONNABORTED,t,Q)),Q=null)},Q.onerror=function(){o(new mt("Network Error",mt.ERR_NETWORK,t,Q)),Q=null},Q.ontimeout=function(){let b=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const y=r.transitional||tN;r.timeoutErrorMessage&&(b=r.timeoutErrorMessage),o(new mt(b,y.clarifyTimeoutError?mt.ETIMEDOUT:mt.ECONNABORTED,t,Q)),Q=null},i===void 0&&s.setContentType(null),"setRequestHeader"in Q&&me.forEach(s.toJSON(),function(b,y){Q.setRequestHeader(y,b)}),me.isUndefined(r.withCredentials)||(Q.withCredentials=!!r.withCredentials),a&&a!=="json"&&(Q.responseType=r.responseType),c&&([f,h]=g5(c,!0),Q.addEventListener("progress",f)),l&&Q.upload&&([d,T]=g5(l),Q.upload.addEventListener("progress",d),Q.upload.addEventListener("loadend",T)),(r.cancelToken||r.signal)&&(u=v=>{Q&&(o(!v||v.type?new Hl(null,t,Q):v),Q.abort(),Q=null)},r.cancelToken&&r.cancelToken.subscribe(u),r.signal&&(r.signal.aborted?u():r.signal.addEventListener("abort",u)));const _=fF(r.url);if(_&&ur.protocols.indexOf(_)===-1){o(new mt("Unsupported protocol "+_+":",mt.ERR_BAD_REQUEST,t));return}Q.send(i||null)})},bF=(t,e)=>{const{length:n}=t=t?t.filter(Boolean):[];if(e||n){let o=new AbortController,r;const i=function(c){if(!r){r=!0,a();const u=c instanceof Error?c:this.reason;o.abort(u instanceof mt?u:new Hl(u instanceof Error?u.message:u))}};let s=e&&setTimeout(()=>{s=null,i(new mt(`timeout ${e} of ms exceeded`,mt.ETIMEDOUT))},e);const a=()=>{t&&(s&&clearTimeout(s),s=null,t.forEach(c=>{c.unsubscribe?c.unsubscribe(i):c.removeEventListener("abort",i)}),t=null)};t.forEach(c=>c.addEventListener("abort",i));const{signal:l}=o;return l.unsubscribe=()=>me.asap(a),l}},EF=function*(t,e){let n=t.byteLength;if(n{const r=SF(t,e);let i=0,s,a=l=>{s||(s=!0,o&&o(l))};return new ReadableStream({async pull(l){try{const{done:c,value:u}=await r.next();if(c){a(),l.close();return}let d=u.byteLength;if(n){let f=i+=d;n(f)}l.enqueue(new Uint8Array(u))}catch(c){throw a(c),c}},cancel(l){return a(l),r.return()}},{highWaterMark:2})},s0=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",aN=s0&&typeof ReadableStream=="function",LF=s0&&(typeof TextEncoder=="function"?(t=>e=>t.encode(e))(new TextEncoder):async t=>new Uint8Array(await new Response(t).arrayBuffer())),lN=(t,...e)=>{try{return!!t(...e)}catch{return!1}},CF=aN&&lN(()=>{let t=!1;const e=new Request(ur.origin,{body:new ReadableStream,method:"POST",get duplex(){return t=!0,"half"}}).headers.has("Content-Type");return t&&!e}),Km=64*1024,_f=aN&&lN(()=>me.isReadableStream(new Response("").body)),_5={stream:_f&&(t=>t.body)};s0&&(t=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!_5[e]&&(_5[e]=me.isFunction(t[e])?n=>n[e]():(n,o)=>{throw new mt(`Response type '${e}' is not supported`,mt.ERR_NOT_SUPPORT,o)})})})(new Response);const AF=async t=>{if(t==null)return 0;if(me.isBlob(t))return t.size;if(me.isSpecCompliantForm(t))return(await new Request(ur.origin,{method:"POST",body:t}).arrayBuffer()).byteLength;if(me.isArrayBufferView(t)||me.isArrayBuffer(t))return t.byteLength;if(me.isURLSearchParams(t)&&(t=t+""),me.isString(t))return(await LF(t)).byteLength},wF=async(t,e)=>{const n=me.toFiniteNumber(t.getContentLength());return n??AF(e)},OF=s0&&(async t=>{let{url:e,method:n,data:o,signal:r,cancelToken:i,timeout:s,onDownloadProgress:a,onUploadProgress:l,responseType:c,headers:u,withCredentials:d="same-origin",fetchOptions:f}=sN(t);c=c?(c+"").toLowerCase():"text";let T=bF([r,i&&i.toAbortSignal()],s),h;const g=T&&T.unsubscribe&&(()=>{T.unsubscribe()});let Q;try{if(l&&CF&&n!=="get"&&n!=="head"&&(Q=await wF(u,o))!==0){let y=new Request(e,{method:"POST",body:o,duplex:"half"}),E;if(me.isFormData(o)&&(E=y.headers.get("content-type"))&&u.setContentType(E),y.body){const[x,L]=jm(Q,g5(zm(l)));o=Wm(y.body,Km,x,L)}}me.isString(d)||(d=d?"include":"omit");const m="credentials"in Request.prototype;h=new Request(e,{...f,signal:T,method:n.toUpperCase(),headers:u.normalize().toJSON(),body:o,duplex:"half",credentials:m?d:void 0});let _=await fetch(h);const v=_f&&(c==="stream"||c==="response");if(_f&&(a||v&&g)){const y={};["status","statusText","headers"].forEach(C=>{y[C]=_[C]});const E=me.toFiniteNumber(_.headers.get("content-length")),[x,L]=a&&jm(E,g5(zm(a),!0))||[];_=new Response(Wm(_.body,Km,x,()=>{L&&L(),g&&g()}),y)}c=c||"text";let b=await _5[me.findKey(_5,c)||"text"](_,t);return!v&&g&&g(),await new Promise((y,E)=>{iN(y,E,{data:b,headers:Ur.from(_.headers),status:_.status,statusText:_.statusText,config:t,request:h})})}catch(m){throw g&&g(),m&&m.name==="TypeError"&&/fetch/i.test(m.message)?Object.assign(new mt("Network Error",mt.ERR_NETWORK,t,h),{cause:m.cause||m}):mt.from(m,m&&m.code,t,h)}}),Qf={http:GB,xhr:yF,fetch:OF};me.forEach(Qf,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});const Zm=t=>`- ${t}`,MF=t=>me.isFunction(t)||t===null||t===!1,cN={getAdapter:t=>{t=me.isArray(t)?t:[t];const{length:e}=t;let n,o;const r={};for(let i=0;i`adapter ${a} `+(l===!1?"is not supported by the environment":"is not available in the build"));let s=e?i.length>1?`since : `+i.map(Zm).join(` `):" "+Zm(i[0]):"as no adapter specified";throw new mt("There is no suitable adapter to dispatch the request "+s,"ERR_NOT_SUPPORT")}return o},adapters:Qf};function F0(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new Hl(null,t)}function Xm(t){return F0(t),t.headers=Ur.from(t.headers),t.data=B0.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),cN.getAdapter(t.adapter||Uc.adapter)(t).then(function(o){return F0(t),o.data=B0.call(t,t.transformResponse,o),o.headers=Ur.from(o.headers),o},function(o){return rN(o)||(F0(t),o&&o.response&&(o.response.data=B0.call(t,t.transformResponse,o.response),o.response.headers=Ur.from(o.response.headers))),Promise.reject(o)})}const uN="1.8.2",a0={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{a0[t]=function(o){return typeof o===t||"a"+(e<1?"n ":" ")+t}});const Jm={};a0.transitional=function(e,n,o){function r(i,s){return"[Axios v"+uN+"] Transitional option '"+i+"'"+s+(o?". "+o:"")}return(i,s,a)=>{if(e===!1)throw new mt(r(s," has been removed"+(n?" in "+n:"")),mt.ERR_DEPRECATED);return n&&!Jm[s]&&(Jm[s]=!0,console.warn(r(s," has been deprecated since v"+n+" and will be removed in the near future"))),e?e(i,s,a):!0}};a0.spelling=function(e){return(n,o)=>(console.warn(`${o} is likely a misspelling of ${e}`),!0)};function RF(t,e,n){if(typeof t!="object")throw new mt("options must be an object",mt.ERR_BAD_OPTION_VALUE);const o=Object.keys(t);let r=o.length;for(;r-- >0;){const i=o[r],s=e[i];if(s){const a=t[i],l=a===void 0||s(a,i,t);if(l!==!0)throw new mt("option "+i+" must be "+l,mt.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new mt("Unknown option "+i,mt.ERR_BAD_OPTION)}}const j6={assertOptions:RF,validators:a0},jo=j6.validators;let x2=class{constructor(e){this.defaults=e,this.interceptors={request:new qm,response:new qm}}async request(e,n){try{return await this._request(e,n)}catch(o){if(o instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const i=r.stack?r.stack.replace(/^.+\n/,""):"";try{o.stack?i&&!String(o.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(o.stack+=` -`+i):o.stack=i}catch{}}throw o}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=O2(this.defaults,n);const{transitional:o,paramsSerializer:r,headers:i}=n;o!==void 0&&j6.assertOptions(o,{silentJSONParsing:jo.transitional(jo.boolean),forcedJSONParsing:jo.transitional(jo.boolean),clarifyTimeoutError:jo.transitional(jo.boolean)},!1),r!=null&&(me.isFunction(r)?n.paramsSerializer={serialize:r}:j6.assertOptions(r,{encode:jo.function,serialize:jo.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),j6.assertOptions(n,{baseUrl:jo.spelling("baseURL"),withXsrfToken:jo.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s=i&&me.merge(i.common,i[n.method]);i&&me.forEach(["delete","get","head","post","put","patch","common"],h=>{delete i[h]}),n.headers=Ur.concat(s,i);const a=[];let l=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(n)===!1||(l=l&&g.synchronous,a.unshift(g.fulfilled,g.rejected))});const c=[];this.interceptors.response.forEach(function(g){c.push(g.fulfilled,g.rejected)});let u,d=0,f;if(!l){const h=[Xm.bind(this),void 0];for(h.unshift.apply(h,a),h.push.apply(h,c),f=h.length,u=Promise.resolve(n);d{if(!o._listeners)return;let i=o._listeners.length;for(;i-- >0;)o._listeners[i](r);o._listeners=null}),this.promise.then=r=>{let i;const s=new Promise(a=>{o.subscribe(a),i=a}).then(r);return s.cancel=function(){o.unsubscribe(i)},s},e(function(i,s,a){o.reason||(o.reason=new Hl(i,s,a),n(o.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const e=new AbortController,n=o=>{e.abort(o)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new dN(function(r){e=r}),cancel:e}}};function DF(t){return function(n){return t.apply(null,n)}}function IF(t){return me.isObject(t)&&t.isAxiosError===!0}const vf={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(vf).forEach(([t,e])=>{vf[e]=t});function TN(t){const e=new x2(t),n=UR(x2.prototype.request,e);return me.extend(n,x2.prototype,e,{allOwnKeys:!0}),me.extend(n,e,null,{allOwnKeys:!0}),n.create=function(r){return TN(O2(t,r))},n}const ce=TN(Uc);ce.Axios=x2;ce.CanceledError=Hl;ce.CancelToken=NF;ce.isCancel=rN;ce.VERSION=uN;ce.toFormData=o0;ce.AxiosError=mt;ce.Cancel=ce.CanceledError;ce.all=function(e){return Promise.all(e)};ce.spread=DF;ce.isAxiosError=IF;ce.mergeConfig=O2;ce.AxiosHeaders=Ur;ce.formToJSON=t=>nN(me.isHTMLForm(t)?new FormData(t):t);ce.getAdapter=cN.getAdapter;ce.HttpStatusCode=vf;ce.default=ce;const{Axios:JWn,AxiosError:eKn,CanceledError:tKn,isCancel:nKn,CancelToken:rKn,VERSION:iKn,all:oKn,Cancel:sKn,isAxiosError:aKn,spread:lKn,toFormData:cKn,AxiosHeaders:uKn,HttpStatusCode:dKn,formToJSON:TKn,getAdapter:fKn,mergeConfig:pKn}=ce;/*! +`+i):o.stack=i}catch{}}throw o}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=O2(this.defaults,n);const{transitional:o,paramsSerializer:r,headers:i}=n;o!==void 0&&j6.assertOptions(o,{silentJSONParsing:jo.transitional(jo.boolean),forcedJSONParsing:jo.transitional(jo.boolean),clarifyTimeoutError:jo.transitional(jo.boolean)},!1),r!=null&&(me.isFunction(r)?n.paramsSerializer={serialize:r}:j6.assertOptions(r,{encode:jo.function,serialize:jo.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),j6.assertOptions(n,{baseUrl:jo.spelling("baseURL"),withXsrfToken:jo.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s=i&&me.merge(i.common,i[n.method]);i&&me.forEach(["delete","get","head","post","put","patch","common"],h=>{delete i[h]}),n.headers=Ur.concat(s,i);const a=[];let l=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(n)===!1||(l=l&&g.synchronous,a.unshift(g.fulfilled,g.rejected))});const c=[];this.interceptors.response.forEach(function(g){c.push(g.fulfilled,g.rejected)});let u,d=0,f;if(!l){const h=[Xm.bind(this),void 0];for(h.unshift.apply(h,a),h.push.apply(h,c),f=h.length,u=Promise.resolve(n);d{if(!o._listeners)return;let i=o._listeners.length;for(;i-- >0;)o._listeners[i](r);o._listeners=null}),this.promise.then=r=>{let i;const s=new Promise(a=>{o.subscribe(a),i=a}).then(r);return s.cancel=function(){o.unsubscribe(i)},s},e(function(i,s,a){o.reason||(o.reason=new Hl(i,s,a),n(o.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const e=new AbortController,n=o=>{e.abort(o)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new dN(function(r){e=r}),cancel:e}}};function DF(t){return function(n){return t.apply(null,n)}}function IF(t){return me.isObject(t)&&t.isAxiosError===!0}const vf={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(vf).forEach(([t,e])=>{vf[e]=t});function TN(t){const e=new x2(t),n=UR(x2.prototype.request,e);return me.extend(n,x2.prototype,e,{allOwnKeys:!0}),me.extend(n,e,null,{allOwnKeys:!0}),n.create=function(r){return TN(O2(t,r))},n}const ce=TN(Uc);ce.Axios=x2;ce.CanceledError=Hl;ce.CancelToken=NF;ce.isCancel=rN;ce.VERSION=uN;ce.toFormData=o0;ce.AxiosError=mt;ce.Cancel=ce.CanceledError;ce.all=function(e){return Promise.all(e)};ce.spread=DF;ce.isAxiosError=IF;ce.mergeConfig=O2;ce.AxiosHeaders=Ur;ce.formToJSON=t=>nN(me.isHTMLForm(t)?new FormData(t):t);ce.getAdapter=cN.getAdapter;ce.HttpStatusCode=vf;ce.default=ce;const{Axios:eKn,AxiosError:tKn,CanceledError:nKn,isCancel:rKn,CancelToken:iKn,VERSION:oKn,all:sKn,Cancel:aKn,isAxiosError:lKn,spread:cKn,toFormData:uKn,AxiosHeaders:dKn,HttpStatusCode:TKn,formToJSON:fKn,getAdapter:pKn,mergeConfig:hKn}=ce;/*! * vue-router v4.4.5 * (c) 2024 Eduardo San Martin Morote * @license MIT - */const nl=typeof document<"u";function fN(t){return typeof t=="object"||"displayName"in t||"props"in t||"__vccOpts"in t}function kF(t){return t.__esModule||t[Symbol.toStringTag]==="Module"||t.default&&fN(t.default)}const Xt=Object.assign;function U0(t,e){const n={};for(const o in e){const r=e[o];n[o]=Vo(r)?r.map(t):t(r)}return n}const pc=()=>{},Vo=Array.isArray,pN=/#/g,HF=/&/g,PF=/\//g,$F=/=/g,VF=/\?/g,hN=/\+/g,BF=/%5B/g,FF=/%5D/g,mN=/%5E/g,UF=/%60/g,gN=/%7B/g,qF=/%7C/g,_N=/%7D/g,GF=/%20/g;function yp(t){return encodeURI(""+t).replace(qF,"|").replace(BF,"[").replace(FF,"]")}function jF(t){return yp(t).replace(gN,"{").replace(_N,"}").replace(mN,"^")}function yf(t){return yp(t).replace(hN,"%2B").replace(GF,"+").replace(pN,"%23").replace(HF,"%26").replace(UF,"`").replace(gN,"{").replace(_N,"}").replace(mN,"^")}function zF(t){return yf(t).replace($F,"%3D")}function YF(t){return yp(t).replace(pN,"%23").replace(VF,"%3F")}function WF(t){return t==null?"":YF(t).replace(PF,"%2F")}function wc(t){try{return decodeURIComponent(""+t)}catch{}return""+t}const KF=/\/$/,ZF=t=>t.replace(KF,"");function q0(t,e,n="/"){let o,r={},i="",s="";const a=e.indexOf("#");let l=e.indexOf("?");return a=0&&(l=-1),l>-1&&(o=e.slice(0,l),i=e.slice(l+1,a>-1?a:e.length),r=t(i)),a>-1&&(o=o||e.slice(0,a),s=e.slice(a,e.length)),o=tU(o??e,n),{fullPath:o+(i&&"?")+i+s,path:o,query:r,hash:wc(s)}}function XF(t,e){const n=e.query?t(e.query):"";return e.path+(n&&"?")+n+(e.hash||"")}function eg(t,e){return!e||!t.toLowerCase().startsWith(e.toLowerCase())?t:t.slice(e.length)||"/"}function JF(t,e,n){const o=e.matched.length-1,r=n.matched.length-1;return o>-1&&o===r&&yl(e.matched[o],n.matched[r])&&QN(e.params,n.params)&&t(e.query)===t(n.query)&&e.hash===n.hash}function yl(t,e){return(t.aliasOf||t)===(e.aliasOf||e)}function QN(t,e){if(Object.keys(t).length!==Object.keys(e).length)return!1;for(const n in t)if(!eU(t[n],e[n]))return!1;return!0}function eU(t,e){return Vo(t)?tg(t,e):Vo(e)?tg(e,t):t===e}function tg(t,e){return Vo(e)?t.length===e.length&&t.every((n,o)=>n===e[o]):t.length===1&&t[0]===e}function tU(t,e){if(t.startsWith("/"))return t;if(!t)return e;const n=e.split("/"),o=t.split("/"),r=o[o.length-1];(r===".."||r===".")&&o.push("");let i=n.length-1,s,a;for(s=0;s1&&i--;else break;return n.slice(0,i).join("/")+"/"+o.slice(s).join("/")}const O1={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var Oc;(function(t){t.pop="pop",t.push="push"})(Oc||(Oc={}));var hc;(function(t){t.back="back",t.forward="forward",t.unknown=""})(hc||(hc={}));function nU(t){if(!t)if(nl){const e=document.querySelector("base");t=e&&e.getAttribute("href")||"/",t=t.replace(/^\w+:\/\/[^\/]+/,"")}else t="/";return t[0]!=="/"&&t[0]!=="#"&&(t="/"+t),ZF(t)}const rU=/^[^#]+#/;function iU(t,e){return t.replace(rU,"#")+e}function oU(t,e){const n=document.documentElement.getBoundingClientRect(),o=t.getBoundingClientRect();return{behavior:e.behavior,left:o.left-n.left-(e.left||0),top:o.top-n.top-(e.top||0)}}const l0=()=>({left:window.scrollX,top:window.scrollY});function sU(t){let e;if("el"in t){const n=t.el,o=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;e=oU(r,t)}else e=t;"scrollBehavior"in document.documentElement.style?window.scrollTo(e):window.scrollTo(e.left!=null?e.left:window.scrollX,e.top!=null?e.top:window.scrollY)}function ng(t,e){return(history.state?history.state.position-e:-1)+t}const bf=new Map;function aU(t,e){bf.set(t,e)}function lU(t){const e=bf.get(t);return bf.delete(t),e}let cU=()=>location.protocol+"//"+location.host;function vN(t,e){const{pathname:n,search:o,hash:r}=e,i=t.indexOf("#");if(i>-1){let a=r.includes(t.slice(i))?t.slice(i).length:1,l=r.slice(a);return l[0]!=="/"&&(l="/"+l),eg(l,"")}return eg(n,t)+o+r}function uU(t,e,n,o){let r=[],i=[],s=null;const a=({state:f})=>{const T=vN(t,location),h=n.value,g=e.value;let Q=0;if(f){if(n.value=T,e.value=f,s&&s===h){s=null;return}Q=g?f.position-g.position:0}else o(T);r.forEach(m=>{m(n.value,h,{delta:Q,type:Oc.pop,direction:Q?Q>0?hc.forward:hc.back:hc.unknown})})};function l(){s=n.value}function c(f){r.push(f);const T=()=>{const h=r.indexOf(f);h>-1&&r.splice(h,1)};return i.push(T),T}function u(){const{history:f}=window;f.state&&f.replaceState(Xt({},f.state,{scroll:l0()}),"")}function d(){for(const f of i)f();i=[],window.removeEventListener("popstate",a),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",a),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:l,listen:c,destroy:d}}function rg(t,e,n,o=!1,r=!1){return{back:t,current:e,forward:n,replaced:o,position:window.history.length,scroll:r?l0():null}}function dU(t){const{history:e,location:n}=window,o={value:vN(t,n)},r={value:e.state};r.value||i(o.value,{back:null,current:o.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function i(l,c,u){const d=t.indexOf("#"),f=d>-1?(n.host&&document.querySelector("base")?t:t.slice(d))+l:cU()+t+l;try{e[u?"replaceState":"pushState"](c,"",f),r.value=c}catch(T){console.error(T),n[u?"replace":"assign"](f)}}function s(l,c){const u=Xt({},e.state,rg(r.value.back,l,r.value.forward,!0),c,{position:r.value.position});i(l,u,!0),o.value=l}function a(l,c){const u=Xt({},r.value,e.state,{forward:l,scroll:l0()});i(u.current,u,!0);const d=Xt({},rg(o.value,l,null),{position:u.position+1},c);i(l,d,!1),o.value=l}return{location:o,state:r,push:a,replace:s}}function TU(t){t=nU(t);const e=dU(t),n=uU(t,e.state,e.location,e.replace);function o(i,s=!0){s||n.pauseListeners(),history.go(i)}const r=Xt({location:"",base:t,go:o,createHref:iU.bind(null,t)},e,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>e.state.value}),r}function fU(t){return typeof t=="string"||t&&typeof t=="object"}function yN(t){return typeof t=="string"||typeof t=="symbol"}const bN=Symbol("");var ig;(function(t){t[t.aborted=4]="aborted",t[t.cancelled=8]="cancelled",t[t.duplicated=16]="duplicated"})(ig||(ig={}));function bl(t,e){return Xt(new Error,{type:t,[bN]:!0},e)}function cs(t,e){return t instanceof Error&&bN in t&&(e==null||!!(t.type&e))}const og="[^/]+?",pU={sensitive:!1,strict:!1,start:!0,end:!0},hU=/[.+*?^${}()[\]/\\]/g;function mU(t,e){const n=Xt({},pU,e),o=[];let r=n.start?"^":"";const i=[];for(const c of t){const u=c.length?[]:[90];n.strict&&!c.length&&(r+="/");for(let d=0;de.length?e.length===1&&e[0]===80?1:-1:0}function EN(t,e){let n=0;const o=t.score,r=e.score;for(;n0&&e[e.length-1]<0}const _U={type:0,value:""},QU=/[a-zA-Z0-9_]/;function vU(t){if(!t)return[[]];if(t==="/")return[[_U]];if(!t.startsWith("/"))throw new Error(`Invalid path "${t}"`);function e(T){throw new Error(`ERR (${n})/"${c}": ${T}`)}let n=0,o=n;const r=[];let i;function s(){i&&r.push(i),i=[]}let a=0,l,c="",u="";function d(){c&&(n===0?i.push({type:0,value:c}):n===1||n===2||n===3?(i.length>1&&(l==="*"||l==="+")&&e(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:u,repeatable:l==="*"||l==="+",optional:l==="*"||l==="?"})):e("Invalid state to consume buffer"),c="")}function f(){c+=l}for(;a{s(v)}:pc}function s(d){if(yN(d)){const f=o.get(d);f&&(o.delete(d),n.splice(n.indexOf(f),1),f.children.forEach(s),f.alias.forEach(s))}else{const f=n.indexOf(d);f>-1&&(n.splice(f,1),d.record.name&&o.delete(d.record.name),d.children.forEach(s),d.alias.forEach(s))}}function a(){return n}function l(d){const f=xU(d,n);n.splice(f,0,d),d.record.name&&!cg(d)&&o.set(d.record.name,d)}function c(d,f){let T,h={},g,Q;if("name"in d&&d.name){if(T=o.get(d.name),!T)throw bl(1,{location:d});Q=T.record.name,h=Xt(ag(f.params,T.keys.filter(v=>!v.optional).concat(T.parent?T.parent.keys.filter(v=>v.optional):[]).map(v=>v.name)),d.params&&ag(d.params,T.keys.map(v=>v.name))),g=T.stringify(h)}else if(d.path!=null)g=d.path,T=n.find(v=>v.re.test(g)),T&&(h=T.parse(g),Q=T.record.name);else{if(T=f.name?o.get(f.name):n.find(v=>v.re.test(f.path)),!T)throw bl(1,{location:d,currentLocation:f});Q=T.record.name,h=Xt({},f.params,d.params),g=T.stringify(h)}const m=[];let _=T;for(;_;)m.unshift(_.record),_=_.parent;return{name:Q,path:g,params:h,matched:m,meta:SU(m)}}t.forEach(d=>i(d));function u(){n.length=0,o.clear()}return{addRoute:i,resolve:c,removeRoute:s,clearRoutes:u,getRoutes:a,getRecordMatcher:r}}function ag(t,e){const n={};for(const o of e)o in t&&(n[o]=t[o]);return n}function lg(t){const e={path:t.path,redirect:t.redirect,name:t.name,meta:t.meta||{},aliasOf:t.aliasOf,beforeEnter:t.beforeEnter,props:EU(t),children:t.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in t?t.components||null:t.component&&{default:t.component}};return Object.defineProperty(e,"mods",{value:{}}),e}function EU(t){const e={},n=t.props||!1;if("component"in t)e.default=n;else for(const o in t.components)e[o]=typeof n=="object"?n[o]:n;return e}function cg(t){for(;t;){if(t.record.aliasOf)return!0;t=t.parent}return!1}function SU(t){return t.reduce((e,n)=>Xt(e,n.meta),{})}function ug(t,e){const n={};for(const o in t)n[o]=o in e?e[o]:t[o];return n}function xU(t,e){let n=0,o=e.length;for(;n!==o;){const i=n+o>>1;EN(t,e[i])<0?o=i:n=i+1}const r=LU(t);return r&&(o=e.lastIndexOf(r,o-1)),o}function LU(t){let e=t;for(;e=e.parent;)if(SN(e)&&EN(t,e)===0)return e}function SN({record:t}){return!!(t.name||t.components&&Object.keys(t.components).length||t.redirect)}function CU(t){const e={};if(t===""||t==="?")return e;const o=(t[0]==="?"?t.slice(1):t).split("&");for(let r=0;ri&&yf(i)):[o&&yf(o)]).forEach(i=>{i!==void 0&&(e+=(e.length?"&":"")+n,i!=null&&(e+="="+i))})}return e}function AU(t){const e={};for(const n in t){const o=t[n];o!==void 0&&(e[n]=Vo(o)?o.map(r=>r==null?null:""+r):o==null?o:""+o)}return e}const wU=Symbol(""),Tg=Symbol(""),bp=Symbol(""),Ep=Symbol(""),Ef=Symbol("");function Jl(){let t=[];function e(o){return t.push(o),()=>{const r=t.indexOf(o);r>-1&&t.splice(r,1)}}function n(){t=[]}return{add:e,list:()=>t.slice(),reset:n}}function H1(t,e,n,o,r,i=s=>s()){const s=o&&(o.enterCallbacks[r]=o.enterCallbacks[r]||[]);return()=>new Promise((a,l)=>{const c=f=>{f===!1?l(bl(4,{from:n,to:e})):f instanceof Error?l(f):fU(f)?l(bl(2,{from:e,to:f})):(s&&o.enterCallbacks[r]===s&&typeof f=="function"&&s.push(f),a())},u=i(()=>t.call(o&&o.instances[r],e,n,c));let d=Promise.resolve(u);t.length<3&&(d=d.then(c)),d.catch(f=>l(f))})}function G0(t,e,n,o,r=i=>i()){const i=[];for(const s of t)for(const a in s.components){let l=s.components[a];if(!(e!=="beforeRouteEnter"&&!s.instances[a]))if(fN(l)){const u=(l.__vccOpts||l)[e];u&&i.push(H1(u,n,o,s,a,r))}else{let c=l();i.push(()=>c.then(u=>{if(!u)throw new Error(`Couldn't resolve component "${a}" at "${s.path}"`);const d=kF(u)?u.default:u;s.mods[a]=u,s.components[a]=d;const T=(d.__vccOpts||d)[e];return T&&H1(T,n,o,s,a,r)()}))}}return i}function fg(t){const e=Ui(bp),n=Ui(Ep),o=je(()=>{const l=gt(t.to);return e.resolve(l)}),r=je(()=>{const{matched:l}=o.value,{length:c}=l,u=l[c-1],d=n.matched;if(!u||!d.length)return-1;const f=d.findIndex(yl.bind(null,u));if(f>-1)return f;const T=pg(l[c-2]);return c>1&&pg(u)===T&&d[d.length-1].path!==T?d.findIndex(yl.bind(null,l[c-2])):f}),i=je(()=>r.value>-1&&RU(n.params,o.value.params)),s=je(()=>r.value>-1&&r.value===n.matched.length-1&&QN(n.params,o.value.params));function a(l={}){return MU(l)?e[gt(t.replace)?"replace":"push"](gt(t.to)).catch(pc):Promise.resolve()}return{route:o,href:je(()=>o.value.href),isActive:i,isExactActive:s,navigate:a}}const OU=On({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:fg,setup(t,{slots:e}){const n=fr(fg(t)),{options:o}=Ui(bp),r=je(()=>({[hg(t.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[hg(t.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=e.default&&e.default(n);return t.custom?i:pp("a",{"aria-current":n.isExactActive?t.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),Q5=OU;function MU(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&!(t.button!==void 0&&t.button!==0)){if(t.currentTarget&&t.currentTarget.getAttribute){const e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function RU(t,e){for(const n in e){const o=e[n],r=t[n];if(typeof o=="string"){if(o!==r)return!1}else if(!Vo(r)||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function pg(t){return t?t.aliasOf?t.aliasOf.path:t.path:""}const hg=(t,e,n)=>t??e??n,NU=On({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(t,{attrs:e,slots:n}){const o=Ui(Ef),r=je(()=>t.route||o.value),i=Ui(Tg,0),s=je(()=>{let c=gt(i);const{matched:u}=r.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),a=je(()=>r.value.matched[s.value]);fl(Tg,je(()=>s.value+1)),fl(wU,a),fl(Ef,r);const l=Ve();return $n(()=>[l.value,a.value,t.name],([c,u,d],[f,T,h])=>{u&&(u.instances[d]=c,T&&T!==u&&c&&c===f&&(u.leaveGuards.size||(u.leaveGuards=T.leaveGuards),u.updateGuards.size||(u.updateGuards=T.updateGuards))),c&&u&&(!T||!yl(u,T)||!f)&&(u.enterCallbacks[d]||[]).forEach(g=>g(c))},{flush:"post"}),()=>{const c=r.value,u=t.name,d=a.value,f=d&&d.components[u];if(!f)return mg(n.default,{Component:f,route:c});const T=d.props[u],h=T?T===!0?c.params:typeof T=="function"?T(c):T:null,Q=pp(f,Xt({},h,e,{onVnodeUnmounted:m=>{m.component.isUnmounted&&(d.instances[u]=null)},ref:l}));return mg(n.default,{Component:Q,route:c})||Q}}});function mg(t,e){if(!t)return null;const n=t(e);return n.length===1?n[0]:n}const xN=NU;function DU(t){const e=bU(t.routes,t),n=t.parseQuery||CU,o=t.stringifyQuery||dg,r=t.history,i=Jl(),s=Jl(),a=Jl(),l=MP(O1);let c=O1;nl&&t.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=U0.bind(null,z=>""+z),d=U0.bind(null,WF),f=U0.bind(null,wc);function T(z,te){let ae,fe;return yN(z)?(ae=e.getRecordMatcher(z),fe=te):fe=z,e.addRoute(fe,ae)}function h(z){const te=e.getRecordMatcher(z);te&&e.removeRoute(te)}function g(){return e.getRoutes().map(z=>z.record)}function Q(z){return!!e.getRecordMatcher(z)}function m(z,te){if(te=Xt({},te||l.value),typeof z=="string"){const X=q0(n,z,te.path),se=e.resolve({path:X.path},te),le=r.createHref(X.fullPath);return Xt(X,se,{params:f(se.params),hash:wc(X.hash),redirectedFrom:void 0,href:le})}let ae;if(z.path!=null)ae=Xt({},z,{path:q0(n,z.path,te.path).path});else{const X=Xt({},z.params);for(const se in X)X[se]==null&&delete X[se];ae=Xt({},z,{params:d(X)}),te.params=d(te.params)}const fe=e.resolve(ae,te),Qe=z.hash||"";fe.params=u(f(fe.params));const Y=XF(o,Xt({},z,{hash:jF(Qe),path:fe.path})),W=r.createHref(Y);return Xt({fullPath:Y,hash:Qe,query:o===dg?AU(z.query):z.query||{}},fe,{redirectedFrom:void 0,href:W})}function _(z){return typeof z=="string"?q0(n,z,l.value.path):Xt({},z)}function v(z,te){if(c!==z)return bl(8,{from:te,to:z})}function b(z){return x(z)}function y(z){return b(Xt(_(z),{replace:!0}))}function E(z){const te=z.matched[z.matched.length-1];if(te&&te.redirect){const{redirect:ae}=te;let fe=typeof ae=="function"?ae(z):ae;return typeof fe=="string"&&(fe=fe.includes("?")||fe.includes("#")?fe=_(fe):{path:fe},fe.params={}),Xt({query:z.query,hash:z.hash,params:fe.path!=null?{}:z.params},fe)}}function x(z,te){const ae=c=m(z),fe=l.value,Qe=z.state,Y=z.force,W=z.replace===!0,X=E(ae);if(X)return x(Xt(_(X),{state:typeof X=="object"?Xt({},Qe,X.state):Qe,force:Y,replace:W}),te||ae);const se=ae;se.redirectedFrom=te;let le;return!Y&&JF(o,fe,ae)&&(le=bl(16,{to:se,from:fe}),q(fe,fe,!0,!1)),(le?Promise.resolve(le):A(se,fe)).catch(de=>cs(de)?cs(de,2)?de:B(de):P(de,se,fe)).then(de=>{if(de){if(cs(de,2))return x(Xt({replace:W},_(de.to),{state:typeof de.to=="object"?Xt({},Qe,de.to.state):Qe,force:Y}),te||se)}else de=R(se,fe,!0,W,Qe);return O(se,fe,de),de})}function L(z,te){const ae=v(z,te);return ae?Promise.reject(ae):Promise.resolve()}function C(z){const te=j.values().next().value;return te&&typeof te.runWithContext=="function"?te.runWithContext(z):z()}function A(z,te){let ae;const[fe,Qe,Y]=IU(z,te);ae=G0(fe.reverse(),"beforeRouteLeave",z,te);for(const X of fe)X.leaveGuards.forEach(se=>{ae.push(H1(se,z,te))});const W=L.bind(null,z,te);return ae.push(W),pe(ae).then(()=>{ae=[];for(const X of i.list())ae.push(H1(X,z,te));return ae.push(W),pe(ae)}).then(()=>{ae=G0(Qe,"beforeRouteUpdate",z,te);for(const X of Qe)X.updateGuards.forEach(se=>{ae.push(H1(se,z,te))});return ae.push(W),pe(ae)}).then(()=>{ae=[];for(const X of Y)if(X.beforeEnter)if(Vo(X.beforeEnter))for(const se of X.beforeEnter)ae.push(H1(se,z,te));else ae.push(H1(X.beforeEnter,z,te));return ae.push(W),pe(ae)}).then(()=>(z.matched.forEach(X=>X.enterCallbacks={}),ae=G0(Y,"beforeRouteEnter",z,te,C),ae.push(W),pe(ae))).then(()=>{ae=[];for(const X of s.list())ae.push(H1(X,z,te));return ae.push(W),pe(ae)}).catch(X=>cs(X,8)?X:Promise.reject(X))}function O(z,te,ae){a.list().forEach(fe=>C(()=>fe(z,te,ae)))}function R(z,te,ae,fe,Qe){const Y=v(z,te);if(Y)return Y;const W=te===O1,X=nl?history.state:{};ae&&(fe||W?r.replace(z.fullPath,Xt({scroll:W&&X&&X.scroll},Qe)):r.push(z.fullPath,Qe)),l.value=z,q(z,te,ae,W),B()}let I;function M(){I||(I=r.listen((z,te,ae)=>{if(!ue.listening)return;const fe=m(z),Qe=E(fe);if(Qe){x(Xt(Qe,{replace:!0}),fe).catch(pc);return}c=fe;const Y=l.value;nl&&aU(ng(Y.fullPath,ae.delta),l0()),A(fe,Y).catch(W=>cs(W,12)?W:cs(W,2)?(x(W.to,fe).then(X=>{cs(X,20)&&!ae.delta&&ae.type===Oc.pop&&r.go(-1,!1)}).catch(pc),Promise.reject()):(ae.delta&&r.go(-ae.delta,!1),P(W,fe,Y))).then(W=>{W=W||R(fe,Y,!1),W&&(ae.delta&&!cs(W,8)?r.go(-ae.delta,!1):ae.type===Oc.pop&&cs(W,20)&&r.go(-1,!1)),O(fe,Y,W)}).catch(pc)}))}let $=Jl(),U=Jl(),G;function P(z,te,ae){B(z);const fe=U.list();return fe.length?fe.forEach(Qe=>Qe(z,te,ae)):console.error(z),Promise.reject(z)}function F(){return G&&l.value!==O1?Promise.resolve():new Promise((z,te)=>{$.add([z,te])})}function B(z){return G||(G=!z,M(),$.list().forEach(([te,ae])=>z?ae(z):te()),$.reset()),z}function q(z,te,ae,fe){const{scrollBehavior:Qe}=t;if(!nl||!Qe)return Promise.resolve();const Y=!ae&&lU(ng(z.fullPath,0))||(fe||!ae)&&history.state&&history.state.scroll||null;return Se().then(()=>Qe(z,te,Y)).then(W=>W&&sU(W)).catch(W=>P(W,z,te))}const ee=z=>r.go(z);let K;const j=new Set,ue={currentRoute:l,listening:!0,addRoute:T,removeRoute:h,clearRoutes:e.clearRoutes,hasRoute:Q,getRoutes:g,resolve:m,options:t,push:b,replace:y,go:ee,back:()=>ee(-1),forward:()=>ee(1),beforeEach:i.add,beforeResolve:s.add,afterEach:a.add,onError:U.add,isReady:F,install(z){const te=this;z.component("RouterLink",Q5),z.component("RouterView",xN),z.config.globalProperties.$router=te,Object.defineProperty(z.config.globalProperties,"$route",{enumerable:!0,get:()=>gt(l)}),nl&&!K&&l.value===O1&&(K=!0,b(r.location).catch(Qe=>{}));const ae={};for(const Qe in O1)Object.defineProperty(ae,Qe,{get:()=>l.value[Qe],enumerable:!0});z.provide(bp,te),z.provide(Ep,OM(ae)),z.provide(Ef,l);const fe=z.unmount;j.add(z),z.unmount=function(){j.delete(z),j.size<1&&(c=O1,I&&I(),I=null,l.value=O1,K=!1,G=!1),fe()}}};function pe(z){return z.reduce((te,ae)=>te.then(()=>C(ae)),Promise.resolve())}return ue}function IU(t,e){const n=[],o=[],r=[],i=Math.max(e.matched.length,t.matched.length);for(let s=0;syl(c,a))?o.push(a):n.push(a));const l=t.matched[s];l&&(e.matched.find(c=>yl(c,l))||r.push(l))}return[n,o,r]}function kU(t){return Ui(Ep)}const HU="modulepreload",PU=function(t){return"/"+t},gg={},j0=function(e,n,o){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const s=document.querySelector("meta[property=csp-nonce]"),a=(s==null?void 0:s.nonce)||(s==null?void 0:s.getAttribute("nonce"));r=Promise.allSettled(n.map(l=>{if(l=PU(l),l in gg)return;gg[l]=!0;const c=l.endsWith(".css"),u=c?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${l}"]${u}`))return;const d=document.createElement("link");if(d.rel=c?"stylesheet":HU,c||(d.as="script"),d.crossOrigin="",d.href=l,a&&d.setAttribute("nonce",a),document.head.appendChild(d),c)return new Promise((f,T)=>{d.addEventListener("load",f),d.addEventListener("error",()=>T(new Error(`Unable to preload CSS for ${l}`)))})}))}function i(s){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=s,window.dispatchEvent(a),!a.defaultPrevented)throw s}return r.then(s=>{for(const a of s||[])a.status==="rejected"&&i(a.reason);return e().catch(i)})},$U={class:"sticky top-0 z-50 w-full bg-transparent"},VU={class:"container mx-auto px-4"},BU={class:"flex items-center justify-between h-16"},FU={class:"hidden md:block"},UU={class:"flex items-center space-x-4"},qU={class:"flex items-center space-x-1"},GU={key:0,class:"ml-1 text-xs","aria-hidden":"true"},jU={class:"md:hidden"},zU={class:"px-2 pt-2 pb-3 space-y-1"},YU={class:"flex items-center justify-between"},WU={key:0,class:"text-xs","aria-hidden":"true"},KU={name:"Navigation"},ZU=Object.assign(KU,{setup(t){const e=kU(),n=Ve(0),o=Ve([]),r=Ve(!1),i=[{active:!0,route:"discussions",text:"Discussions"},{active:!0,route:"playground",text:"Playground"},{active:!0,route:"PersonalitiesZoo",text:"Personalities Zoo"},{active:!0,route:"AppsZoo",text:"Apps Zoo"},{active:!1,route:"AutoSD",text:"Auto111-SD",condition:()=>m1.state.config.enable_sd_service||m1.state.config.active_tti_service==="autosd"},{active:!1,route:"ComfyUI",text:"ComfyUI",condition:()=>m1.state.config.enable_comfyui_service||m1.state.config.active_tti_service==="comfyui"},{active:!0,route:"settings",text:"Settings"},{active:!0,route:"help_view",text:"Help"}],s=je(()=>m1.state.ready?i.filter(u=>u.condition?u.condition():u.active):i.filter(u=>u.active));Hr(()=>{a()}),$n(()=>e.name,a);function a(){const u=s.value.findIndex(d=>d.route===e.name);u!==-1&&(n.value=u)}function l(u){return e.name===u}function c(u){n.value=u}return(u,d)=>(N(),H("div",$U,[S("nav",VU,[S("div",BU,[S("div",FU,[S("div",UU,[(N(!0),H(xe,null,Pe(s.value,(f,T)=>(N(),ot(gt(Q5),{key:T,to:{name:f.route},class:Ee(["nav-button",{"nav-button-active":l(f.route)}]),onClick:h=>c(T),ref_for:!0,ref_key:"menuItems",ref:o},{default:Ge(()=>[S("div",qU,[Re(J(f.text)+" ",1),l(f.route)?(N(),H("span",GU," ✨ ")):Z("",!0)])]),_:2},1032,["to","class","onClick"]))),128))])]),S("div",jU,[S("button",{onClick:d[0]||(d[0]=f=>r.value=!r.value),class:"inline-flex items-center justify-center p-2 rounded-md text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700 focus:outline-none"},[(N(),H("svg",{class:Ee(["h-6 w-6",{hidden:r.value,block:!r.value}]),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},d[1]||(d[1]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 6h16M4 12h16M4 18h16"},null,-1)]),2)),(N(),H("svg",{class:Ee(["h-6 w-6",{block:r.value,hidden:!r.value}]),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},d[2]||(d[2]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"},null,-1)]),2))])])]),S("div",{class:Ee([{block:r.value,hidden:!r.value},"md:hidden"])},[S("div",zU,[(N(!0),H(xe,null,Pe(s.value,(f,T)=>(N(),ot(gt(Q5),{key:T,to:{name:f.route},class:Ee(["block px-3 py-2 rounded-md text-base font-medium transition-colors duration-200 ease-in-out text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700",{"bg-blue-500 text-white hover:bg-blue-600 dark:bg-blue-600 dark:hover:bg-blue-700":l(f.route)}]),onClick:h=>{c(T),r.value=!1}},{default:Ge(()=>[S("div",YU,[Re(J(f.text)+" ",1),l(f.route)?(N(),H("span",WU," ✨ ")):Z("",!0)])]),_:2},1032,["to","class","onClick"]))),128))])],2)])]))}}),Ye=(t,e)=>{const n=t.__vccOpts||t;for(const[o,r]of e)n[o]=r;return n},XU={props:{href:{type:String,default:"#"},icon:{type:String,required:!0},title:{type:String,default:""}},methods:{onClick(t){this.href==="#"&&(t.preventDefault(),this.$emit("click"))}}},JU=["href","title"],eq=["data-feather"];function tq(t,e,n,o,r,i){return N(),H("a",{href:n.href,onClick:e[0]||(e[0]=(...s)=>i.onClick&&i.onClick(...s)),class:"text-2xl hover:text-primary transition duration-150 ease-in-out",title:n.title},[S("i",{"data-feather":n.icon},null,8,eq)],8,JU)}const LN=Ye(XU,[["render",tq]]),nq={props:{href:{type:String,required:!0},icon:{type:String,required:!0},title:{type:String,default:"Visit our social media"}}},rq=["href","title"],iq=["data-feather"],oq={key:1,class:"w-6 h-6 fill-current",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},sq={key:2,class:"w-6 h-6 fill-current",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function aq(t,e,n,o,r,i){return N(),H("a",{href:n.href,target:"_blank",class:"text-2xl hover:text-primary transition duration-150 ease-in-out",title:n.title},[n.icon!=="x"&&n.icon!=="discord"?(N(),H("i",{key:0,"data-feather":n.icon},null,8,iq)):n.icon==="x"?(N(),H("svg",oq,e[0]||(e[0]=[S("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"},null,-1)]))):n.icon==="discord"?(N(),H("svg",sq,e[1]||(e[1]=[S("path",{d:"M20.317 4.3698a19.7913 19.7913 0 00-4.8851-1.5152.0741.0741 0 00-.0785.0371c-.211.3753-.4447.8648-.6083 1.2495-1.8447-.2762-3.68-.2762-5.4868 0-.1636-.3933-.4058-.8742-.6177-1.2495a.077.077 0 00-.0785-.037 19.7363 19.7363 0 00-4.8852 1.515.0699.0699 0 00-.0321.0277C.5334 9.0458-.319 13.5799.0992 18.0578a.0824.0824 0 00.0312.0561c2.0528 1.5076 4.0413 2.4228 5.9929 3.0294a.0777.0777 0 00.0842-.0276c.4616-.6304.8731-1.2952 1.226-1.9942a.076.076 0 00-.0416-.1057c-.6528-.2476-1.2743-.5495-1.8722-.8923a.077.077 0 01-.0076-.1277c.1258-.0943.2517-.1923.3718-.2914a.0743.0743 0 01.0776-.0105c3.9278 1.7933 8.18 1.7933 12.0614 0a.0739.0739 0 01.0785.0095c.1202.099.246.1981.3728.2924a.077.077 0 01-.0066.1276 12.2986 12.2986 0 01-1.873.8914.0766.0766 0 00-.0407.1067c.3604.698.7719 1.3628 1.225 1.9932a.076.076 0 00.0842.0286c1.961-.6067 3.9495-1.5219 6.0023-3.0294a.077.077 0 00.0313-.0552c.5004-5.177-.8382-9.6739-3.5485-13.6604a.061.061 0 00-.0312-.0286zM8.02 15.3312c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9555-2.4189 2.157-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.9555 2.4189-2.1569 2.4189zm7.9748 0c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9554-2.4189 2.1569-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.946 2.4189-2.1568 2.4189Z"},null,-1)]))):Z("",!0)],8,rq)}const CN=Ye(nq,[["render",aq]]);function Pl(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Sp(t){if(Object.prototype.hasOwnProperty.call(t,"__esModule"))return t;var e=t.default;if(typeof e=="function"){var n=function o(){return this instanceof o?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};n.prototype=e.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(t).forEach(function(o){var r=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(n,o,r.get?r:{enumerable:!0,get:function(){return t[o]}})}),n}var z6={exports:{}},lq=z6.exports,_g;function cq(){return _g||(_g=1,function(t,e){(function(o,r){t.exports=r()})(typeof self<"u"?self:lq,function(){return function(n){var o={};function r(i){if(o[i])return o[i].exports;var s=o[i]={i,l:!1,exports:{}};return n[i].call(s.exports,s,s.exports,r),s.l=!0,s.exports}return r.m=n,r.c=o,r.d=function(i,s,a){r.o(i,s)||Object.defineProperty(i,s,{configurable:!1,enumerable:!0,get:a})},r.r=function(i){Object.defineProperty(i,"__esModule",{value:!0})},r.n=function(i){var s=i&&i.__esModule?function(){return i.default}:function(){return i};return r.d(s,"a",s),s},r.o=function(i,s){return Object.prototype.hasOwnProperty.call(i,s)},r.p="",r(r.s=0)}({"./dist/icons.json":function(n){n.exports={activity:'',airplay:'',"alert-circle":'',"alert-octagon":'',"alert-triangle":'',"align-center":'',"align-justify":'',"align-left":'',"align-right":'',anchor:'',aperture:'',archive:'',"arrow-down-circle":'',"arrow-down-left":'',"arrow-down-right":'',"arrow-down":'',"arrow-left-circle":'',"arrow-left":'',"arrow-right-circle":'',"arrow-right":'',"arrow-up-circle":'',"arrow-up-left":'',"arrow-up-right":'',"arrow-up":'',"at-sign":'',award:'',"bar-chart-2":'',"bar-chart":'',"battery-charging":'',battery:'',"bell-off":'',bell:'',bluetooth:'',bold:'',"book-open":'',book:'',bookmark:'',box:'',briefcase:'',calendar:'',"camera-off":'',camera:'',cast:'',"check-circle":'',"check-square":'',check:'',"chevron-down":'',"chevron-left":'',"chevron-right":'',"chevron-up":'',"chevrons-down":'',"chevrons-left":'',"chevrons-right":'',"chevrons-up":'',chrome:'',circle:'',clipboard:'',clock:'',"cloud-drizzle":'',"cloud-lightning":'',"cloud-off":'',"cloud-rain":'',"cloud-snow":'',cloud:'',code:'',codepen:'',codesandbox:'',coffee:'',columns:'',command:'',compass:'',copy:'',"corner-down-left":'',"corner-down-right":'',"corner-left-down":'',"corner-left-up":'',"corner-right-down":'',"corner-right-up":'',"corner-up-left":'',"corner-up-right":'',cpu:'',"credit-card":'',crop:'',crosshair:'',database:'',delete:'',disc:'',"divide-circle":'',"divide-square":'',divide:'',"dollar-sign":'',"download-cloud":'',download:'',dribbble:'',droplet:'',"edit-2":'',"edit-3":'',edit:'',"external-link":'',"eye-off":'',eye:'',facebook:'',"fast-forward":'',feather:'',figma:'',"file-minus":'',"file-plus":'',"file-text":'',file:'',film:'',filter:'',flag:'',"folder-minus":'',"folder-plus":'',folder:'',framer:'',frown:'',gift:'',"git-branch":'',"git-commit":'',"git-merge":'',"git-pull-request":'',github:'',gitlab:'',globe:'',grid:'',"hard-drive":'',hash:'',headphones:'',heart:'',"help-circle":'',hexagon:'',home:'',image:'',inbox:'',info:'',instagram:'',italic:'',key:'',layers:'',layout:'',"life-buoy":'',"link-2":'',link:'',linkedin:'',list:'',loader:'',lock:'',"log-in":'',"log-out":'',mail:'',"map-pin":'',map:'',"maximize-2":'',maximize:'',meh:'',menu:'',"message-circle":'',"message-square":'',"mic-off":'',mic:'',"minimize-2":'',minimize:'',"minus-circle":'',"minus-square":'',minus:'',monitor:'',moon:'',"more-horizontal":'',"more-vertical":'',"mouse-pointer":'',move:'',music:'',"navigation-2":'',navigation:'',octagon:'',package:'',paperclip:'',"pause-circle":'',pause:'',"pen-tool":'',percent:'',"phone-call":'',"phone-forwarded":'',"phone-incoming":'',"phone-missed":'',"phone-off":'',"phone-outgoing":'',phone:'',"pie-chart":'',"play-circle":'',play:'',"plus-circle":'',"plus-square":'',plus:'',pocket:'',power:'',printer:'',radio:'',"refresh-ccw":'',"refresh-cw":'',repeat:'',rewind:'',"rotate-ccw":'',"rotate-cw":'',rss:'',save:'',scissors:'',search:'',send:'',server:'',settings:'',"share-2":'',share:'',"shield-off":'',shield:'',"shopping-bag":'',"shopping-cart":'',shuffle:'',sidebar:'',"skip-back":'',"skip-forward":'',slack:'',slash:'',sliders:'',smartphone:'',smile:'',speaker:'',square:'',star:'',"stop-circle":'',sun:'',sunrise:'',sunset:'',table:'',tablet:'',tag:'',target:'',terminal:'',thermometer:'',"thumbs-down":'',"thumbs-up":'',"toggle-left":'',"toggle-right":'',tool:'',"trash-2":'',trash:'',trello:'',"trending-down":'',"trending-up":'',triangle:'',truck:'',tv:'',twitch:'',twitter:'',type:'',umbrella:'',underline:'',unlock:'',"upload-cloud":'',upload:'',"user-check":'',"user-minus":'',"user-plus":'',"user-x":'',user:'',users:'',"video-off":'',video:'',voicemail:'',"volume-1":'',"volume-2":'',"volume-x":'',volume:'',watch:'',"wifi-off":'',wifi:'',wind:'',"x-circle":'',"x-octagon":'',"x-square":'',x:'',youtube:'',"zap-off":'',zap:'',"zoom-in":'',"zoom-out":''}},"./node_modules/classnames/dedupe.js":function(n,o,r){var i,s;/*! + */const nl=typeof document<"u";function fN(t){return typeof t=="object"||"displayName"in t||"props"in t||"__vccOpts"in t}function kF(t){return t.__esModule||t[Symbol.toStringTag]==="Module"||t.default&&fN(t.default)}const Xt=Object.assign;function U0(t,e){const n={};for(const o in e){const r=e[o];n[o]=Vo(r)?r.map(t):t(r)}return n}const pc=()=>{},Vo=Array.isArray,pN=/#/g,HF=/&/g,PF=/\//g,$F=/=/g,VF=/\?/g,hN=/\+/g,BF=/%5B/g,FF=/%5D/g,mN=/%5E/g,UF=/%60/g,gN=/%7B/g,qF=/%7C/g,_N=/%7D/g,GF=/%20/g;function yp(t){return encodeURI(""+t).replace(qF,"|").replace(BF,"[").replace(FF,"]")}function jF(t){return yp(t).replace(gN,"{").replace(_N,"}").replace(mN,"^")}function yf(t){return yp(t).replace(hN,"%2B").replace(GF,"+").replace(pN,"%23").replace(HF,"%26").replace(UF,"`").replace(gN,"{").replace(_N,"}").replace(mN,"^")}function zF(t){return yf(t).replace($F,"%3D")}function YF(t){return yp(t).replace(pN,"%23").replace(VF,"%3F")}function WF(t){return t==null?"":YF(t).replace(PF,"%2F")}function wc(t){try{return decodeURIComponent(""+t)}catch{}return""+t}const KF=/\/$/,ZF=t=>t.replace(KF,"");function q0(t,e,n="/"){let o,r={},i="",s="";const a=e.indexOf("#");let l=e.indexOf("?");return a=0&&(l=-1),l>-1&&(o=e.slice(0,l),i=e.slice(l+1,a>-1?a:e.length),r=t(i)),a>-1&&(o=o||e.slice(0,a),s=e.slice(a,e.length)),o=tU(o??e,n),{fullPath:o+(i&&"?")+i+s,path:o,query:r,hash:wc(s)}}function XF(t,e){const n=e.query?t(e.query):"";return e.path+(n&&"?")+n+(e.hash||"")}function eg(t,e){return!e||!t.toLowerCase().startsWith(e.toLowerCase())?t:t.slice(e.length)||"/"}function JF(t,e,n){const o=e.matched.length-1,r=n.matched.length-1;return o>-1&&o===r&&yl(e.matched[o],n.matched[r])&&QN(e.params,n.params)&&t(e.query)===t(n.query)&&e.hash===n.hash}function yl(t,e){return(t.aliasOf||t)===(e.aliasOf||e)}function QN(t,e){if(Object.keys(t).length!==Object.keys(e).length)return!1;for(const n in t)if(!eU(t[n],e[n]))return!1;return!0}function eU(t,e){return Vo(t)?tg(t,e):Vo(e)?tg(e,t):t===e}function tg(t,e){return Vo(e)?t.length===e.length&&t.every((n,o)=>n===e[o]):t.length===1&&t[0]===e}function tU(t,e){if(t.startsWith("/"))return t;if(!t)return e;const n=e.split("/"),o=t.split("/"),r=o[o.length-1];(r===".."||r===".")&&o.push("");let i=n.length-1,s,a;for(s=0;s1&&i--;else break;return n.slice(0,i).join("/")+"/"+o.slice(s).join("/")}const O1={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var Oc;(function(t){t.pop="pop",t.push="push"})(Oc||(Oc={}));var hc;(function(t){t.back="back",t.forward="forward",t.unknown=""})(hc||(hc={}));function nU(t){if(!t)if(nl){const e=document.querySelector("base");t=e&&e.getAttribute("href")||"/",t=t.replace(/^\w+:\/\/[^\/]+/,"")}else t="/";return t[0]!=="/"&&t[0]!=="#"&&(t="/"+t),ZF(t)}const rU=/^[^#]+#/;function iU(t,e){return t.replace(rU,"#")+e}function oU(t,e){const n=document.documentElement.getBoundingClientRect(),o=t.getBoundingClientRect();return{behavior:e.behavior,left:o.left-n.left-(e.left||0),top:o.top-n.top-(e.top||0)}}const l0=()=>({left:window.scrollX,top:window.scrollY});function sU(t){let e;if("el"in t){const n=t.el,o=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;e=oU(r,t)}else e=t;"scrollBehavior"in document.documentElement.style?window.scrollTo(e):window.scrollTo(e.left!=null?e.left:window.scrollX,e.top!=null?e.top:window.scrollY)}function ng(t,e){return(history.state?history.state.position-e:-1)+t}const bf=new Map;function aU(t,e){bf.set(t,e)}function lU(t){const e=bf.get(t);return bf.delete(t),e}let cU=()=>location.protocol+"//"+location.host;function vN(t,e){const{pathname:n,search:o,hash:r}=e,i=t.indexOf("#");if(i>-1){let a=r.includes(t.slice(i))?t.slice(i).length:1,l=r.slice(a);return l[0]!=="/"&&(l="/"+l),eg(l,"")}return eg(n,t)+o+r}function uU(t,e,n,o){let r=[],i=[],s=null;const a=({state:f})=>{const T=vN(t,location),h=n.value,g=e.value;let Q=0;if(f){if(n.value=T,e.value=f,s&&s===h){s=null;return}Q=g?f.position-g.position:0}else o(T);r.forEach(m=>{m(n.value,h,{delta:Q,type:Oc.pop,direction:Q?Q>0?hc.forward:hc.back:hc.unknown})})};function l(){s=n.value}function c(f){r.push(f);const T=()=>{const h=r.indexOf(f);h>-1&&r.splice(h,1)};return i.push(T),T}function u(){const{history:f}=window;f.state&&f.replaceState(Xt({},f.state,{scroll:l0()}),"")}function d(){for(const f of i)f();i=[],window.removeEventListener("popstate",a),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",a),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:l,listen:c,destroy:d}}function rg(t,e,n,o=!1,r=!1){return{back:t,current:e,forward:n,replaced:o,position:window.history.length,scroll:r?l0():null}}function dU(t){const{history:e,location:n}=window,o={value:vN(t,n)},r={value:e.state};r.value||i(o.value,{back:null,current:o.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function i(l,c,u){const d=t.indexOf("#"),f=d>-1?(n.host&&document.querySelector("base")?t:t.slice(d))+l:cU()+t+l;try{e[u?"replaceState":"pushState"](c,"",f),r.value=c}catch(T){console.error(T),n[u?"replace":"assign"](f)}}function s(l,c){const u=Xt({},e.state,rg(r.value.back,l,r.value.forward,!0),c,{position:r.value.position});i(l,u,!0),o.value=l}function a(l,c){const u=Xt({},r.value,e.state,{forward:l,scroll:l0()});i(u.current,u,!0);const d=Xt({},rg(o.value,l,null),{position:u.position+1},c);i(l,d,!1),o.value=l}return{location:o,state:r,push:a,replace:s}}function TU(t){t=nU(t);const e=dU(t),n=uU(t,e.state,e.location,e.replace);function o(i,s=!0){s||n.pauseListeners(),history.go(i)}const r=Xt({location:"",base:t,go:o,createHref:iU.bind(null,t)},e,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>e.state.value}),r}function fU(t){return typeof t=="string"||t&&typeof t=="object"}function yN(t){return typeof t=="string"||typeof t=="symbol"}const bN=Symbol("");var ig;(function(t){t[t.aborted=4]="aborted",t[t.cancelled=8]="cancelled",t[t.duplicated=16]="duplicated"})(ig||(ig={}));function bl(t,e){return Xt(new Error,{type:t,[bN]:!0},e)}function cs(t,e){return t instanceof Error&&bN in t&&(e==null||!!(t.type&e))}const og="[^/]+?",pU={sensitive:!1,strict:!1,start:!0,end:!0},hU=/[.+*?^${}()[\]/\\]/g;function mU(t,e){const n=Xt({},pU,e),o=[];let r=n.start?"^":"";const i=[];for(const c of t){const u=c.length?[]:[90];n.strict&&!c.length&&(r+="/");for(let d=0;de.length?e.length===1&&e[0]===80?1:-1:0}function EN(t,e){let n=0;const o=t.score,r=e.score;for(;n0&&e[e.length-1]<0}const _U={type:0,value:""},QU=/[a-zA-Z0-9_]/;function vU(t){if(!t)return[[]];if(t==="/")return[[_U]];if(!t.startsWith("/"))throw new Error(`Invalid path "${t}"`);function e(T){throw new Error(`ERR (${n})/"${c}": ${T}`)}let n=0,o=n;const r=[];let i;function s(){i&&r.push(i),i=[]}let a=0,l,c="",u="";function d(){c&&(n===0?i.push({type:0,value:c}):n===1||n===2||n===3?(i.length>1&&(l==="*"||l==="+")&&e(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:u,repeatable:l==="*"||l==="+",optional:l==="*"||l==="?"})):e("Invalid state to consume buffer"),c="")}function f(){c+=l}for(;a{s(v)}:pc}function s(d){if(yN(d)){const f=o.get(d);f&&(o.delete(d),n.splice(n.indexOf(f),1),f.children.forEach(s),f.alias.forEach(s))}else{const f=n.indexOf(d);f>-1&&(n.splice(f,1),d.record.name&&o.delete(d.record.name),d.children.forEach(s),d.alias.forEach(s))}}function a(){return n}function l(d){const f=xU(d,n);n.splice(f,0,d),d.record.name&&!cg(d)&&o.set(d.record.name,d)}function c(d,f){let T,h={},g,Q;if("name"in d&&d.name){if(T=o.get(d.name),!T)throw bl(1,{location:d});Q=T.record.name,h=Xt(ag(f.params,T.keys.filter(v=>!v.optional).concat(T.parent?T.parent.keys.filter(v=>v.optional):[]).map(v=>v.name)),d.params&&ag(d.params,T.keys.map(v=>v.name))),g=T.stringify(h)}else if(d.path!=null)g=d.path,T=n.find(v=>v.re.test(g)),T&&(h=T.parse(g),Q=T.record.name);else{if(T=f.name?o.get(f.name):n.find(v=>v.re.test(f.path)),!T)throw bl(1,{location:d,currentLocation:f});Q=T.record.name,h=Xt({},f.params,d.params),g=T.stringify(h)}const m=[];let _=T;for(;_;)m.unshift(_.record),_=_.parent;return{name:Q,path:g,params:h,matched:m,meta:SU(m)}}t.forEach(d=>i(d));function u(){n.length=0,o.clear()}return{addRoute:i,resolve:c,removeRoute:s,clearRoutes:u,getRoutes:a,getRecordMatcher:r}}function ag(t,e){const n={};for(const o of e)o in t&&(n[o]=t[o]);return n}function lg(t){const e={path:t.path,redirect:t.redirect,name:t.name,meta:t.meta||{},aliasOf:t.aliasOf,beforeEnter:t.beforeEnter,props:EU(t),children:t.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in t?t.components||null:t.component&&{default:t.component}};return Object.defineProperty(e,"mods",{value:{}}),e}function EU(t){const e={},n=t.props||!1;if("component"in t)e.default=n;else for(const o in t.components)e[o]=typeof n=="object"?n[o]:n;return e}function cg(t){for(;t;){if(t.record.aliasOf)return!0;t=t.parent}return!1}function SU(t){return t.reduce((e,n)=>Xt(e,n.meta),{})}function ug(t,e){const n={};for(const o in t)n[o]=o in e?e[o]:t[o];return n}function xU(t,e){let n=0,o=e.length;for(;n!==o;){const i=n+o>>1;EN(t,e[i])<0?o=i:n=i+1}const r=LU(t);return r&&(o=e.lastIndexOf(r,o-1)),o}function LU(t){let e=t;for(;e=e.parent;)if(SN(e)&&EN(t,e)===0)return e}function SN({record:t}){return!!(t.name||t.components&&Object.keys(t.components).length||t.redirect)}function CU(t){const e={};if(t===""||t==="?")return e;const o=(t[0]==="?"?t.slice(1):t).split("&");for(let r=0;ri&&yf(i)):[o&&yf(o)]).forEach(i=>{i!==void 0&&(e+=(e.length?"&":"")+n,i!=null&&(e+="="+i))})}return e}function AU(t){const e={};for(const n in t){const o=t[n];o!==void 0&&(e[n]=Vo(o)?o.map(r=>r==null?null:""+r):o==null?o:""+o)}return e}const wU=Symbol(""),Tg=Symbol(""),bp=Symbol(""),Ep=Symbol(""),Ef=Symbol("");function Jl(){let t=[];function e(o){return t.push(o),()=>{const r=t.indexOf(o);r>-1&&t.splice(r,1)}}function n(){t=[]}return{add:e,list:()=>t.slice(),reset:n}}function H1(t,e,n,o,r,i=s=>s()){const s=o&&(o.enterCallbacks[r]=o.enterCallbacks[r]||[]);return()=>new Promise((a,l)=>{const c=f=>{f===!1?l(bl(4,{from:n,to:e})):f instanceof Error?l(f):fU(f)?l(bl(2,{from:e,to:f})):(s&&o.enterCallbacks[r]===s&&typeof f=="function"&&s.push(f),a())},u=i(()=>t.call(o&&o.instances[r],e,n,c));let d=Promise.resolve(u);t.length<3&&(d=d.then(c)),d.catch(f=>l(f))})}function G0(t,e,n,o,r=i=>i()){const i=[];for(const s of t)for(const a in s.components){let l=s.components[a];if(!(e!=="beforeRouteEnter"&&!s.instances[a]))if(fN(l)){const u=(l.__vccOpts||l)[e];u&&i.push(H1(u,n,o,s,a,r))}else{let c=l();i.push(()=>c.then(u=>{if(!u)throw new Error(`Couldn't resolve component "${a}" at "${s.path}"`);const d=kF(u)?u.default:u;s.mods[a]=u,s.components[a]=d;const T=(d.__vccOpts||d)[e];return T&&H1(T,n,o,s,a,r)()}))}}return i}function fg(t){const e=Ui(bp),n=Ui(Ep),o=je(()=>{const l=gt(t.to);return e.resolve(l)}),r=je(()=>{const{matched:l}=o.value,{length:c}=l,u=l[c-1],d=n.matched;if(!u||!d.length)return-1;const f=d.findIndex(yl.bind(null,u));if(f>-1)return f;const T=pg(l[c-2]);return c>1&&pg(u)===T&&d[d.length-1].path!==T?d.findIndex(yl.bind(null,l[c-2])):f}),i=je(()=>r.value>-1&&RU(n.params,o.value.params)),s=je(()=>r.value>-1&&r.value===n.matched.length-1&&QN(n.params,o.value.params));function a(l={}){return MU(l)?e[gt(t.replace)?"replace":"push"](gt(t.to)).catch(pc):Promise.resolve()}return{route:o,href:je(()=>o.value.href),isActive:i,isExactActive:s,navigate:a}}const OU=On({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:fg,setup(t,{slots:e}){const n=fr(fg(t)),{options:o}=Ui(bp),r=je(()=>({[hg(t.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[hg(t.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=e.default&&e.default(n);return t.custom?i:pp("a",{"aria-current":n.isExactActive?t.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),Q5=OU;function MU(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&!(t.button!==void 0&&t.button!==0)){if(t.currentTarget&&t.currentTarget.getAttribute){const e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function RU(t,e){for(const n in e){const o=e[n],r=t[n];if(typeof o=="string"){if(o!==r)return!1}else if(!Vo(r)||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function pg(t){return t?t.aliasOf?t.aliasOf.path:t.path:""}const hg=(t,e,n)=>t??e??n,NU=On({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(t,{attrs:e,slots:n}){const o=Ui(Ef),r=je(()=>t.route||o.value),i=Ui(Tg,0),s=je(()=>{let c=gt(i);const{matched:u}=r.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),a=je(()=>r.value.matched[s.value]);fl(Tg,je(()=>s.value+1)),fl(wU,a),fl(Ef,r);const l=Ve();return $n(()=>[l.value,a.value,t.name],([c,u,d],[f,T,h])=>{u&&(u.instances[d]=c,T&&T!==u&&c&&c===f&&(u.leaveGuards.size||(u.leaveGuards=T.leaveGuards),u.updateGuards.size||(u.updateGuards=T.updateGuards))),c&&u&&(!T||!yl(u,T)||!f)&&(u.enterCallbacks[d]||[]).forEach(g=>g(c))},{flush:"post"}),()=>{const c=r.value,u=t.name,d=a.value,f=d&&d.components[u];if(!f)return mg(n.default,{Component:f,route:c});const T=d.props[u],h=T?T===!0?c.params:typeof T=="function"?T(c):T:null,Q=pp(f,Xt({},h,e,{onVnodeUnmounted:m=>{m.component.isUnmounted&&(d.instances[u]=null)},ref:l}));return mg(n.default,{Component:Q,route:c})||Q}}});function mg(t,e){if(!t)return null;const n=t(e);return n.length===1?n[0]:n}const xN=NU;function DU(t){const e=bU(t.routes,t),n=t.parseQuery||CU,o=t.stringifyQuery||dg,r=t.history,i=Jl(),s=Jl(),a=Jl(),l=MP(O1);let c=O1;nl&&t.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=U0.bind(null,z=>""+z),d=U0.bind(null,WF),f=U0.bind(null,wc);function T(z,te){let ae,fe;return yN(z)?(ae=e.getRecordMatcher(z),fe=te):fe=z,e.addRoute(fe,ae)}function h(z){const te=e.getRecordMatcher(z);te&&e.removeRoute(te)}function g(){return e.getRoutes().map(z=>z.record)}function Q(z){return!!e.getRecordMatcher(z)}function m(z,te){if(te=Xt({},te||l.value),typeof z=="string"){const X=q0(n,z,te.path),se=e.resolve({path:X.path},te),le=r.createHref(X.fullPath);return Xt(X,se,{params:f(se.params),hash:wc(X.hash),redirectedFrom:void 0,href:le})}let ae;if(z.path!=null)ae=Xt({},z,{path:q0(n,z.path,te.path).path});else{const X=Xt({},z.params);for(const se in X)X[se]==null&&delete X[se];ae=Xt({},z,{params:d(X)}),te.params=d(te.params)}const fe=e.resolve(ae,te),Qe=z.hash||"";fe.params=u(f(fe.params));const Y=XF(o,Xt({},z,{hash:jF(Qe),path:fe.path})),W=r.createHref(Y);return Xt({fullPath:Y,hash:Qe,query:o===dg?AU(z.query):z.query||{}},fe,{redirectedFrom:void 0,href:W})}function _(z){return typeof z=="string"?q0(n,z,l.value.path):Xt({},z)}function v(z,te){if(c!==z)return bl(8,{from:te,to:z})}function b(z){return x(z)}function y(z){return b(Xt(_(z),{replace:!0}))}function E(z){const te=z.matched[z.matched.length-1];if(te&&te.redirect){const{redirect:ae}=te;let fe=typeof ae=="function"?ae(z):ae;return typeof fe=="string"&&(fe=fe.includes("?")||fe.includes("#")?fe=_(fe):{path:fe},fe.params={}),Xt({query:z.query,hash:z.hash,params:fe.path!=null?{}:z.params},fe)}}function x(z,te){const ae=c=m(z),fe=l.value,Qe=z.state,Y=z.force,W=z.replace===!0,X=E(ae);if(X)return x(Xt(_(X),{state:typeof X=="object"?Xt({},Qe,X.state):Qe,force:Y,replace:W}),te||ae);const se=ae;se.redirectedFrom=te;let le;return!Y&&JF(o,fe,ae)&&(le=bl(16,{to:se,from:fe}),q(fe,fe,!0,!1)),(le?Promise.resolve(le):A(se,fe)).catch(de=>cs(de)?cs(de,2)?de:B(de):P(de,se,fe)).then(de=>{if(de){if(cs(de,2))return x(Xt({replace:W},_(de.to),{state:typeof de.to=="object"?Xt({},Qe,de.to.state):Qe,force:Y}),te||se)}else de=R(se,fe,!0,W,Qe);return O(se,fe,de),de})}function L(z,te){const ae=v(z,te);return ae?Promise.reject(ae):Promise.resolve()}function C(z){const te=j.values().next().value;return te&&typeof te.runWithContext=="function"?te.runWithContext(z):z()}function A(z,te){let ae;const[fe,Qe,Y]=IU(z,te);ae=G0(fe.reverse(),"beforeRouteLeave",z,te);for(const X of fe)X.leaveGuards.forEach(se=>{ae.push(H1(se,z,te))});const W=L.bind(null,z,te);return ae.push(W),pe(ae).then(()=>{ae=[];for(const X of i.list())ae.push(H1(X,z,te));return ae.push(W),pe(ae)}).then(()=>{ae=G0(Qe,"beforeRouteUpdate",z,te);for(const X of Qe)X.updateGuards.forEach(se=>{ae.push(H1(se,z,te))});return ae.push(W),pe(ae)}).then(()=>{ae=[];for(const X of Y)if(X.beforeEnter)if(Vo(X.beforeEnter))for(const se of X.beforeEnter)ae.push(H1(se,z,te));else ae.push(H1(X.beforeEnter,z,te));return ae.push(W),pe(ae)}).then(()=>(z.matched.forEach(X=>X.enterCallbacks={}),ae=G0(Y,"beforeRouteEnter",z,te,C),ae.push(W),pe(ae))).then(()=>{ae=[];for(const X of s.list())ae.push(H1(X,z,te));return ae.push(W),pe(ae)}).catch(X=>cs(X,8)?X:Promise.reject(X))}function O(z,te,ae){a.list().forEach(fe=>C(()=>fe(z,te,ae)))}function R(z,te,ae,fe,Qe){const Y=v(z,te);if(Y)return Y;const W=te===O1,X=nl?history.state:{};ae&&(fe||W?r.replace(z.fullPath,Xt({scroll:W&&X&&X.scroll},Qe)):r.push(z.fullPath,Qe)),l.value=z,q(z,te,ae,W),B()}let I;function M(){I||(I=r.listen((z,te,ae)=>{if(!ue.listening)return;const fe=m(z),Qe=E(fe);if(Qe){x(Xt(Qe,{replace:!0}),fe).catch(pc);return}c=fe;const Y=l.value;nl&&aU(ng(Y.fullPath,ae.delta),l0()),A(fe,Y).catch(W=>cs(W,12)?W:cs(W,2)?(x(W.to,fe).then(X=>{cs(X,20)&&!ae.delta&&ae.type===Oc.pop&&r.go(-1,!1)}).catch(pc),Promise.reject()):(ae.delta&&r.go(-ae.delta,!1),P(W,fe,Y))).then(W=>{W=W||R(fe,Y,!1),W&&(ae.delta&&!cs(W,8)?r.go(-ae.delta,!1):ae.type===Oc.pop&&cs(W,20)&&r.go(-1,!1)),O(fe,Y,W)}).catch(pc)}))}let $=Jl(),U=Jl(),G;function P(z,te,ae){B(z);const fe=U.list();return fe.length?fe.forEach(Qe=>Qe(z,te,ae)):console.error(z),Promise.reject(z)}function F(){return G&&l.value!==O1?Promise.resolve():new Promise((z,te)=>{$.add([z,te])})}function B(z){return G||(G=!z,M(),$.list().forEach(([te,ae])=>z?ae(z):te()),$.reset()),z}function q(z,te,ae,fe){const{scrollBehavior:Qe}=t;if(!nl||!Qe)return Promise.resolve();const Y=!ae&&lU(ng(z.fullPath,0))||(fe||!ae)&&history.state&&history.state.scroll||null;return Se().then(()=>Qe(z,te,Y)).then(W=>W&&sU(W)).catch(W=>P(W,z,te))}const ee=z=>r.go(z);let K;const j=new Set,ue={currentRoute:l,listening:!0,addRoute:T,removeRoute:h,clearRoutes:e.clearRoutes,hasRoute:Q,getRoutes:g,resolve:m,options:t,push:b,replace:y,go:ee,back:()=>ee(-1),forward:()=>ee(1),beforeEach:i.add,beforeResolve:s.add,afterEach:a.add,onError:U.add,isReady:F,install(z){const te=this;z.component("RouterLink",Q5),z.component("RouterView",xN),z.config.globalProperties.$router=te,Object.defineProperty(z.config.globalProperties,"$route",{enumerable:!0,get:()=>gt(l)}),nl&&!K&&l.value===O1&&(K=!0,b(r.location).catch(Qe=>{}));const ae={};for(const Qe in O1)Object.defineProperty(ae,Qe,{get:()=>l.value[Qe],enumerable:!0});z.provide(bp,te),z.provide(Ep,OM(ae)),z.provide(Ef,l);const fe=z.unmount;j.add(z),z.unmount=function(){j.delete(z),j.size<1&&(c=O1,I&&I(),I=null,l.value=O1,K=!1,G=!1),fe()}}};function pe(z){return z.reduce((te,ae)=>te.then(()=>C(ae)),Promise.resolve())}return ue}function IU(t,e){const n=[],o=[],r=[],i=Math.max(e.matched.length,t.matched.length);for(let s=0;syl(c,a))?o.push(a):n.push(a));const l=t.matched[s];l&&(e.matched.find(c=>yl(c,l))||r.push(l))}return[n,o,r]}function kU(t){return Ui(Ep)}const HU="modulepreload",PU=function(t){return"/"+t},gg={},j0=function(e,n,o){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const s=document.querySelector("meta[property=csp-nonce]"),a=(s==null?void 0:s.nonce)||(s==null?void 0:s.getAttribute("nonce"));r=Promise.allSettled(n.map(l=>{if(l=PU(l),l in gg)return;gg[l]=!0;const c=l.endsWith(".css"),u=c?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${l}"]${u}`))return;const d=document.createElement("link");if(d.rel=c?"stylesheet":HU,c||(d.as="script"),d.crossOrigin="",d.href=l,a&&d.setAttribute("nonce",a),document.head.appendChild(d),c)return new Promise((f,T)=>{d.addEventListener("load",f),d.addEventListener("error",()=>T(new Error(`Unable to preload CSS for ${l}`)))})}))}function i(s){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=s,window.dispatchEvent(a),!a.defaultPrevented)throw s}return r.then(s=>{for(const a of s||[])a.status==="rejected"&&i(a.reason);return e().catch(i)})},$U={class:"sticky top-0 z-50 w-full bg-transparent"},VU={class:"container mx-auto px-4"},BU={class:"flex items-center justify-between h-16"},FU={class:"hidden md:block"},UU={class:"flex items-center space-x-4"},qU={class:"flex items-center space-x-1"},GU={key:0,class:"ml-1 text-xs","aria-hidden":"true"},jU={class:"md:hidden"},zU={class:"px-2 pt-2 pb-3 space-y-1"},YU={class:"flex items-center justify-between"},WU={key:0,class:"text-xs","aria-hidden":"true"},KU={name:"Navigation"},ZU=Object.assign(KU,{setup(t){const e=kU(),n=Ve(0),o=Ve([]),r=Ve(!1),i=[{active:!0,route:"discussions",text:"Discussions"},{active:!0,route:"playground",text:"Playground"},{active:!0,route:"PersonalitiesZoo",text:"Personalities Zoo"},{active:!0,route:"AppsZoo",text:"Apps Zoo"},{active:!1,route:"AutoSD",text:"Auto111-SD",condition:()=>m1.state.config.enable_sd_service||m1.state.config.active_tti_service==="autosd"},{active:!1,route:"ComfyUI",text:"ComfyUI",condition:()=>m1.state.config.enable_comfyui_service||m1.state.config.active_tti_service==="comfyui"},{active:!0,route:"settings",text:"Settings"},{active:!0,route:"help_view",text:"Help"}],s=je(()=>m1.state.ready?i.filter(u=>u.condition?u.condition():u.active):i.filter(u=>u.active));Hr(()=>{a()}),$n(()=>e.name,a);function a(){const u=s.value.findIndex(d=>d.route===e.name);u!==-1&&(n.value=u)}function l(u){return e.name===u}function c(u){n.value=u}return(u,d)=>(N(),H("div",$U,[S("nav",VU,[S("div",BU,[S("div",FU,[S("div",UU,[(N(!0),H(xe,null,Pe(s.value,(f,T)=>(N(),ot(gt(Q5),{key:T,to:{name:f.route},class:Ee(["nav-button",{"nav-button-active":l(f.route)}]),onClick:h=>c(T),ref_for:!0,ref_key:"menuItems",ref:o},{default:Ge(()=>[S("div",qU,[Me(J(f.text)+" ",1),l(f.route)?(N(),H("span",GU," ✨ ")):Z("",!0)])]),_:2},1032,["to","class","onClick"]))),128))])]),S("div",jU,[S("button",{onClick:d[0]||(d[0]=f=>r.value=!r.value),class:"inline-flex items-center justify-center p-2 rounded-md text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700 focus:outline-none"},[(N(),H("svg",{class:Ee(["h-6 w-6",{hidden:r.value,block:!r.value}]),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},d[1]||(d[1]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 6h16M4 12h16M4 18h16"},null,-1)]),2)),(N(),H("svg",{class:Ee(["h-6 w-6",{block:r.value,hidden:!r.value}]),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},d[2]||(d[2]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"},null,-1)]),2))])])]),S("div",{class:Ee([{block:r.value,hidden:!r.value},"md:hidden"])},[S("div",zU,[(N(!0),H(xe,null,Pe(s.value,(f,T)=>(N(),ot(gt(Q5),{key:T,to:{name:f.route},class:Ee(["block px-3 py-2 rounded-md text-base font-medium transition-colors duration-200 ease-in-out text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700",{"bg-blue-500 text-white hover:bg-blue-600 dark:bg-blue-600 dark:hover:bg-blue-700":l(f.route)}]),onClick:h=>{c(T),r.value=!1}},{default:Ge(()=>[S("div",YU,[Me(J(f.text)+" ",1),l(f.route)?(N(),H("span",WU," ✨ ")):Z("",!0)])]),_:2},1032,["to","class","onClick"]))),128))])],2)])]))}}),Ye=(t,e)=>{const n=t.__vccOpts||t;for(const[o,r]of e)n[o]=r;return n},XU={props:{href:{type:String,default:"#"},icon:{type:String,required:!0},title:{type:String,default:""}},methods:{onClick(t){this.href==="#"&&(t.preventDefault(),this.$emit("click"))}}},JU=["href","title"],eq=["data-feather"];function tq(t,e,n,o,r,i){return N(),H("a",{href:n.href,onClick:e[0]||(e[0]=(...s)=>i.onClick&&i.onClick(...s)),class:"text-2xl hover:text-primary transition duration-150 ease-in-out",title:n.title},[S("i",{"data-feather":n.icon},null,8,eq)],8,JU)}const LN=Ye(XU,[["render",tq]]),nq={props:{href:{type:String,required:!0},icon:{type:String,required:!0},title:{type:String,default:"Visit our social media"}}},rq=["href","title"],iq=["data-feather"],oq={key:1,class:"w-6 h-6 fill-current",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},sq={key:2,class:"w-6 h-6 fill-current",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function aq(t,e,n,o,r,i){return N(),H("a",{href:n.href,target:"_blank",class:"text-2xl hover:text-primary transition duration-150 ease-in-out",title:n.title},[n.icon!=="x"&&n.icon!=="discord"?(N(),H("i",{key:0,"data-feather":n.icon},null,8,iq)):n.icon==="x"?(N(),H("svg",oq,e[0]||(e[0]=[S("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"},null,-1)]))):n.icon==="discord"?(N(),H("svg",sq,e[1]||(e[1]=[S("path",{d:"M20.317 4.3698a19.7913 19.7913 0 00-4.8851-1.5152.0741.0741 0 00-.0785.0371c-.211.3753-.4447.8648-.6083 1.2495-1.8447-.2762-3.68-.2762-5.4868 0-.1636-.3933-.4058-.8742-.6177-1.2495a.077.077 0 00-.0785-.037 19.7363 19.7363 0 00-4.8852 1.515.0699.0699 0 00-.0321.0277C.5334 9.0458-.319 13.5799.0992 18.0578a.0824.0824 0 00.0312.0561c2.0528 1.5076 4.0413 2.4228 5.9929 3.0294a.0777.0777 0 00.0842-.0276c.4616-.6304.8731-1.2952 1.226-1.9942a.076.076 0 00-.0416-.1057c-.6528-.2476-1.2743-.5495-1.8722-.8923a.077.077 0 01-.0076-.1277c.1258-.0943.2517-.1923.3718-.2914a.0743.0743 0 01.0776-.0105c3.9278 1.7933 8.18 1.7933 12.0614 0a.0739.0739 0 01.0785.0095c.1202.099.246.1981.3728.2924a.077.077 0 01-.0066.1276 12.2986 12.2986 0 01-1.873.8914.0766.0766 0 00-.0407.1067c.3604.698.7719 1.3628 1.225 1.9932a.076.076 0 00.0842.0286c1.961-.6067 3.9495-1.5219 6.0023-3.0294a.077.077 0 00.0313-.0552c.5004-5.177-.8382-9.6739-3.5485-13.6604a.061.061 0 00-.0312-.0286zM8.02 15.3312c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9555-2.4189 2.157-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.9555 2.4189-2.1569 2.4189zm7.9748 0c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9554-2.4189 2.1569-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.946 2.4189-2.1568 2.4189Z"},null,-1)]))):Z("",!0)],8,rq)}const CN=Ye(nq,[["render",aq]]);function Pl(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Sp(t){if(Object.prototype.hasOwnProperty.call(t,"__esModule"))return t;var e=t.default;if(typeof e=="function"){var n=function o(){return this instanceof o?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};n.prototype=e.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(t).forEach(function(o){var r=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(n,o,r.get?r:{enumerable:!0,get:function(){return t[o]}})}),n}var z6={exports:{}},lq=z6.exports,_g;function cq(){return _g||(_g=1,function(t,e){(function(o,r){t.exports=r()})(typeof self<"u"?self:lq,function(){return function(n){var o={};function r(i){if(o[i])return o[i].exports;var s=o[i]={i,l:!1,exports:{}};return n[i].call(s.exports,s,s.exports,r),s.l=!0,s.exports}return r.m=n,r.c=o,r.d=function(i,s,a){r.o(i,s)||Object.defineProperty(i,s,{configurable:!1,enumerable:!0,get:a})},r.r=function(i){Object.defineProperty(i,"__esModule",{value:!0})},r.n=function(i){var s=i&&i.__esModule?function(){return i.default}:function(){return i};return r.d(s,"a",s),s},r.o=function(i,s){return Object.prototype.hasOwnProperty.call(i,s)},r.p="",r(r.s=0)}({"./dist/icons.json":function(n){n.exports={activity:'',airplay:'',"alert-circle":'',"alert-octagon":'',"alert-triangle":'',"align-center":'',"align-justify":'',"align-left":'',"align-right":'',anchor:'',aperture:'',archive:'',"arrow-down-circle":'',"arrow-down-left":'',"arrow-down-right":'',"arrow-down":'',"arrow-left-circle":'',"arrow-left":'',"arrow-right-circle":'',"arrow-right":'',"arrow-up-circle":'',"arrow-up-left":'',"arrow-up-right":'',"arrow-up":'',"at-sign":'',award:'',"bar-chart-2":'',"bar-chart":'',"battery-charging":'',battery:'',"bell-off":'',bell:'',bluetooth:'',bold:'',"book-open":'',book:'',bookmark:'',box:'',briefcase:'',calendar:'',"camera-off":'',camera:'',cast:'',"check-circle":'',"check-square":'',check:'',"chevron-down":'',"chevron-left":'',"chevron-right":'',"chevron-up":'',"chevrons-down":'',"chevrons-left":'',"chevrons-right":'',"chevrons-up":'',chrome:'',circle:'',clipboard:'',clock:'',"cloud-drizzle":'',"cloud-lightning":'',"cloud-off":'',"cloud-rain":'',"cloud-snow":'',cloud:'',code:'',codepen:'',codesandbox:'',coffee:'',columns:'',command:'',compass:'',copy:'',"corner-down-left":'',"corner-down-right":'',"corner-left-down":'',"corner-left-up":'',"corner-right-down":'',"corner-right-up":'',"corner-up-left":'',"corner-up-right":'',cpu:'',"credit-card":'',crop:'',crosshair:'',database:'',delete:'',disc:'',"divide-circle":'',"divide-square":'',divide:'',"dollar-sign":'',"download-cloud":'',download:'',dribbble:'',droplet:'',"edit-2":'',"edit-3":'',edit:'',"external-link":'',"eye-off":'',eye:'',facebook:'',"fast-forward":'',feather:'',figma:'',"file-minus":'',"file-plus":'',"file-text":'',file:'',film:'',filter:'',flag:'',"folder-minus":'',"folder-plus":'',folder:'',framer:'',frown:'',gift:'',"git-branch":'',"git-commit":'',"git-merge":'',"git-pull-request":'',github:'',gitlab:'',globe:'',grid:'',"hard-drive":'',hash:'',headphones:'',heart:'',"help-circle":'',hexagon:'',home:'',image:'',inbox:'',info:'',instagram:'',italic:'',key:'',layers:'',layout:'',"life-buoy":'',"link-2":'',link:'',linkedin:'',list:'',loader:'',lock:'',"log-in":'',"log-out":'',mail:'',"map-pin":'',map:'',"maximize-2":'',maximize:'',meh:'',menu:'',"message-circle":'',"message-square":'',"mic-off":'',mic:'',"minimize-2":'',minimize:'',"minus-circle":'',"minus-square":'',minus:'',monitor:'',moon:'',"more-horizontal":'',"more-vertical":'',"mouse-pointer":'',move:'',music:'',"navigation-2":'',navigation:'',octagon:'',package:'',paperclip:'',"pause-circle":'',pause:'',"pen-tool":'',percent:'',"phone-call":'',"phone-forwarded":'',"phone-incoming":'',"phone-missed":'',"phone-off":'',"phone-outgoing":'',phone:'',"pie-chart":'',"play-circle":'',play:'',"plus-circle":'',"plus-square":'',plus:'',pocket:'',power:'',printer:'',radio:'',"refresh-ccw":'',"refresh-cw":'',repeat:'',rewind:'',"rotate-ccw":'',"rotate-cw":'',rss:'',save:'',scissors:'',search:'',send:'',server:'',settings:'',"share-2":'',share:'',"shield-off":'',shield:'',"shopping-bag":'',"shopping-cart":'',shuffle:'',sidebar:'',"skip-back":'',"skip-forward":'',slack:'',slash:'',sliders:'',smartphone:'',smile:'',speaker:'',square:'',star:'',"stop-circle":'',sun:'',sunrise:'',sunset:'',table:'',tablet:'',tag:'',target:'',terminal:'',thermometer:'',"thumbs-down":'',"thumbs-up":'',"toggle-left":'',"toggle-right":'',tool:'',"trash-2":'',trash:'',trello:'',"trending-down":'',"trending-up":'',triangle:'',truck:'',tv:'',twitch:'',twitter:'',type:'',umbrella:'',underline:'',unlock:'',"upload-cloud":'',upload:'',"user-check":'',"user-minus":'',"user-plus":'',"user-x":'',user:'',users:'',"video-off":'',video:'',voicemail:'',"volume-1":'',"volume-2":'',"volume-x":'',volume:'',watch:'',"wifi-off":'',wifi:'',wind:'',"x-circle":'',"x-octagon":'',"x-square":'',x:'',youtube:'',"zap-off":'',zap:'',"zoom-in":'',"zoom-out":''}},"./node_modules/classnames/dedupe.js":function(n,o,r){var i,s;/*! Copyright (c) 2016 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames @@ -68,7 +68,7 @@ https://github.com/highlightjs/highlight.js/issues/2277`),gn=ye,bt=Fe),ht===void `),n=e.length===1&&e[0]===""?1:e.length,o=Math.max(1,String(n).length);let r="";for(let i=1;i<=n;i++)r+=`${String(i).padStart(o," ")}
`;return!t.endsWith(` `)&&r.endsWith("
")&&(t!==""||n>1)&&(r=r.slice(0,-4)),t===""&&r===""?"1":r}catch(e){return console.error("Error calculating line numbers:",e),"Err"}},sanitizedExecutionOutputHtml(){return Rc.sanitize(this.executionOutput,{USE_PROFILES:{html:!0},ADD_TAGS:["iframe","svg","path","g","circle","rect","line","polyline","polygon","text","tspan","style","defs","marker","use"],ADD_ATTS:["style","transform","cx","cy","r","x","y","width","height","fill","stroke","stroke-width","stroke-dasharray","points","d","marker-start","marker-end","viewBox","preserveAspectRatio","class","id","href","target","text-anchor","dominant-baseline","font-size","font-family","dy","aria-label"],ALLOW_DATA_ATTR:!0,ALLOW_UNKNOWN_PROTOCOLS:!1,FORBID_TAGS:["script"],FORBID_ATTR:["onerror","onload","onclick","onmouseover","onfocus","onblur"]})},copyIcon(){return this.isCopied?"check":"copy"},copyTitle(){return this.isCopied?"Copied!":"Copy code"},executeIcon(){return this.isExecuting?"loader":"play-circle"},executeTitle(){return this.isExecuting?"Executing...":this.isFunctionLanguage?"Execute Function Call":"Execute Code"},executeNewTabIcon(){return this.isExecuting?"loader":"airplay"},executeNewTabTitle(){return this.isExecuting?"Executing...":"Execute Code in New Tab"},hasMatches(){return this.searchResults.length>0},hasActiveMatch(){return this.currentMatchIndex>=0&&this.currentMatchIndex0?this.undoStack[this.undoStack.length-1]:null)!==t&&(this.undoStack.push(t),this.undoStack.length>Ub&&this.undoStack.shift(),this.redoStack.length>0&&(this.redoStack=[]),this.triggerIconUpdate())},undo(){if(!this.canUndo||this.isFunctionLanguage||!this.$refs.codeContentEditable)return;this.isApplyingUndoRedo=!0;const t=this.internalCode,e=this.undoStack.pop();e!==void 0&&(this.redoStack.push(t),this.internalCode=e,this.applyHighlighting(this.internalCode),this.$emit("update-code",this.internalCode),this.clearSearchState(),this.triggerIconUpdate(),this.$nextTick(()=>{var n;(n=this.$refs.codeContentEditable)==null||n.focus(),this.placeCursorAtEnd(this.$refs.codeContentEditable)})),this.isApplyingUndoRedo=!1},redo(){if(!this.canRedo||this.isFunctionLanguage||!this.$refs.codeContentEditable)return;this.isApplyingUndoRedo=!0;const t=this.redoStack.pop();if(t!==void 0){const e=this.internalCode;this.undoStack.push(e),this.undoStack.length>Ub&&this.undoStack.shift(),this.internalCode=t,this.applyHighlighting(this.internalCode),this.$emit("update-code",this.internalCode),this.clearSearchState(),this.triggerIconUpdate(),this.$nextTick(()=>{var n;(n=this.$refs.codeContentEditable)==null||n.focus(),this.placeCursorAtEnd(this.$refs.codeContentEditable)})}this.isApplyingUndoRedo=!1},handleUndoRedoKeys(t){if(this.isFunctionLanguage)return;const e=navigator.platform.toUpperCase().indexOf("MAC")>=0,n=e&&t.metaKey&&!t.shiftKey&&t.key==="z"||!e&&t.ctrlKey&&!t.shiftKey&&t.key==="z",o=e&&t.metaKey&&t.shiftKey&&t.key==="z"||!e&&t.ctrlKey&&t.key==="y";n?(t.preventDefault(),this.undo()):o&&(t.preventDefault(),this.redo())},applyHighlighting(t,e=!1){if(this.isFunctionLanguage||!this.$refs.codeContentEditable)return;const n=this.$refs.codeContentEditable;let o=null;if(e&&document.activeElement===n){const s=window.getSelection();if(s&&s.rangeCount>0&&n.contains(s.anchorNode))try{const a=s.getRangeAt(0);let l=0,c=-1,u=-1;const d=document.createRange();d.selectNodeContents(n),d.setEnd(a.startContainer,a.startOffset),c=d.toString().length,u=c+a.toString().length,c!==-1&&u!==-1?o={start:c,end:u}:console.warn("Could not accurately determine selection char indices.")}catch(a){console.warn("Could not save selection state:",a)}}const i=Rot(typeof t=="string"?t:"",this.effectiveLanguage);n.innerHTML=i,o&&this.$nextTick(()=>{var s,a,l;try{const c=q2(n,o.start),u=q2(n,o.end);if(c&&u){const d=document.createRange(),f=Math.min(c.offset,((s=c.node.textContent)==null?void 0:s.length)??0),T=Math.min(u.offset,((a=u.node.textContent)==null?void 0:a.length)??0);d.setStart(c.node,f),d.setEnd(u.node,T);const h=window.getSelection();h==null||h.removeAllRanges(),h==null||h.addRange(d)}else{console.warn("Could not find nodes to restore selection:",o);const d=q2(n,o.start);if(d){const f=document.createRange(),T=Math.min(d.offset,((l=d.node.textContent)==null?void 0:l.length)??0);f.setStart(d.node,T),f.collapse(!0);const h=window.getSelection();h==null||h.removeAllRanges(),h==null||h.addRange(f)}}}catch(c){console.error("Error restoring selection:",c,"State:",o)}})},placeCursorAtEnd(t){if(!t)return;const e=document.createRange(),n=window.getSelection();e.selectNodeContents(t),e.collapse(!1),n==null||n.removeAllRanges(),n==null||n.addRange(e),t.focus()},scrollToBottom(t){const e=t;e&&this.$nextTick(()=>{e.scrollTo({top:e.scrollHeight,behavior:"smooth"})})},insertTextAtCursor(t){if(this.isFunctionLanguage||!this.$refs.codeContentEditable)return;const e=this.$refs.codeContentEditable;let n=window.getSelection();if((!n||n.rangeCount===0||!e.contains(n.anchorNode))&&(e.focus(),this.placeCursorAtEnd(e),n=window.getSelection(),!n||n.rangeCount===0))return;this.snapshotState(this.internalCode);const o=n.getRangeAt(0);o.deleteContents();const r=document.createTextNode(t);o.insertNode(r),o.setStartAfter(r),o.collapse(!0),n.removeAllRanges(),n.addRange(o),this.$nextTick(()=>{const i=e.innerText??"";i!==this.internalCode&&(this.internalCode=i,this.$emit("update-code",i),this.clearSearchState())})},handleInputLogic(t){if(this.isFunctionLanguage||!this.$refs.codeContentEditable||this.isApplyingUndoRedo)return;const e=t.target.innerText??"";e!==this.internalCode&&(this.snapshotState(this.internalCode),this.internalCode=e,this.$emit("update-code",e),this.clearSearchState(!1),this.isSearchVisible&&this.searchQuery&&this.debouncedFindMatches())},handlePaste(t){var n;if(this.isFunctionLanguage||!this.$refs.codeContentEditable)return;t.preventDefault(),this.snapshotState(this.internalCode);const e=((n=t.clipboardData)==null?void 0:n.getData("text/plain"))||"";e&&(this.insertTextAtCursor(e),this.$nextTick(()=>{const o=this.$refs.codeContentEditable;if(o){const r=o.innerText;this.internalCode=r,this.$emit("update-code",r),this.clearSearchState()}}))},handleEnterKey(t){this.isFunctionLanguage||this.insertTextAtCursor(` `)},handleTabKey(t){this.isFunctionLanguage||this.insertTextAtCursor(" ")},handleBlur(t){if(this.isFunctionLanguage||!this.$refs.codeContentEditable)return;this.debouncedHandleInput.flush();const e=t.relatedTarget,n=t.currentTarget.closest(".code-block-container");!n||e&&n.contains(e)||(console.log("Blur detected, focus moved outside. Re-highlighting."),this.applyHighlighting(this.internalCode,!1))},clearSelectionIfOutsideSearch(t){if(!(this.isFunctionLanguage||!this.$refs.codeContentEditable)&&this.isSearchVisible&&this.hasActiveMatch&&t.target===this.$refs.codeContentEditable){const e=window.getSelection();e&&e.rangeCount>0&&(e.removeAllRanges(),this.currentMatchIndex=-1)}},triggerIconUpdate(){this.$nextTick(()=>{try{Ce.replace()}catch(t){console.warn("Feather icon replacement failed:",t)}})},async copyCode(){if(this.isCopied)return;const t=this.getActualCode();try{await navigator.clipboard.writeText(t),this.isCopied=!0,this.triggerIconUpdate(),this.copyTimeout&&clearTimeout(this.copyTimeout),this.copyTimeout=setTimeout(()=>{this.isCopied=!1,this.triggerIconUpdate(),this.copyTimeout=null,this.$store&&this.$store.state&&this.$store.state.toast&&typeof this.$store.state.toast.showToast=="function"&&this.$store.state.toast.showToast("Code copied successfully!",4,!0)},1500)}catch(e){console.error("Failed to copy code to clipboard:",e),alert("Error: Could not copy code. See console for details.")}},executeCodeInternal(t,e=!1){if(this.isExecuting)return;this.isExecuting=!0,this.executionOutput="",this.triggerIconUpdate();const n=this.getActualCode(),o={client_id:this.client_id,code:n,discussion_id:this.discussion_id?Number(this.discussion_id):0,message_id:this.message_id?Number(this.message_id):0,language:this.normalizedLanguage};fetch(`${this.host}/${t}`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json, text/plain, */*"},body:JSON.stringify(o)}).then(async r=>{const i=r.headers.get("content-type");let s;if(i&&i.includes("application/json")?s=await r.json():s={output:await r.text()},!r.ok){let a=`HTTP error! Status: ${r.status}`;s!=null&&s.error?a+=`, Message: ${s.error}`:s!=null&&s.output&&typeof s.output=="string"?a+=`, Body: ${s.output.substring(0,200)}${s.output.length>200?"...":""}`:s!=null&&s.detail&&(a+=`, Detail: ${s.detail}`);const l=new Error(a);throw l.response=s,l}return s}).then(r=>{if(this.executionOutput=r.output??r.message??(typeof r=="object"?JSON.stringify(r,null,2):String(r)),e&&r.url)try{window.open(r.url,"_blank","noopener,noreferrer")}catch(i){console.error("Failed to open URL in new tab:",i),this.executionOutput+=` -(Failed to open URL: ${r.url})`}}).catch(r=>{console.error("Code execution request failed:",r),this.executionOutput=`Execution Error: ${r.message}`}).finally(()=>{this.isExecuting=!1,this.triggerIconUpdate(),this.$nextTick(()=>{const r=this.$el.querySelector(".execution-output-content");r==null||r.scrollIntoView({behavior:"smooth",block:"nearest"})})})},executeCode(){this.executeCodeInternal("execute_code",!1)},executeCode_in_new_tab(){this.executeCodeInternal("execute_code_in_new_tab",!0)},postRequest(t,e={}){const n={...e};t==="open_code_in_vs_code"&&(n.code=this.getActualCode()),fetch(`${this.host}/${t}`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(n)}).then(async o=>{if(!o.ok){let i=`HTTP Status ${o.status}`;try{const s=await o.json();i+=`: ${s.detail||JSON.stringify(s)}`}catch{i+=` (${o.statusText})`}throw new Error(i)}const r=o.headers.get("content-type");return r&&r.includes("application/json")?o.json():{}}).then(o=>{console.log(`POST request to ${t} successful:`,o)}).catch(o=>{console.error(`Fetch error during POST to ${t}:`,o),alert(`Operation failed: ${o.message}`)})},openFolderVsCode(){this.postRequest("open_discussion_folder_in_vs_code",{client_id:this.client_id,discussion_id:this.discussion_id})},openVsCode(){this.postRequest("open_code_in_vs_code",{client_id:this.client_id,discussion_id:this.discussion_id,message_id:this.message_id})},openFolder(){this.postRequest("open_discussion_folder",{client_id:this.client_id,discussion_id:this.discussion_id})},toggleFunctionDetails(){this.isFunctionDetailsVisible=!this.isFunctionDetailsVisible,this.triggerIconUpdate()},clearSearchState(t=!1){var e;if(t&&(this.searchQuery="",this.replaceQuery=""),this.searchResults.length>0||this.currentMatchIndex!==-1){this.searchResults=[],this.currentMatchIndex=-1;const n=window.getSelection();if(n&&n.rangeCount>0&&((e=this.$refs.codeContentEditable)!=null&&e.contains(n.anchorNode))){const o=n.getRangeAt(0);this.$refs.codeContentEditable.contains(o.commonAncestorContainer)&&n.removeAllRanges()}}},toggleSearch(){this.isSearchVisible=!this.isSearchVisible,this.isSearchVisible?this.$nextTick(()=>{var t;(t=this.$refs.searchInputRef)==null||t.focus(),this.searchQuery&&this.debouncedFindMatches()}):this.clearSearchState(!0),this.triggerIconUpdate()},findMatchesLogic(){if(this.isFunctionLanguage||!this.$refs.codeContentEditable)return;const t=this.$refs.codeContentEditable,e=t.innerText,n=this.searchQuery;if(!n){this.clearSearchState(!1);return}const o=[];let r=0,i;for(;(i=e.indexOf(n,r))>-1&&(o.push({start:i,end:i+n.length}),n.length!==0);)r=i+1;if(this.searchResults=o,o.length>0)this.currentMatchIndex===-1?(this.currentMatchIndex=0,this.highlightMatch(0,!1)):this.currentMatchIndex>=o.length?(this.currentMatchIndex=0,this.highlightMatch(0,!1)):this.highlightMatch(this.currentMatchIndex,!1);else{this.currentMatchIndex=-1;const s=window.getSelection();if(s&&s.rangeCount>0&&t.contains(s.anchorNode)){const a=s.getRangeAt(0);t.contains(a.commonAncestorContainer)&&s.removeAllRanges()}}},scrollToMatch(t){var r,i,s;if(this.isFunctionLanguage||!this.$refs.codeContentEditable||t<0||t>=this.searchResults.length)return;const e=this.$refs.codeContentEditable,n=this.searchResults[t],o=q2(e,n.start);if(o!=null&&o.node)try{const a=document.createRange(),l=Math.min(o.offset,((r=o.node.textContent)==null?void 0:r.length)??0);a.setStart(o.node,l),a.collapse(!0);const c=document.createElement("span");c.style.display="inline",c.style.width="0",c.style.height="0",c.style.overflow="hidden",c.textContent="\uFEFF",a.insertNode(c),c.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"}),(i=c.parentNode)==null||i.removeChild(c)}catch(a){console.error("Error scrolling to match using temp span:",a),(s=o.node.parentElement)==null||s.scrollIntoView({behavior:"smooth",block:"nearest"})}else console.warn("Could not find start node for scrolling to match:",n)},highlightMatch(t,e=!0){var s,a;if(this.isFunctionLanguage||!this.$refs.codeContentEditable||t<0||t>=this.searchResults.length){const l=window.getSelection();if(l&&l.rangeCount>0&&this.$refs.codeContentEditable.contains(l.anchorNode)){const c=l.getRangeAt(0);this.$refs.codeContentEditable.contains(c.commonAncestorContainer)&&l.removeAllRanges()}return}const n=this.$refs.codeContentEditable,o=this.searchResults[t],r=q2(n,o.start),i=q2(n,o.end);if(r&&i)try{const l=document.createRange(),c=Math.min(r.offset,((s=r.node.textContent)==null?void 0:s.length)??0),u=Math.min(i.offset,((a=i.node.textContent)==null?void 0:a.length)??0);l.setStart(r.node,c),l.setEnd(i.node,u);const d=window.getSelection();d==null||d.removeAllRanges(),d==null||d.addRange(l),e&&this.scrollToMatch(t)}catch(l){console.error("Error creating or selecting range for highlight:",l,"Match:",o,"Start:",r,"End:",i)}else{console.warn("Could not find text nodes for highlighting match:",o);const l=window.getSelection();l&&l.rangeCount>0&&n.contains(l.anchorNode)&&l.removeAllRanges()}},findNextAndHighlight(){if(!this.hasMatches)return;let t=this.currentMatchIndex+1;t>=this.searchResults.length&&(t=0),this.currentMatchIndex=t,this.highlightMatch(this.currentMatchIndex,!0),this.$nextTick(()=>{var e;return(e=this.$refs.searchInputRef)==null?void 0:e.focus()})},findPreviousAndHighlight(){if(!this.hasMatches)return;let t=this.currentMatchIndex-1;t<0&&(t=this.searchResults.length-1),this.currentMatchIndex=t,this.highlightMatch(this.currentMatchIndex,!0),this.$nextTick(()=>{var e;return(e=this.$refs.searchInputRef)==null?void 0:e.focus()})},replaceCurrent(){if(this.isFunctionLanguage||!this.$refs.codeContentEditable||!this.hasActiveMatch)return;this.snapshotState(this.internalCode);const t=this.$refs.codeContentEditable,n=this.searchResults[this.currentMatchIndex].start;this.highlightMatch(this.currentMatchIndex,!1),this.$nextTick(()=>{const o=window.getSelection();if(o&&!o.isCollapsed&&t.contains(o.anchorNode)){const r=o.getRangeAt(0);r.deleteContents();const i=document.createTextNode(this.replaceQuery);r.insertNode(i),r.setStartAfter(i),r.collapse(!0),o.removeAllRanges(),o.addRange(r);const s=t.innerText;if(this.internalCode=s,this.$emit("update-code",s),this.findMatchesLogic(),this.hasMatches){let a=this.searchResults.findIndex(l=>l.start>=n);a===-1&&(a=0),this.currentMatchIndex=a,this.highlightMatch(this.currentMatchIndex,!0)}else this.currentMatchIndex=-1}else console.warn("Replace current failed: No active selection found or selection outside editor."),this.findMatchesLogic();this.$nextTick(()=>{var r;return(r=this.$refs.searchInputRef)==null?void 0:r.focus()})})},replaceCurrentAndFindNext(){this.hasActiveMatch&&this.replaceCurrent()},replaceAll(){if(this.isFunctionLanguage||!this.$refs.codeContentEditable||!this.hasMatches||!this.searchQuery)return;this.snapshotState(this.internalCode);const e=this.$refs.codeContentEditable.innerText,n=this.searchQuery,o=this.replaceQuery;let r=e,i=0;const s=[...this.searchResults];try{if(typeof r.replaceAll=="function"){const a=r.length;r=r.replaceAll(n,o),i=(a-r.length+o.length*(a-r.length)/n.length)/n.length,a!==r.length&&(i=s.length)}else{const a=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g"),l=r.length;r=r.replace(a,o),l!==r.length&&(i=s.length)}}catch(a){console.error("Error during replaceAll:",a),alert("An error occurred during Replace All. Operation halted.");return}i>0||e!==r?(this.internalCode=r,this.applyHighlighting(r,!1),this.$emit("update-code",r),this.clearSearchState(!1),this.$nextTick(()=>{var a;this.findMatchesLogic(),(a=this.$refs.searchInputRef)==null||a.focus()})):(console.log("Replace All: No instances found or no change made."),this.$nextTick(()=>{var a;return(a=this.$refs.searchInputRef)==null?void 0:a.focus()}))}},created(){this.debouncedHandleInput=Vb(this.handleInputLogic,Oot),this.debouncedFindMatches=Vb(this.findMatchesLogic,wot),this.internalCode=this.safeCodeProp,this.isFunctionLanguage||(this.undoStack=[this.internalCode])},mounted(){this.isComponentMounted=!0,!this.isFunctionLanguage&&this.$refs.codeContentEditable&&this.applyHighlighting(this.internalCode),this.triggerIconUpdate()},beforeUnmount(){var t,e;this.copyTimeout&&clearTimeout(this.copyTimeout),(t=this.debouncedHandleInput)==null||t.cancel(),(e=this.debouncedFindMatches)==null||e.cancel()}},Dot=["id"],Iot={key:0},kot={class:"flex justify-between items-center px-2 py-1 mb-1 rounded-t-lg bg-gray-200 dark:bg-gray-700"},Hot={class:"flex flex-row space-x-1"},Pot=["title","disabled"],$ot=["data-feather"],Vot=["title"],Bot=["data-feather"],Fot={class:"p-2 rounded-b-md bg-white dark:bg-gray-800"},Uot=["aria-expanded"],qot={key:0,class:"font-mono bg-gray-100 dark:bg-gray-700 px-1 py-0.5 rounded text-gray-900 dark:text-gray-100 break-all"},Got={key:1,class:"flex items-center text-amber-600 dark:text-amber-400"},jot={class:"mt-2 pt-2 border-t border-gray-200 dark:border-gray-700 max-h-60 overflow-y-auto scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600"},zot={key:0},Yot={key:0,class:"space-y-2"},Wot={class:"text-xs font-semibold text-gray-600 dark:text-gray-400 mb-0.5"},Kot={key:0,class:"text-xs font-mono bg-gray-100 dark:bg-gray-700 p-1 rounded text-gray-900 dark:text-gray-100 whitespace-pre-wrap break-words"},Zot={key:1,class:"text-sm font-mono text-blue-600 dark:text-blue-400"},Xot={key:2,class:"text-sm font-mono text-green-700 dark:text-green-400"},Jot={key:3,class:"text-sm font-mono text-purple-600 dark:text-purple-400"},est={key:4,class:"text-sm font-mono bg-gray-100 dark:bg-gray-700 p-1 rounded text-gray-900 dark:text-gray-100 whitespace-pre-wrap break-words"},tst={key:1,class:"text-xs text-gray-500 italic"},nst={key:1},rst={class:"text-xs font-mono bg-red-50 dark:bg-red-900/20 p-2 rounded max-h-48 overflow-y-auto text-red-800 dark:text-red-300 whitespace-pre-wrap break-all"},ist={class:"flex justify-between items-center px-2 py-1 mb-1 rounded-t-lg bg-gray-200 dark:bg-gray-700"},ost={class:"text-sm font-semibold text-gray-700 dark:text-gray-300"},sst={class:"flex flex-row space-x-1 items-center"},ast=["disabled"],lst=["disabled"],cst=["title"],ust=["data-feather"],dst=["title"],Tst=["data-feather"],fst=["title","disabled"],pst=["data-feather"],hst=["title","disabled"],mst=["data-feather"],gst={key:0,class:"search-replace-panel flex items-center space-x-2 p-2 bg-gray-100 dark:bg-gray-700 text-sm mb-1 rounded"},_st={key:0,class:"search-status","aria-live":"polite"},Qst={key:1,class:"search-status text-gray-400 dark:text-gray-500","aria-live":"polite"},vst=["disabled"],yst=["disabled"],bst=["disabled"],Est=["disabled"],Sst={ref:"codeAreaWrapper",class:"code-area-wrapper max-h-96 overflow-y-auto rounded-b-md bg-white dark:bg-gray-800 scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"},xst={class:"code-content-flex flex font-mono text-sm leading-snug"},Lst=["innerHTML"],Cst=["aria-label"],Ast={key:2,class:"mt-2","aria-live":"polite"},wst=["innerHTML"];function Ost(t,e,n,o,r,i){return N(),H("div",{id:`code-block-container-${n.message_id}`,class:"code-block-container bg-bg-light-tone-panel dark:bg-bg-dark-tone-panel p-2 rounded-lg shadow-sm mb-4"},[i.isFunctionLanguage?(N(),H("div",Iot,[S("div",kot,[e[29]||(e[29]=S("span",{class:"text-sm font-semibold text-gray-700 dark:text-gray-300"},[S("i",{"data-feather":"zap",class:"w-3 h-3 inline-block mr-1 feather-small"}),Re(" Function Call ")],-1)),S("div",Hot,[S("button",{onClick:e[0]||(e[0]=(...s)=>i.executeCode&&i.executeCode(...s)),title:i.executeTitle,class:"code-block-button execute-button",disabled:r.isExecuting||!i.isValidFunctionCall,"aria-label":"Execute Function Call"},[S("i",{"data-feather":i.executeIcon,class:Ee([{"animate-spin":r.isExecuting},"w-4 h-4"])},null,10,$ot)],8,Pot),S("button",{onClick:e[1]||(e[1]=(...s)=>i.toggleFunctionDetails&&i.toggleFunctionDetails(...s)),title:r.isFunctionDetailsVisible?"Hide Details":"Show Details",class:"code-block-button","aria-label":"Toggle Function Details"},[S("i",{"data-feather":r.isFunctionDetailsVisible?"chevron-up":"chevron-down",class:"w-4 h-4"},null,8,Bot)],8,Vot)])]),S("div",Fot,[S("div",{class:"flex items-center space-x-2 text-sm mb-1 cursor-pointer hover:opacity-80",onClick:e[2]||(e[2]=(...s)=>i.toggleFunctionDetails&&i.toggleFunctionDetails(...s)),role:"button","aria-expanded":r.isFunctionDetailsVisible},[e[31]||(e[31]=S("span",{class:"font-semibold text-gray-700 dark:text-gray-300"},"Function:",-1)),i.isValidFunctionCall?(N(),H("span",qot,J(i.functionName),1)):(N(),H("span",Got,e[30]||(e[30]=[S("i",{"data-feather":"alert-circle",class:"w-4 h-4 mr-1 feather-small"},null,-1),Re(" Invalid / Incomplete ")])))],8,Uot),Le(S("div",jot,[i.isValidFunctionCall?(N(),H("div",zot,[e[32]||(e[32]=S("h4",{class:"text-xs font-semibold uppercase text-gray-500 dark:text-gray-400 mb-2 sticky top-0 bg-white dark:bg-gray-800 py-1"},"Parameters:",-1)),i.hasParameters?(N(),H("div",Yot,[(N(!0),H(xe,null,Pe(i.functionParametersObject,(s,a)=>(N(),H("div",{key:a,class:"parameter-item"},[S("div",Wot,J(a)+":",1),typeof s=="object"&&s!==null?(N(),H("div",Kot,J(JSON.stringify(s,null,2)),1)):typeof s=="boolean"?(N(),H("div",Zot,J(String(s)),1)):typeof s=="number"?(N(),H("div",Xot,J(s),1)):s===null?(N(),H("div",Jot,"null")):(N(),H("div",est,'"'+J(String(s))+'"',1))]))),128))])):(N(),H("span",tst,"No parameters provided."))])):(N(),H("div",nst,[e[33]||(e[33]=S("h4",{class:"text-xs font-semibold uppercase text-red-600 dark:text-red-400 mb-1"},"Invalid JSON Input:",-1)),S("pre",rst,J(i.safeCodeProp||"(empty)"),1)]))],512),[[An,r.isFunctionDetailsVisible]])])])):Y$([i.safeCodeProp,i.safeLanguageProp,r.isSearchVisible,i.canUndo,i.canRedo],()=>(N(),H("div",{key:1},[S("div",ist,[S("span",ost,J(i.effectiveLanguage||"plaintext"),1),S("div",sst,[S("button",{onClick:e[3]||(e[3]=(...s)=>i.undo&&i.undo(...s)),disabled:!i.canUndo,title:"Undo (Ctrl+Z)",class:"code-block-button","aria-label":"Undo Edit"},e[34]||(e[34]=[S("i",{"data-feather":"rotate-ccw",class:"w-4 h-4"},null,-1)]),8,ast),S("button",{onClick:e[4]||(e[4]=(...s)=>i.redo&&i.redo(...s)),disabled:!i.canRedo,title:"Redo (Ctrl+Y)",class:"code-block-button","aria-label":"Redo Edit"},e[35]||(e[35]=[S("i",{"data-feather":"rotate-cw",class:"w-4 h-4"},null,-1)]),8,lst),e[39]||(e[39]=S("div",{class:"h-4 w-px bg-gray-400 dark:bg-gray-600 mx-1"},null,-1)),S("button",{onClick:e[5]||(e[5]=(...s)=>i.toggleSearch&&i.toggleSearch(...s)),title:r.isSearchVisible?"Hide Search":"Show Search",class:"code-block-button","aria-label":"Toggle Search"},[S("i",{"data-feather":r.isSearchVisible?"x":"search",class:"w-4 h-4"},null,8,ust)],8,cst),S("button",{onClick:e[6]||(e[6]=(...s)=>i.copyCode&&i.copyCode(...s)),title:i.copyTitle,class:"code-block-button","aria-label":"Copy Code"},[S("i",{"data-feather":i.copyIcon,class:"w-4 h-4"},null,8,Tst)],8,dst),i.canExecute?(N(),H("button",{key:0,onClick:e[7]||(e[7]=(...s)=>i.executeCode&&i.executeCode(...s)),title:i.executeTitle,class:"code-block-button execute-button",disabled:r.isExecuting,"aria-label":"Execute Code"},[S("i",{"data-feather":i.executeIcon,class:Ee([{"animate-spin":r.isExecuting},"w-4 h-4"])},null,10,pst)],8,fst)):Z("",!0),i.canExecuteInNewTab?(N(),H("button",{key:1,onClick:e[8]||(e[8]=(...s)=>i.executeCode_in_new_tab&&i.executeCode_in_new_tab(...s)),title:i.executeNewTabTitle,class:"code-block-button execute-button",disabled:r.isExecuting,"aria-label":"Execute Code in New Tab"},[S("i",{"data-feather":i.executeNewTabIcon,class:Ee([{"animate-spin":r.isExecuting},"w-4 h-4"])},null,10,mst)],8,hst)):Z("",!0),S("button",{onClick:e[9]||(e[9]=(...s)=>i.openFolder&&i.openFolder(...s)),title:"Open Project Folder",class:"code-block-button","aria-label":"Open Project Folder"},e[36]||(e[36]=[S("i",{"data-feather":"folder",class:"w-4 h-4"},null,-1)])),i.canOpenFolderInVsCode?(N(),H("button",{key:2,onClick:e[10]||(e[10]=(...s)=>i.openFolderVsCode&&i.openFolderVsCode(...s)),title:"Open Project Folder in VS Code",class:"code-block-button","aria-label":"Open Project Folder in VS Code"},e[37]||(e[37]=[S("img",{src:Lot,class:"w-4 h-4 dark:hidden",alt:"VS Code"},null,-1),S("img",{src:Bb,class:"w-4 h-4 hidden dark:inline",alt:"VS Code"},null,-1)]))):Z("",!0),i.canOpenInVsCode?(N(),H("button",{key:3,onClick:e[11]||(e[11]=(...s)=>i.openVsCode&&i.openVsCode(...s)),title:"Open Code in VS Code",class:"code-block-button","aria-label":"Open Code in VS Code"},e[38]||(e[38]=[S("img",{src:Bb,class:"w-4 h-4",alt:"VS Code"},null,-1)]))):Z("",!0)])]),r.isSearchVisible?(N(),H("div",gst,[Le(S("input",{ref:"searchInputRef",type:"text","onUpdate:modelValue":e[12]||(e[12]=s=>r.searchQuery=s),placeholder:"Find",class:"search-input flex-grow","aria-label":"Search query",onKeydown:[e[13]||(e[13]=Qn(oe((...s)=>i.findNextAndHighlight&&i.findNextAndHighlight(...s),["prevent"]),["enter"])),e[14]||(e[14]=Qn(oe((...s)=>i.findPreviousAndHighlight&&i.findPreviousAndHighlight(...s),["shift","prevent"]),["enter"]))]},null,544),[[Je,r.searchQuery,void 0,{lazy:!0}]]),r.searchQuery?(N(),H("span",_st,J(r.searchResults.length>0?`${i.currentMatchIndexDisplay+1} / ${r.searchResults.length}`:"Not found"),1)):(N(),H("span",Qst,"   ")),S("button",{onClick:e[15]||(e[15]=(...s)=>i.findPreviousAndHighlight&&i.findPreviousAndHighlight(...s)),disabled:!i.hasMatches,title:"Previous Match (Shift+Enter)",class:"code-block-button search-button","aria-label":"Previous Match"},e[40]||(e[40]=[S("i",{"data-feather":"chevron-left",class:"w-4 h-4"},null,-1)]),8,vst),S("button",{onClick:e[16]||(e[16]=(...s)=>i.findNextAndHighlight&&i.findNextAndHighlight(...s)),disabled:!i.hasMatches,title:"Next Match (Enter)",class:"code-block-button search-button","aria-label":"Next Match"},e[41]||(e[41]=[S("i",{"data-feather":"chevron-right",class:"w-4 h-4"},null,-1)]),8,yst),Le(S("input",{type:"text","onUpdate:modelValue":e[17]||(e[17]=s=>r.replaceQuery=s),placeholder:"Replace with",class:"replace-input flex-grow","aria-label":"Replace query",onKeydown:e[18]||(e[18]=Qn(oe((...s)=>i.replaceCurrentAndFindNext&&i.replaceCurrentAndFindNext(...s),["prevent"]),["enter"]))},null,544),[[Je,r.replaceQuery]]),S("button",{onClick:e[19]||(e[19]=(...s)=>i.replaceCurrent&&i.replaceCurrent(...s)),disabled:!i.hasActiveMatch,title:"Replace Current",class:"code-block-button search-button","aria-label":"Replace Current"},"Replace",8,bst),S("button",{onClick:e[20]||(e[20]=(...s)=>i.replaceAll&&i.replaceAll(...s)),disabled:!i.hasMatches,title:"Replace All",class:"code-block-button search-button","aria-label":"Replace All"},"All",8,Est)])):Z("",!0),S("div",Sst,[S("div",xst,[S("div",{class:"line-numbers flex-shrink-0 p-2 text-right text-gray-500 select-none bg-gray-100 dark:bg-gray-700 whitespace-pre overflow-y-hidden border-r border-gray-300 dark:border-gray-600",innerHTML:i.lineNumbersHtml,"aria-hidden":"true"},null,8,Lst),S("div",{ref:"codeContentEditable",class:"code-content hljs flex-grow p-2 whitespace-pre-wrap break-words overflow-x-auto overflow-y-hidden scrollbar-thin scrollbar-track-transparent scrollbar-thumb-gray-400 dark:scrollbar-thumb-gray-500 focus:outline-none",contenteditable:"true",spellcheck:"false",role:"textbox","aria-multiline":"true","aria-label":`Code block (${i.effectiveLanguage||"plaintext"})`,onInput:e[21]||(e[21]=(...s)=>r.debouncedHandleInput&&r.debouncedHandleInput(...s)),onPaste:e[22]||(e[22]=(...s)=>i.handlePaste&&i.handlePaste(...s)),onKeydown:[e[23]||(e[23]=Qn(oe((...s)=>i.handleEnterKey&&i.handleEnterKey(...s),["prevent"]),["enter"])),e[24]||(e[24]=Qn(oe((...s)=>i.handleTabKey&&i.handleTabKey(...s),["prevent"]),["tab"])),e[27]||(e[27]=(...s)=>i.handleUndoRedoKeys&&i.handleUndoRedoKeys(...s))],onBlur:e[25]||(e[25]=(...s)=>i.handleBlur&&i.handleBlur(...s)),onClick:e[26]||(e[26]=(...s)=>i.clearSelectionIfOutsideSearch&&i.clearSelectionIfOutsideSearch(...s))},null,40,Cst)])],512)])),e,28),r.executionOutput?(N(),H("div",Ast,[e[42]||(e[42]=S("span",{class:"text-lg font-semibold text-gray-700 dark:text-gray-300"},"Execution Output:",-1)),S("div",{class:"execution-output-content hljs mt-1 p-2 rounded-md break-words text-sm leading-relaxed bg-white dark:bg-gray-800 max-h-48 overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary",innerHTML:i.sanitizedExecutionOutputHtml},null,8,wst)])):Z("",!0)],8,Dot)}const Mst=Ye(Not,[["render",Ost],["__scopeId","data-v-6c0ead0d"]]);function Rp(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let k2=Rp();function XN(t){k2=t}const JN=/[&<>"']/,Rst=new RegExp(JN.source,"g"),eD=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Nst=new RegExp(eD.source,"g"),Dst={"&":"&","<":"<",">":">",'"':""","'":"'"},qb=t=>Dst[t];function Si(t,e){if(e){if(JN.test(t))return t.replace(Rst,qb)}else if(eD.test(t))return t.replace(Nst,qb);return t}const Ist=/(^|[^\[])\^/g;function tn(t,e){let n=typeof t=="string"?t:t.source;e=e||"";const o={replace:(r,i)=>{let s=typeof i=="string"?i:i.source;return s=s.replace(Ist,"$1"),n=n.replace(r,s),o},getRegex:()=>new RegExp(n,e)};return o}function Gb(t){try{t=encodeURI(t).replace(/%25/g,"%")}catch{return null}return t}const mc={exec:()=>null};function jb(t,e){const n=t.replace(/\|/g,(i,s,a)=>{let l=!1,c=s;for(;--c>=0&&a[c]==="\\";)l=!l;return l?"|":" |"}),o=n.split(/ \|/);let r=0;if(o[0].trim()||o.shift(),o.length>0&&!o[o.length-1].trim()&&o.pop(),e)if(o.length>e)o.splice(e);else for(;o.length{console.error("Code execution request failed:",r),this.executionOutput=`Execution Error: ${r.message}`}).finally(()=>{this.isExecuting=!1,this.triggerIconUpdate(),this.$nextTick(()=>{const r=this.$el.querySelector(".execution-output-content");r==null||r.scrollIntoView({behavior:"smooth",block:"nearest"})})})},executeCode(){this.executeCodeInternal("execute_code",!1)},executeCode_in_new_tab(){this.executeCodeInternal("execute_code_in_new_tab",!0)},postRequest(t,e={}){const n={...e};t==="open_code_in_vs_code"&&(n.code=this.getActualCode()),fetch(`${this.host}/${t}`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(n)}).then(async o=>{if(!o.ok){let i=`HTTP Status ${o.status}`;try{const s=await o.json();i+=`: ${s.detail||JSON.stringify(s)}`}catch{i+=` (${o.statusText})`}throw new Error(i)}const r=o.headers.get("content-type");return r&&r.includes("application/json")?o.json():{}}).then(o=>{console.log(`POST request to ${t} successful:`,o)}).catch(o=>{console.error(`Fetch error during POST to ${t}:`,o),alert(`Operation failed: ${o.message}`)})},openFolderVsCode(){this.postRequest("open_discussion_folder_in_vs_code",{client_id:this.client_id,discussion_id:this.discussion_id})},openVsCode(){this.postRequest("open_code_in_vs_code",{client_id:this.client_id,discussion_id:this.discussion_id,message_id:this.message_id})},openFolder(){this.postRequest("open_discussion_folder",{client_id:this.client_id,discussion_id:this.discussion_id})},toggleFunctionDetails(){this.isFunctionDetailsVisible=!this.isFunctionDetailsVisible,this.triggerIconUpdate()},clearSearchState(t=!1){var e;if(t&&(this.searchQuery="",this.replaceQuery=""),this.searchResults.length>0||this.currentMatchIndex!==-1){this.searchResults=[],this.currentMatchIndex=-1;const n=window.getSelection();if(n&&n.rangeCount>0&&((e=this.$refs.codeContentEditable)!=null&&e.contains(n.anchorNode))){const o=n.getRangeAt(0);this.$refs.codeContentEditable.contains(o.commonAncestorContainer)&&n.removeAllRanges()}}},toggleSearch(){this.isSearchVisible=!this.isSearchVisible,this.isSearchVisible?this.$nextTick(()=>{var t;(t=this.$refs.searchInputRef)==null||t.focus(),this.searchQuery&&this.debouncedFindMatches()}):this.clearSearchState(!0),this.triggerIconUpdate()},findMatchesLogic(){if(this.isFunctionLanguage||!this.$refs.codeContentEditable)return;const t=this.$refs.codeContentEditable,e=t.innerText,n=this.searchQuery;if(!n){this.clearSearchState(!1);return}const o=[];let r=0,i;for(;(i=e.indexOf(n,r))>-1&&(o.push({start:i,end:i+n.length}),n.length!==0);)r=i+1;if(this.searchResults=o,o.length>0)this.currentMatchIndex===-1?(this.currentMatchIndex=0,this.highlightMatch(0,!1)):this.currentMatchIndex>=o.length?(this.currentMatchIndex=0,this.highlightMatch(0,!1)):this.highlightMatch(this.currentMatchIndex,!1);else{this.currentMatchIndex=-1;const s=window.getSelection();if(s&&s.rangeCount>0&&t.contains(s.anchorNode)){const a=s.getRangeAt(0);t.contains(a.commonAncestorContainer)&&s.removeAllRanges()}}},scrollToMatch(t){var r,i,s;if(this.isFunctionLanguage||!this.$refs.codeContentEditable||t<0||t>=this.searchResults.length)return;const e=this.$refs.codeContentEditable,n=this.searchResults[t],o=q2(e,n.start);if(o!=null&&o.node)try{const a=document.createRange(),l=Math.min(o.offset,((r=o.node.textContent)==null?void 0:r.length)??0);a.setStart(o.node,l),a.collapse(!0);const c=document.createElement("span");c.style.display="inline",c.style.width="0",c.style.height="0",c.style.overflow="hidden",c.textContent="\uFEFF",a.insertNode(c),c.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"}),(i=c.parentNode)==null||i.removeChild(c)}catch(a){console.error("Error scrolling to match using temp span:",a),(s=o.node.parentElement)==null||s.scrollIntoView({behavior:"smooth",block:"nearest"})}else console.warn("Could not find start node for scrolling to match:",n)},highlightMatch(t,e=!0){var s,a;if(this.isFunctionLanguage||!this.$refs.codeContentEditable||t<0||t>=this.searchResults.length){const l=window.getSelection();if(l&&l.rangeCount>0&&this.$refs.codeContentEditable.contains(l.anchorNode)){const c=l.getRangeAt(0);this.$refs.codeContentEditable.contains(c.commonAncestorContainer)&&l.removeAllRanges()}return}const n=this.$refs.codeContentEditable,o=this.searchResults[t],r=q2(n,o.start),i=q2(n,o.end);if(r&&i)try{const l=document.createRange(),c=Math.min(r.offset,((s=r.node.textContent)==null?void 0:s.length)??0),u=Math.min(i.offset,((a=i.node.textContent)==null?void 0:a.length)??0);l.setStart(r.node,c),l.setEnd(i.node,u);const d=window.getSelection();d==null||d.removeAllRanges(),d==null||d.addRange(l),e&&this.scrollToMatch(t)}catch(l){console.error("Error creating or selecting range for highlight:",l,"Match:",o,"Start:",r,"End:",i)}else{console.warn("Could not find text nodes for highlighting match:",o);const l=window.getSelection();l&&l.rangeCount>0&&n.contains(l.anchorNode)&&l.removeAllRanges()}},findNextAndHighlight(){if(!this.hasMatches)return;let t=this.currentMatchIndex+1;t>=this.searchResults.length&&(t=0),this.currentMatchIndex=t,this.highlightMatch(this.currentMatchIndex,!0),this.$nextTick(()=>{var e;return(e=this.$refs.searchInputRef)==null?void 0:e.focus()})},findPreviousAndHighlight(){if(!this.hasMatches)return;let t=this.currentMatchIndex-1;t<0&&(t=this.searchResults.length-1),this.currentMatchIndex=t,this.highlightMatch(this.currentMatchIndex,!0),this.$nextTick(()=>{var e;return(e=this.$refs.searchInputRef)==null?void 0:e.focus()})},replaceCurrent(){if(this.isFunctionLanguage||!this.$refs.codeContentEditable||!this.hasActiveMatch)return;this.snapshotState(this.internalCode);const t=this.$refs.codeContentEditable,n=this.searchResults[this.currentMatchIndex].start;this.highlightMatch(this.currentMatchIndex,!1),this.$nextTick(()=>{const o=window.getSelection();if(o&&!o.isCollapsed&&t.contains(o.anchorNode)){const r=o.getRangeAt(0);r.deleteContents();const i=document.createTextNode(this.replaceQuery);r.insertNode(i),r.setStartAfter(i),r.collapse(!0),o.removeAllRanges(),o.addRange(r);const s=t.innerText;if(this.internalCode=s,this.$emit("update-code",s),this.findMatchesLogic(),this.hasMatches){let a=this.searchResults.findIndex(l=>l.start>=n);a===-1&&(a=0),this.currentMatchIndex=a,this.highlightMatch(this.currentMatchIndex,!0)}else this.currentMatchIndex=-1}else console.warn("Replace current failed: No active selection found or selection outside editor."),this.findMatchesLogic();this.$nextTick(()=>{var r;return(r=this.$refs.searchInputRef)==null?void 0:r.focus()})})},replaceCurrentAndFindNext(){this.hasActiveMatch&&this.replaceCurrent()},replaceAll(){if(this.isFunctionLanguage||!this.$refs.codeContentEditable||!this.hasMatches||!this.searchQuery)return;this.snapshotState(this.internalCode);const e=this.$refs.codeContentEditable.innerText,n=this.searchQuery,o=this.replaceQuery;let r=e,i=0;const s=[...this.searchResults];try{if(typeof r.replaceAll=="function"){const a=r.length;r=r.replaceAll(n,o),i=(a-r.length+o.length*(a-r.length)/n.length)/n.length,a!==r.length&&(i=s.length)}else{const a=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g"),l=r.length;r=r.replace(a,o),l!==r.length&&(i=s.length)}}catch(a){console.error("Error during replaceAll:",a),alert("An error occurred during Replace All. Operation halted.");return}i>0||e!==r?(this.internalCode=r,this.applyHighlighting(r,!1),this.$emit("update-code",r),this.clearSearchState(!1),this.$nextTick(()=>{var a;this.findMatchesLogic(),(a=this.$refs.searchInputRef)==null||a.focus()})):(console.log("Replace All: No instances found or no change made."),this.$nextTick(()=>{var a;return(a=this.$refs.searchInputRef)==null?void 0:a.focus()}))}},created(){this.debouncedHandleInput=Vb(this.handleInputLogic,Oot),this.debouncedFindMatches=Vb(this.findMatchesLogic,wot),this.internalCode=this.safeCodeProp,this.isFunctionLanguage||(this.undoStack=[this.internalCode])},mounted(){this.isComponentMounted=!0,!this.isFunctionLanguage&&this.$refs.codeContentEditable&&this.applyHighlighting(this.internalCode),this.triggerIconUpdate()},beforeUnmount(){var t,e;this.copyTimeout&&clearTimeout(this.copyTimeout),(t=this.debouncedHandleInput)==null||t.cancel(),(e=this.debouncedFindMatches)==null||e.cancel()}},Dot=["id"],Iot={key:0},kot={class:"flex justify-between items-center px-2 py-1 mb-1 rounded-t-lg bg-gray-200 dark:bg-gray-700"},Hot={class:"flex flex-row space-x-1"},Pot=["title","disabled"],$ot=["data-feather"],Vot=["title"],Bot=["data-feather"],Fot={class:"p-2 rounded-b-md bg-white dark:bg-gray-800"},Uot=["aria-expanded"],qot={key:0,class:"font-mono bg-gray-100 dark:bg-gray-700 px-1 py-0.5 rounded text-gray-900 dark:text-gray-100 break-all"},Got={key:1,class:"flex items-center text-amber-600 dark:text-amber-400"},jot={class:"mt-2 pt-2 border-t border-gray-200 dark:border-gray-700 max-h-60 overflow-y-auto scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600"},zot={key:0},Yot={key:0,class:"space-y-2"},Wot={class:"text-xs font-semibold text-gray-600 dark:text-gray-400 mb-0.5"},Kot={key:0,class:"text-xs font-mono bg-gray-100 dark:bg-gray-700 p-1 rounded text-gray-900 dark:text-gray-100 whitespace-pre-wrap break-words"},Zot={key:1,class:"text-sm font-mono text-blue-600 dark:text-blue-400"},Xot={key:2,class:"text-sm font-mono text-green-700 dark:text-green-400"},Jot={key:3,class:"text-sm font-mono text-purple-600 dark:text-purple-400"},est={key:4,class:"text-sm font-mono bg-gray-100 dark:bg-gray-700 p-1 rounded text-gray-900 dark:text-gray-100 whitespace-pre-wrap break-words"},tst={key:1,class:"text-xs text-gray-500 italic"},nst={key:1},rst={class:"text-xs font-mono bg-red-50 dark:bg-red-900/20 p-2 rounded max-h-48 overflow-y-auto text-red-800 dark:text-red-300 whitespace-pre-wrap break-all"},ist={class:"flex justify-between items-center px-2 py-1 mb-1 rounded-t-lg bg-gray-200 dark:bg-gray-700"},ost={class:"text-sm font-semibold text-gray-700 dark:text-gray-300"},sst={class:"flex flex-row space-x-1 items-center"},ast=["disabled"],lst=["disabled"],cst=["title"],ust=["data-feather"],dst=["title"],Tst=["data-feather"],fst=["title","disabled"],pst=["data-feather"],hst=["title","disabled"],mst=["data-feather"],gst={key:0,class:"search-replace-panel flex items-center space-x-2 p-2 bg-gray-100 dark:bg-gray-700 text-sm mb-1 rounded"},_st={key:0,class:"search-status","aria-live":"polite"},Qst={key:1,class:"search-status text-gray-400 dark:text-gray-500","aria-live":"polite"},vst=["disabled"],yst=["disabled"],bst=["disabled"],Est=["disabled"],Sst={ref:"codeAreaWrapper",class:"code-area-wrapper max-h-96 overflow-y-auto rounded-b-md bg-white dark:bg-gray-800 scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"},xst={class:"code-content-flex flex font-mono text-sm leading-snug"},Lst=["innerHTML"],Cst=["aria-label"],Ast={key:2,class:"mt-2","aria-live":"polite"},wst=["innerHTML"];function Ost(t,e,n,o,r,i){return N(),H("div",{id:`code-block-container-${n.message_id}`,class:"code-block-container bg-bg-light-tone-panel dark:bg-bg-dark-tone-panel p-2 rounded-lg shadow-sm mb-4"},[i.isFunctionLanguage?(N(),H("div",Iot,[S("div",kot,[e[29]||(e[29]=S("span",{class:"text-sm font-semibold text-gray-700 dark:text-gray-300"},[S("i",{"data-feather":"zap",class:"w-3 h-3 inline-block mr-1 feather-small"}),Me(" Function Call ")],-1)),S("div",Hot,[S("button",{onClick:e[0]||(e[0]=(...s)=>i.executeCode&&i.executeCode(...s)),title:i.executeTitle,class:"code-block-button execute-button",disabled:r.isExecuting||!i.isValidFunctionCall,"aria-label":"Execute Function Call"},[S("i",{"data-feather":i.executeIcon,class:Ee([{"animate-spin":r.isExecuting},"w-4 h-4"])},null,10,$ot)],8,Pot),S("button",{onClick:e[1]||(e[1]=(...s)=>i.toggleFunctionDetails&&i.toggleFunctionDetails(...s)),title:r.isFunctionDetailsVisible?"Hide Details":"Show Details",class:"code-block-button","aria-label":"Toggle Function Details"},[S("i",{"data-feather":r.isFunctionDetailsVisible?"chevron-up":"chevron-down",class:"w-4 h-4"},null,8,Bot)],8,Vot)])]),S("div",Fot,[S("div",{class:"flex items-center space-x-2 text-sm mb-1 cursor-pointer hover:opacity-80",onClick:e[2]||(e[2]=(...s)=>i.toggleFunctionDetails&&i.toggleFunctionDetails(...s)),role:"button","aria-expanded":r.isFunctionDetailsVisible},[e[31]||(e[31]=S("span",{class:"font-semibold text-gray-700 dark:text-gray-300"},"Function:",-1)),i.isValidFunctionCall?(N(),H("span",qot,J(i.functionName),1)):(N(),H("span",Got,e[30]||(e[30]=[S("i",{"data-feather":"alert-circle",class:"w-4 h-4 mr-1 feather-small"},null,-1),Me(" Invalid / Incomplete ")])))],8,Uot),Le(S("div",jot,[i.isValidFunctionCall?(N(),H("div",zot,[e[32]||(e[32]=S("h4",{class:"text-xs font-semibold uppercase text-gray-500 dark:text-gray-400 mb-2 sticky top-0 bg-white dark:bg-gray-800 py-1"},"Parameters:",-1)),i.hasParameters?(N(),H("div",Yot,[(N(!0),H(xe,null,Pe(i.functionParametersObject,(s,a)=>(N(),H("div",{key:a,class:"parameter-item"},[S("div",Wot,J(a)+":",1),typeof s=="object"&&s!==null?(N(),H("div",Kot,J(JSON.stringify(s,null,2)),1)):typeof s=="boolean"?(N(),H("div",Zot,J(String(s)),1)):typeof s=="number"?(N(),H("div",Xot,J(s),1)):s===null?(N(),H("div",Jot,"null")):(N(),H("div",est,'"'+J(String(s))+'"',1))]))),128))])):(N(),H("span",tst,"No parameters provided."))])):(N(),H("div",nst,[e[33]||(e[33]=S("h4",{class:"text-xs font-semibold uppercase text-red-600 dark:text-red-400 mb-1"},"Invalid JSON Input:",-1)),S("pre",rst,J(i.safeCodeProp||"(empty)"),1)]))],512),[[An,r.isFunctionDetailsVisible]])])])):Y$([i.safeCodeProp,i.safeLanguageProp,r.isSearchVisible,i.canUndo,i.canRedo],()=>(N(),H("div",{key:1},[S("div",ist,[S("span",ost,J(i.effectiveLanguage||"plaintext"),1),S("div",sst,[S("button",{onClick:e[3]||(e[3]=(...s)=>i.undo&&i.undo(...s)),disabled:!i.canUndo,title:"Undo (Ctrl+Z)",class:"code-block-button","aria-label":"Undo Edit"},e[34]||(e[34]=[S("i",{"data-feather":"rotate-ccw",class:"w-4 h-4"},null,-1)]),8,ast),S("button",{onClick:e[4]||(e[4]=(...s)=>i.redo&&i.redo(...s)),disabled:!i.canRedo,title:"Redo (Ctrl+Y)",class:"code-block-button","aria-label":"Redo Edit"},e[35]||(e[35]=[S("i",{"data-feather":"rotate-cw",class:"w-4 h-4"},null,-1)]),8,lst),e[39]||(e[39]=S("div",{class:"h-4 w-px bg-gray-400 dark:bg-gray-600 mx-1"},null,-1)),S("button",{onClick:e[5]||(e[5]=(...s)=>i.toggleSearch&&i.toggleSearch(...s)),title:r.isSearchVisible?"Hide Search":"Show Search",class:"code-block-button","aria-label":"Toggle Search"},[S("i",{"data-feather":r.isSearchVisible?"x":"search",class:"w-4 h-4"},null,8,ust)],8,cst),S("button",{onClick:e[6]||(e[6]=(...s)=>i.copyCode&&i.copyCode(...s)),title:i.copyTitle,class:"code-block-button","aria-label":"Copy Code"},[S("i",{"data-feather":i.copyIcon,class:"w-4 h-4"},null,8,Tst)],8,dst),i.canExecute?(N(),H("button",{key:0,onClick:e[7]||(e[7]=(...s)=>i.executeCode&&i.executeCode(...s)),title:i.executeTitle,class:"code-block-button execute-button",disabled:r.isExecuting,"aria-label":"Execute Code"},[S("i",{"data-feather":i.executeIcon,class:Ee([{"animate-spin":r.isExecuting},"w-4 h-4"])},null,10,pst)],8,fst)):Z("",!0),i.canExecuteInNewTab?(N(),H("button",{key:1,onClick:e[8]||(e[8]=(...s)=>i.executeCode_in_new_tab&&i.executeCode_in_new_tab(...s)),title:i.executeNewTabTitle,class:"code-block-button execute-button",disabled:r.isExecuting,"aria-label":"Execute Code in New Tab"},[S("i",{"data-feather":i.executeNewTabIcon,class:Ee([{"animate-spin":r.isExecuting},"w-4 h-4"])},null,10,mst)],8,hst)):Z("",!0),S("button",{onClick:e[9]||(e[9]=(...s)=>i.openFolder&&i.openFolder(...s)),title:"Open Project Folder",class:"code-block-button","aria-label":"Open Project Folder"},e[36]||(e[36]=[S("i",{"data-feather":"folder",class:"w-4 h-4"},null,-1)])),i.canOpenFolderInVsCode?(N(),H("button",{key:2,onClick:e[10]||(e[10]=(...s)=>i.openFolderVsCode&&i.openFolderVsCode(...s)),title:"Open Project Folder in VS Code",class:"code-block-button","aria-label":"Open Project Folder in VS Code"},e[37]||(e[37]=[S("img",{src:Lot,class:"w-4 h-4 dark:hidden",alt:"VS Code"},null,-1),S("img",{src:Bb,class:"w-4 h-4 hidden dark:inline",alt:"VS Code"},null,-1)]))):Z("",!0),i.canOpenInVsCode?(N(),H("button",{key:3,onClick:e[11]||(e[11]=(...s)=>i.openVsCode&&i.openVsCode(...s)),title:"Open Code in VS Code",class:"code-block-button","aria-label":"Open Code in VS Code"},e[38]||(e[38]=[S("img",{src:Bb,class:"w-4 h-4",alt:"VS Code"},null,-1)]))):Z("",!0)])]),r.isSearchVisible?(N(),H("div",gst,[Le(S("input",{ref:"searchInputRef",type:"text","onUpdate:modelValue":e[12]||(e[12]=s=>r.searchQuery=s),placeholder:"Find",class:"search-input flex-grow","aria-label":"Search query",onKeydown:[e[13]||(e[13]=Qn(oe((...s)=>i.findNextAndHighlight&&i.findNextAndHighlight(...s),["prevent"]),["enter"])),e[14]||(e[14]=Qn(oe((...s)=>i.findPreviousAndHighlight&&i.findPreviousAndHighlight(...s),["shift","prevent"]),["enter"]))]},null,544),[[Je,r.searchQuery,void 0,{lazy:!0}]]),r.searchQuery?(N(),H("span",_st,J(r.searchResults.length>0?`${i.currentMatchIndexDisplay+1} / ${r.searchResults.length}`:"Not found"),1)):(N(),H("span",Qst,"   ")),S("button",{onClick:e[15]||(e[15]=(...s)=>i.findPreviousAndHighlight&&i.findPreviousAndHighlight(...s)),disabled:!i.hasMatches,title:"Previous Match (Shift+Enter)",class:"code-block-button search-button","aria-label":"Previous Match"},e[40]||(e[40]=[S("i",{"data-feather":"chevron-left",class:"w-4 h-4"},null,-1)]),8,vst),S("button",{onClick:e[16]||(e[16]=(...s)=>i.findNextAndHighlight&&i.findNextAndHighlight(...s)),disabled:!i.hasMatches,title:"Next Match (Enter)",class:"code-block-button search-button","aria-label":"Next Match"},e[41]||(e[41]=[S("i",{"data-feather":"chevron-right",class:"w-4 h-4"},null,-1)]),8,yst),Le(S("input",{type:"text","onUpdate:modelValue":e[17]||(e[17]=s=>r.replaceQuery=s),placeholder:"Replace with",class:"replace-input flex-grow","aria-label":"Replace query",onKeydown:e[18]||(e[18]=Qn(oe((...s)=>i.replaceCurrentAndFindNext&&i.replaceCurrentAndFindNext(...s),["prevent"]),["enter"]))},null,544),[[Je,r.replaceQuery]]),S("button",{onClick:e[19]||(e[19]=(...s)=>i.replaceCurrent&&i.replaceCurrent(...s)),disabled:!i.hasActiveMatch,title:"Replace Current",class:"code-block-button search-button","aria-label":"Replace Current"},"Replace",8,bst),S("button",{onClick:e[20]||(e[20]=(...s)=>i.replaceAll&&i.replaceAll(...s)),disabled:!i.hasMatches,title:"Replace All",class:"code-block-button search-button","aria-label":"Replace All"},"All",8,Est)])):Z("",!0),S("div",Sst,[S("div",xst,[S("div",{class:"line-numbers flex-shrink-0 p-2 text-right text-gray-500 select-none bg-gray-100 dark:bg-gray-700 whitespace-pre overflow-y-hidden border-r border-gray-300 dark:border-gray-600",innerHTML:i.lineNumbersHtml,"aria-hidden":"true"},null,8,Lst),S("div",{ref:"codeContentEditable",class:"code-content hljs flex-grow p-2 whitespace-pre-wrap break-words overflow-x-auto overflow-y-hidden scrollbar-thin scrollbar-track-transparent scrollbar-thumb-gray-400 dark:scrollbar-thumb-gray-500 focus:outline-none",contenteditable:"true",spellcheck:"false",role:"textbox","aria-multiline":"true","aria-label":`Code block (${i.effectiveLanguage||"plaintext"})`,onInput:e[21]||(e[21]=(...s)=>r.debouncedHandleInput&&r.debouncedHandleInput(...s)),onPaste:e[22]||(e[22]=(...s)=>i.handlePaste&&i.handlePaste(...s)),onKeydown:[e[23]||(e[23]=Qn(oe((...s)=>i.handleEnterKey&&i.handleEnterKey(...s),["prevent"]),["enter"])),e[24]||(e[24]=Qn(oe((...s)=>i.handleTabKey&&i.handleTabKey(...s),["prevent"]),["tab"])),e[27]||(e[27]=(...s)=>i.handleUndoRedoKeys&&i.handleUndoRedoKeys(...s))],onBlur:e[25]||(e[25]=(...s)=>i.handleBlur&&i.handleBlur(...s)),onClick:e[26]||(e[26]=(...s)=>i.clearSelectionIfOutsideSearch&&i.clearSelectionIfOutsideSearch(...s))},null,40,Cst)])],512)])),e,28),r.executionOutput?(N(),H("div",Ast,[e[42]||(e[42]=S("span",{class:"text-lg font-semibold text-gray-700 dark:text-gray-300"},"Execution Output:",-1)),S("div",{class:"execution-output-content hljs mt-1 p-2 rounded-md break-words text-sm leading-relaxed bg-white dark:bg-gray-800 max-h-48 overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary",innerHTML:i.sanitizedExecutionOutputHtml},null,8,wst)])):Z("",!0)],8,Dot)}const Mst=Ye(Not,[["render",Ost],["__scopeId","data-v-6c0ead0d"]]);function Rp(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let k2=Rp();function XN(t){k2=t}const JN=/[&<>"']/,Rst=new RegExp(JN.source,"g"),eD=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Nst=new RegExp(eD.source,"g"),Dst={"&":"&","<":"<",">":">",'"':""","'":"'"},qb=t=>Dst[t];function Si(t,e){if(e){if(JN.test(t))return t.replace(Rst,qb)}else if(eD.test(t))return t.replace(Nst,qb);return t}const Ist=/(^|[^\[])\^/g;function tn(t,e){let n=typeof t=="string"?t:t.source;e=e||"";const o={replace:(r,i)=>{let s=typeof i=="string"?i:i.source;return s=s.replace(Ist,"$1"),n=n.replace(r,s),o},getRegex:()=>new RegExp(n,e)};return o}function Gb(t){try{t=encodeURI(t).replace(/%25/g,"%")}catch{return null}return t}const mc={exec:()=>null};function jb(t,e){const n=t.replace(/\|/g,(i,s,a)=>{let l=!1,c=s;for(;--c>=0&&a[c]==="\\";)l=!l;return l?"|":" |"}),o=n.split(/ \|/);let r=0;if(o[0].trim()||o.shift(),o.length>0&&!o[o.length-1].trim()&&o.pop(),e)if(o.length>e)o.splice(e);else for(;o.length{const i=r.match(/^\s+/);if(i===null)return r;const[s]=i;return s.length>=o.length?r.slice(o.length):r}).join(` `)}class b5{constructor(e){nn(this,"options");nn(this,"rules");nn(this,"lexer");this.options=e||k2}space(e){const n=this.rules.block.newline.exec(e);if(n&&n[0].length>0)return{type:"space",raw:n[0]}}code(e){const n=this.rules.block.code.exec(e);if(n){const o=n[0].replace(/^(?: {1,4}| {0,3}\t)/gm,"");return{type:"code",raw:n[0],codeBlockStyle:"indented",text:this.options.pedantic?o:a3(o,` `)}}}fences(e){const n=this.rules.block.fences.exec(e);if(n){const o=n[0],r=Hst(o,n[3]||"");return{type:"code",raw:o,lang:n[2]?n[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):n[2],text:r}}}heading(e){const n=this.rules.block.heading.exec(e);if(n){let o=n[2].trim();if(/#$/.test(o)){const r=a3(o,"#");(this.options.pedantic||!r||/ $/.test(r))&&(o=r.trim())}return{type:"heading",raw:n[0],depth:n[1].length,text:o,tokens:this.lexer.inline(o)}}}hr(e){const n=this.rules.block.hr.exec(e);if(n)return{type:"hr",raw:a3(n[0],` @@ -123,7 +123,7 @@ ${e} `}tablecell(e){const n=this.parser.parseInline(e.tokens),o=e.header?"th":"td";return(e.align?`<${o} align="${e.align}">`:`<${o}>`)+n+` `}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${e}`}br(e){return"
"}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:n,tokens:o}){const r=this.parser.parseInline(o),i=Gb(e);if(i===null)return r;e=i;let s='",s}image({href:e,title:n,text:o}){const r=Gb(e);if(r===null)return o;e=r;let i=`${o}{const c=a[l].flat(1/0);o=o.concat(this.walkTokens(c,n))}):a.tokens&&(o=o.concat(this.walkTokens(a.tokens,n)))}}return o}use(...e){const n=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(o=>{const r={...o};if(r.async=this.defaults.async||r.async||!1,o.extensions&&(o.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){const s=n.renderers[i.name];s?n.renderers[i.name]=function(...a){let l=i.renderer.apply(this,a);return l===!1&&(l=s.apply(this,a)),l}:n.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const s=n[i.level];s?s.unshift(i.tokenizer):n[i.level]=[i.tokenizer],i.start&&(i.level==="block"?n.startBlock?n.startBlock.push(i.start):n.startBlock=[i.start]:i.level==="inline"&&(n.startInline?n.startInline.push(i.start):n.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(n.childTokens[i.name]=i.childTokens)}),r.extensions=n),o.renderer){const i=this.defaults.renderer||new S5(this.defaults);for(const s in o.renderer){if(!(s in i))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;const a=s,l=o.renderer[a],c=i[a];i[a]=(...u)=>{let d=l.apply(i,u);return d===!1&&(d=c.apply(i,u)),d||""}}r.renderer=i}if(o.tokenizer){const i=this.defaults.tokenizer||new b5(this.defaults);for(const s in o.tokenizer){if(!(s in i))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;const a=s,l=o.tokenizer[a],c=i[a];i[a]=(...u)=>{let d=l.apply(i,u);return d===!1&&(d=c.apply(i,u)),d}}r.tokenizer=i}if(o.hooks){const i=this.defaults.hooks||new gc;for(const s in o.hooks){if(!(s in i))throw new Error(`hook '${s}' does not exist`);if(["options","block"].includes(s))continue;const a=s,l=o.hooks[a],c=i[a];gc.passThroughHooks.has(s)?i[a]=u=>{if(this.defaults.async)return Promise.resolve(l.call(i,u)).then(f=>c.call(i,f));const d=l.call(i,u);return c.call(i,d)}:i[a]=(...u)=>{let d=l.apply(i,u);return d===!1&&(d=c.apply(i,u)),d}}r.hooks=i}if(o.walkTokens){const i=this.defaults.walkTokens,s=o.walkTokens;r.walkTokens=function(a){let l=[];return l.push(s.call(this,a)),i&&(l=l.concat(i.call(this,a))),l}}this.defaults={...this.defaults,...r}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,n){return Vi.lex(e,n??this.defaults)}parser(e,n){return Bi.parse(e,n??this.defaults)}parseMarkdown(e){return(o,r)=>{const i={...r},s={...this.defaults,...i},a=this.onError(!!s.silent,!!s.async);if(this.defaults.async===!0&&i.async===!1)return a(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof o>"u"||o===null)return a(new Error("marked(): input parameter is undefined or null"));if(typeof o!="string")return a(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(o)+", string expected"));s.hooks&&(s.hooks.options=s,s.hooks.block=e);const l=s.hooks?s.hooks.provideLexer():e?Vi.lex:Vi.lexInline,c=s.hooks?s.hooks.provideParser():e?Bi.parse:Bi.parseInline;if(s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(o):o).then(u=>l(u,s)).then(u=>s.hooks?s.hooks.processAllTokens(u):u).then(u=>s.walkTokens?Promise.all(this.walkTokens(u,s.walkTokens)).then(()=>u):u).then(u=>c(u,s)).then(u=>s.hooks?s.hooks.postprocess(u):u).catch(a);try{s.hooks&&(o=s.hooks.preprocess(o));let u=l(o,s);s.hooks&&(u=s.hooks.processAllTokens(u)),s.walkTokens&&this.walkTokens(u,s.walkTokens);let d=c(u,s);return s.hooks&&(d=s.hooks.postprocess(d)),d}catch(u){return a(u)}}}onError(e,n){return o=>{if(o.message+=` -Please report this to https://github.com/markedjs/marked.`,e){const r="

An error occurred:

"+Si(o.message+"",!0)+"
";return n?Promise.resolve(r):r}if(n)return Promise.reject(o);throw o}}}const M2=new u1t;function Et(t,e){return M2.parse(t,e)}Et.options=Et.setOptions=function(t){return M2.setOptions(t),Et.defaults=M2.defaults,XN(Et.defaults),Et};Et.getDefaults=Rp;Et.defaults=k2;Et.use=function(...t){return M2.use(...t),Et.defaults=M2.defaults,XN(Et.defaults),Et};Et.walkTokens=function(t,e){return M2.walkTokens(t,e)};Et.parseInline=M2.parseInline;Et.Parser=Bi;Et.parser=Bi.parse;Et.Renderer=S5;Et.TextRenderer=Pp;Et.Lexer=Vi;Et.lexer=Vi.lex;Et.Tokenizer=b5;Et.Hooks=gc;Et.parse=Et;Et.options;Et.setOptions;Et.use;Et.walkTokens;Et.parseInline;Bi.parse;Vi.lex;Et.setOptions({highlight:function(t,e){const n=j1.getLanguage(e)?e:"plaintext";try{return j1.highlight(t,{language:n,ignoreIllegals:!0}).value}catch(o){return console.error("Highlight.js error:",o),j1.highlightAuto(t).value}},breaks:!0,gfm:!0,pedantic:!1,smartLists:!0,smartypants:!1});let d1t=0;const T1t={name:"ThinkingBlock",props:{content:{type:String,required:!0},isDone:{type:Boolean,required:!0,default:!1},startOpen:{type:Boolean,default:!1}},setup(t){const e=Ve(t.startOpen),n=Ve(null),o=`thinking-content-${d1t++}`,r=je(()=>!t.isDone),i=je(()=>{const c=Et.parse(t.content||"");return Rc.sanitize(c,{ADD_ATTR:["target"]})}),s=()=>{e.value=!e.value,e.value&&Se(a)},a=()=>{n.value&&(n.value.scrollTop=n.value.scrollHeight)},l=()=>{const c=new Blob([t.content],{type:"text/markdown;charset=utf-8"}),u=window.URL.createObjectURL(c),d=document.createElement("a");d.href=u,d.setAttribute("download","ai_thoughts.md"),document.body.appendChild(d),d.click(),document.body.removeChild(d),window.URL.revokeObjectURL(u)};return $n(()=>t.content,()=>{e.value&&Se(a)}),$n(()=>t.isDone,c=>{c&&!e.value&&t.startOpen,c&&e.value&&Se(a)}),Hr(()=>{e.value&&Se(a)}),{isOpen:e,isThinking:r,renderedContent:i,contentContainer:n,contentId:o,toggle:s,downloadMarkdown:l}}},f1t={class:"my-4 bg-white dark:bg-gray-800 rounded-lg shadow-md overflow-hidden border border-gray-200 dark:border-gray-700"},p1t={class:"flex items-center justify-between p-3 bg-gray-50 dark:bg-gray-700/50 border-b border-gray-200 dark:border-gray-700"},h1t=["aria-expanded","aria-controls"],m1t={key:0,class:"flex items-center gap-2"},g1t={class:"inline-flex items-center space-x-1"},_1t={key:1},Q1t=["id"],v1t={ref:"contentContainer",class:"p-4 text-gray-700 dark:text-gray-300 prose prose-sm dark:prose-invert max-w-none overflow-y-auto max-h-[400px] bg-gray-50 dark:bg-gray-800/50"},y1t=["innerHTML"],b1t={key:2,class:"inline-block w-2 h-4 ml-1 bg-gray-600 dark:bg-gray-400 animate-pulse"};function E1t(t,e,n,o,r,i){return N(),H("div",f1t,[S("div",p1t,[S("button",{onClick:e[0]||(e[0]=(...s)=>o.toggle&&o.toggle(...s)),"aria-expanded":o.isOpen,"aria-controls":o.contentId,class:"group flex items-center gap-2 text-sm font-medium text-gray-700 dark:text-gray-300 hover:text-blue-600 dark:hover:text-blue-400 focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-blue-500 dark:focus-visible:ring-offset-gray-800 rounded"},[(N(),H("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",class:Ee(["w-5 h-5 transition-transform duration-300 ease-in-out flex-shrink-0",{"rotate-90":o.isOpen}])},e[2]||(e[2]=[S("path",{"fill-rule":"evenodd",d:"M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z","clip-rule":"evenodd"},null,-1)]),2)),o.isThinking?(N(),H("span",m1t,[e[3]||(e[3]=S("span",null,"Thinking",-1)),S("span",g1t,[(N(),H(xe,null,Pe(3,s=>S("span",{key:s,class:"w-1.5 h-1.5 bg-blue-500 rounded-full animate-bounce",style:an({animationDelay:`${(s-1)*150}ms`})},null,4)),64))])])):(N(),H("span",_1t,"AI Thoughts"))],8,h1t),!o.isThinking&&n.content?(N(),H("button",{key:0,onClick:e[1]||(e[1]=(...s)=>o.downloadMarkdown&&o.downloadMarkdown(...s)),class:"p-1.5 text-gray-500 dark:text-gray-400 hover:text-blue-600 dark:hover:text-blue-400 hover:bg-gray-200 dark:hover:bg-gray-600 rounded-full focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-1 focus-visible:ring-blue-500 dark:focus-visible:ring-offset-gray-700/50 transition-colors duration-150",title:"Download as Markdown"},e[4]||(e[4]=[S("span",{class:"sr-only"},"Download AI Thoughts as Markdown",-1),S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",class:"w-5 h-5"},[S("path",{d:"M10.75 2.75a.75.75 0 00-1.5 0v8.614L6.295 8.235a.75.75 0 10-1.09 1.03l4.25 4.5a.75.75 0 001.09 0l4.25-4.5a.75.75 0 00-1.09-1.03l-2.955 3.129V2.75z"}),S("path",{d:"M3.5 12.75a.75.75 0 00-1.5 0v2.5A2.75 2.75 0 004.75 18h10.5A2.75 2.75 0 0018 15.25v-2.5a.75.75 0 00-1.5 0v2.5c0 .69-.56 1.25-1.25 1.25H4.75c-.69 0-1.25-.56-1.25-1.25v-2.5z"})],-1)]))):Z("",!0)]),ne(Nr,{"enter-active-class":"transition duration-300 ease-out","enter-from-class":"transform -translate-y-2 scale-95 opacity-0","enter-to-class":"transform translate-y-0 scale-100 opacity-100","leave-active-class":"transition duration-200 ease-in","leave-from-class":"transform translate-y-0 scale-100 opacity-100","leave-to-class":"transform -translate-y-2 scale-95 opacity-0"},{default:Ge(()=>[Le(S("div",{class:"content-wrapper",id:o.contentId},[S("div",v1t,[t.$slots.default?_n(t.$slots,"default",{key:0},void 0,!0):(N(),H("div",{key:1,innerHTML:o.renderedContent},null,8,y1t)),o.isThinking?(N(),H("span",b1t)):Z("",!0)],512)],8,Q1t),[[An,o.isOpen]])]),_:3})])}const S1t=Ye(T1t,[["render",E1t],["__scopeId","data-v-4e52743a"]]);var Z9={},c3={},Wb;function x1t(){return Wb||(Wb=1,Object.defineProperty(c3,"__esModule",{value:!0}),c3.VERSION=void 0,c3.VERSION="3.2.2"),c3}var ds={},u3={},Kb;function zc(){if(Kb)return u3;Kb=1,Object.defineProperty(u3,"__esModule",{value:!0}),u3.PrioritizedList=void 0;var t=function(){function e(){this.items=[],this.items=[]}return e.prototype[Symbol.iterator]=function(){var n=0,o=this.items;return{next:function(){return{value:o[n++],done:n>o.length}}}},e.prototype.add=function(n,o){o===void 0&&(o=e.DEFAULTPRIORITY);var r=this.items.length;do r--;while(r>=0&&o=0&&this.items[o].item!==n);o>=0&&this.items.splice(o,1)},e.DEFAULTPRIORITY=5,e}();return u3.PrioritizedList=t,u3}var Zb;function L1t(){if(Zb)return ds;Zb=1;var t=ds&&ds.__extends||function(){var r=function(i,s){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,l){a.__proto__=l}||function(a,l){for(var c in l)Object.prototype.hasOwnProperty.call(l,c)&&(a[c]=l[c])},r(i,s)};return function(i,s){if(typeof s!="function"&&s!==null)throw new TypeError("Class extends value "+String(s)+" is not a constructor or null");r(i,s);function a(){this.constructor=i}i.prototype=s===null?Object.create(s):(a.prototype=s.prototype,new a)}}(),e=ds&&ds.__values||function(r){var i=typeof Symbol=="function"&&Symbol.iterator,s=i&&r[i],a=0;if(s)return s.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&a>=r.length&&(r=void 0),{value:r&&r[a++],done:!r}}};throw new TypeError(i?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(ds,"__esModule",{value:!0}),ds.HandlerList=void 0;var n=zc(),o=function(r){t(i,r);function i(){return r!==null&&r.apply(this,arguments)||this}return i.prototype.register=function(s){return this.add(s,s.priority)},i.prototype.unregister=function(s){this.remove(s)},i.prototype.handlesDocument=function(s){var a,l;try{for(var c=e(this),u=c.next();!u.done;u=c.next()){var d=u.value,f=d.item;if(f.handlesDocument(s))return f}}catch(T){a={error:T}}finally{try{u&&!u.done&&(l=c.return)&&l.call(c)}finally{if(a)throw a.error}}throw new Error("Can't find handler for document")},i.prototype.document=function(s,a){return a===void 0&&(a=null),this.handlesDocument(s).create(s,a)},i}(n.PrioritizedList);return ds.HandlerList=o,ds}var pa={},Xb;function $p(){if(Xb)return pa;Xb=1,Object.defineProperty(pa,"__esModule",{value:!0}),pa.retryAfter=pa.handleRetriesFor=void 0;function t(n){return new Promise(function o(r,i){try{r(n())}catch(s){s.retry&&s.retry instanceof Promise?s.retry.then(function(){return o(r,i)}).catch(function(a){return i(a)}):s.restart&&s.restart.isCallback?MathJax.Callback.After(function(){return o(r,i)},s.restart):i(s)}})}pa.handleRetriesFor=t;function e(n){var o=new Error("MathJax retry");throw o.retry=n,o}return pa.retryAfter=e,pa}var Jb;function Vp(){return Jb||(Jb=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.mathjax=void 0;var e=x1t(),n=L1t(),o=$p();t.mathjax={version:e.VERSION,handlers:new n.HandlerList,document:function(r,i){return t.mathjax.handlers.document(r,i)},handleRetriesFor:o.handleRetriesFor,retryAfter:o.retryAfter,asyncLoad:null}}(Z9)),Z9}var Yr={},d3={},Ts={},eE;function Vn(){return eE||(eE=1,function(t){var e=Ts&&Ts.__values||function(_){var v=typeof Symbol=="function"&&Symbol.iterator,b=v&&_[v],y=0;if(b)return b.call(_);if(_&&typeof _.length=="number")return{next:function(){return _&&y>=_.length&&(_=void 0),{value:_&&_[y++],done:!_}}};throw new TypeError(v?"Object is not iterable.":"Symbol.iterator is not defined.")},n=Ts&&Ts.__read||function(_,v){var b=typeof Symbol=="function"&&_[Symbol.iterator];if(!b)return _;var y=b.call(_),E,x=[],L;try{for(;(v===void 0||v-- >0)&&!(E=y.next()).done;)x.push(E.value)}catch(C){L={error:C}}finally{try{E&&!E.done&&(b=y.return)&&b.call(y)}finally{if(L)throw L.error}}return x},o=Ts&&Ts.__spreadArray||function(_,v,b){if(b||arguments.length===2)for(var y=0,E=v.length,x;y=s.length&&(s=void 0),{value:s&&s[c++],done:!s}}};throw new TypeError(a?"Object is not iterable.":"Symbol.iterator is not defined.")},n=Wr&&Wr.__read||function(s,a){var l=typeof Symbol=="function"&&s[Symbol.iterator];if(!l)return s;var c=l.call(s),u,d=[],f;try{for(;(a===void 0||a-- >0)&&!(u=c.next()).done;)d.push(u.value)}catch(T){f={error:T}}finally{try{u&&!u.done&&(l=c.return)&&l.call(c)}finally{if(f)throw f.error}}return d},o=Wr&&Wr.__spreadArray||function(s,a,l){if(l||arguments.length===2)for(var c=0,u=a.length,d;c0)&&!(f=d.next()).done;)T.push(f.value)}catch(g){h={error:g}}finally{try{f&&!f.done&&(u=d.return)&&u.call(d)}finally{if(h)throw h.error}}return T},e=Rn&&Rn.__spreadArray||function(l,c,u){if(u||arguments.length===2)for(var d=0,f=c.length,T;d=s&&this.state(s-1),i.renderActions.renderMath(this,i,s)},r.prototype.convert=function(i,s){s===void 0&&(s=t.STATE.LAST),i.renderActions.renderConvert(this,i,s)},r.prototype.compile=function(i){this.state()=t.STATE.INSERTED&&this.removeFromDocument(s),i=t.STATE.TYPESET&&(this.outputData={}),i=t.STATE.COMPILED&&(this.inputData={}),this._state=i),this._state},r.prototype.reset=function(i){i===void 0&&(i=!1),this.state(t.STATE.UNPROCESSED,i)},r}();t.AbstractMathItem=n,t.STATE={UNPROCESSED:0,FINDMATH:10,COMPILED:20,CONVERT:100,METRICS:110,RERENDER:125,TYPESET:150,INSERTED:200,LAST:1e4};function o(r,i){if(r in t.STATE)throw Error("State "+r+" already exists");t.STATE[r]=i}t.newState=o}(X9)),X9}var sE;function A1t(){if(sE)return fs;sE=1;var t=fs&&fs.__extends||function(){var s=function(a,l){return s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,u){c.__proto__=u}||function(c,u){for(var d in u)Object.prototype.hasOwnProperty.call(u,d)&&(c[d]=u[d])},s(a,l)};return function(a,l){if(typeof l!="function"&&l!==null)throw new TypeError("Class extends value "+String(l)+" is not a constructor or null");s(a,l);function c(){this.constructor=a}a.prototype=l===null?Object.create(l):(c.prototype=l.prototype,new c)}}(),e=fs&&fs.__read||function(s,a){var l=typeof Symbol=="function"&&s[Symbol.iterator];if(!l)return s;var c=l.call(s),u,d=[],f;try{for(;(a===void 0||a-- >0)&&!(u=c.next()).done;)d.push(u.value)}catch(T){f={error:T}}finally{try{u&&!u.done&&(l=c.return)&&l.call(c)}finally{if(f)throw f.error}}return d};Object.defineProperty(fs,"__esModule",{value:!0}),fs.FindTeX=void 0;var n=C1t(),o=Uo(),r=$l(),i=function(s){t(a,s);function a(l){var c=s.call(this,l)||this;return c.getPatterns(),c}return a.prototype.getPatterns=function(){var l=this,c=this.options,u=[],d=[],f=[];this.end={},this.env=this.sub=0;var T=1;c.inlineMath.forEach(function(h){return l.addPattern(u,h,!1)}),c.displayMath.forEach(function(h){return l.addPattern(u,h,!0)}),u.length&&d.push(u.sort(o.sortLength).join("|")),c.processEnvironments&&(d.push("\\\\begin\\s*\\{([^}]*)\\}"),this.env=T,T++),c.processEscapes&&f.push("\\\\([\\\\$])"),c.processRefs&&f.push("(\\\\(?:eq)?ref\\s*\\{[^}]*\\})"),f.length&&(d.push("("+f.join("|")+")"),this.sub=T),this.start=new RegExp(d.join("|"),"g"),this.hasPatterns=d.length>0},a.prototype.addPattern=function(l,c,u){var d=e(c,2),f=d[0],T=d[1];l.push((0,o.quotePattern)(f)),this.end[f]=[T,u,this.endPattern(T)]},a.prototype.endPattern=function(l,c){return new RegExp((c||(0,o.quotePattern)(l))+"|\\\\(?:[a-zA-Z]|.)|[{}]","g")},a.prototype.findEnd=function(l,c,u,d){for(var f=e(d,3),T=f[0],h=f[1],g=f[2],Q=g.lastIndex=u.index+u[0].length,m,_=0;m=g.exec(l);){if((m[1]||m[0])===T&&_===0)return(0,r.protoItem)(u[0],l.substr(Q,m.index-Q),m[0],c,u.index,m.index+m[0].length,h);m[0]==="{"?_++:m[0]==="}"&&_&&_--}return null},a.prototype.findMathInString=function(l,c,u){var d,f;for(this.start.lastIndex=0;d=this.start.exec(u);){if(d[this.env]!==void 0&&this.env){var T="\\\\end\\s*(\\{"+(0,o.quotePattern)(d[this.env])+"\\})";f=this.findEnd(u,c,d,["{"+d[this.env]+"}",!0,this.endPattern(null,T)]),f&&(f.math=f.open+f.math+f.close,f.open=f.close="")}else if(d[this.sub]!==void 0&&this.sub){var h=d[this.sub],T=d.index+d[this.sub].length;h.length===2?f=(0,r.protoItem)("",h.substr(1),"",c,d.index,T):f=(0,r.protoItem)("",h,"",c,d.index,T,!1)}else f=this.findEnd(u,c,d,this.end[d[0]]);f&&(l.push(f),this.start.lastIndex=f.end.n)}},a.prototype.findMath=function(l){var c=[];if(this.hasPatterns)for(var u=0,d=l.length;u=o.length&&(o=void 0),{value:o&&o[s++],done:!o}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.Attributes=t.INHERIT=void 0,t.INHERIT="_inherit_";var n=function(){function o(r,i){this.global=i,this.defaults=Object.create(i),this.inherited=Object.create(this.defaults),this.attributes=Object.create(this.inherited),Object.assign(this.defaults,r)}return o.prototype.set=function(r,i){this.attributes[r]=i},o.prototype.setList=function(r){Object.assign(this.attributes,r)},o.prototype.get=function(r){var i=this.attributes[r];return i===t.INHERIT&&(i=this.global[r]),i},o.prototype.getExplicit=function(r){if(this.attributes.hasOwnProperty(r))return this.attributes[r]},o.prototype.getList=function(){for(var r,i,s=[],a=0;a=i.length&&(i=void 0),{value:i&&i[l++],done:!i}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Kr,"__esModule",{value:!0}),Kr.AbstractEmptyNode=Kr.AbstractNode=void 0;var o=function(){function i(s,a,l){var c,u;a===void 0&&(a={}),l===void 0&&(l=[]),this.factory=s,this.parent=null,this.properties={},this.childNodes=[];try{for(var d=n(Object.keys(a)),f=d.next();!f.done;f=d.next()){var T=f.value;this.setProperty(T,a[T])}}catch(h){c={error:h}}finally{try{f&&!f.done&&(u=d.return)&&u.call(d)}finally{if(c)throw c.error}}l.length&&this.setChildren(l)}return Object.defineProperty(i.prototype,"kind",{get:function(){return"unknown"},enumerable:!1,configurable:!0}),i.prototype.setProperty=function(s,a){this.properties[s]=a},i.prototype.getProperty=function(s){return this.properties[s]},i.prototype.getPropertyNames=function(){return Object.keys(this.properties)},i.prototype.getAllProperties=function(){return this.properties},i.prototype.removeProperty=function(){for(var s,a,l=[],c=0;c=Q.length&&(Q=void 0),{value:Q&&Q[v++],done:!Q}}};throw new TypeError(m?"Object is not iterable.":"Symbol.iterator is not defined.")},r=no&&no.__read||function(Q,m){var _=typeof Symbol=="function"&&Q[Symbol.iterator];if(!_)return Q;var v=_.call(Q),b,y=[],E;try{for(;(m===void 0||m-- >0)&&!(b=v.next()).done;)y.push(b.value)}catch(x){E={error:x}}finally{try{b&&!b.done&&(_=v.return)&&_.call(v)}finally{if(E)throw E.error}}return y};Object.defineProperty(t,"__esModule",{value:!0}),t.XMLNode=t.TextNode=t.AbstractMmlEmptyNode=t.AbstractMmlBaseNode=t.AbstractMmlLayoutNode=t.AbstractMmlTokenNode=t.AbstractMmlNode=t.indentAttributes=t.TEXCLASSNAMES=t.TEXCLASS=void 0;var i=Yc(),s=cD();t.TEXCLASS={ORD:0,OP:1,BIN:2,REL:3,OPEN:4,CLOSE:5,PUNCT:6,INNER:7,VCENTER:8,NONE:-1},t.TEXCLASSNAMES=["ORD","OP","BIN","REL","OPEN","CLOSE","PUNCT","INNER","VCENTER"];var a=["","thinmathspace","mediummathspace","thickmathspace"],l=[[0,-1,2,3,0,0,0,1],[-1,-1,0,3,0,0,0,1],[2,2,0,0,2,0,0,2],[3,3,0,0,3,0,0,3],[0,0,0,0,0,0,0,0],[0,-1,2,3,0,0,0,1],[1,1,0,1,1,1,1,1],[1,-1,2,3,1,0,1,1]];t.indentAttributes=["indentalign","indentalignfirst","indentshift","indentshiftfirst"];var c=function(Q){e(m,Q);function m(_,v,b){v===void 0&&(v={}),b===void 0&&(b=[]);var y=Q.call(this,_)||this;return y.prevClass=null,y.prevLevel=null,y.texclass=null,y.arity<0&&(y.childNodes=[_.create("inferredMrow")],y.childNodes[0].parent=y),y.setChildren(b),y.attributes=new i.Attributes(_.getNodeClass(y.kind).defaults,_.getNodeClass("math").defaults),y.attributes.setList(v),y}return m.prototype.copy=function(_){var v,b,y,E;_===void 0&&(_=!1);var x=this.factory.create(this.kind);if(x.properties=n({},this.properties),this.attributes){var L=this.attributes.getAllAttributes();try{for(var C=o(Object.keys(L)),A=C.next();!A.done;A=C.next()){var O=A.value;(O!=="id"||_)&&x.attributes.set(O,L[O])}}catch(U){v={error:U}}finally{try{A&&!A.done&&(b=C.return)&&b.call(C)}finally{if(v)throw v.error}}}if(this.childNodes&&this.childNodes.length){var R=this.childNodes;R.length===1&&R[0].isInferred&&(R=R[0].childNodes);try{for(var I=o(R),M=I.next();!M.done;M=I.next()){var $=M.value;$?x.appendChild($.copy()):x.childNodes.push(null)}}catch(U){y={error:U}}finally{try{M&&!M.done&&(E=I.return)&&E.call(I)}finally{if(y)throw y.error}}}return x},Object.defineProperty(m.prototype,"texClass",{get:function(){return this.texclass},set:function(_){this.texclass=_},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isToken",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isEmbellished",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isSpacelike",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"linebreakContainer",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"hasNewLine",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"arity",{get:function(){return 1/0},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isInferred",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"Parent",{get:function(){for(var _=this.parent;_&&_.notParent;)_=_.Parent;return _},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"notParent",{get:function(){return!1},enumerable:!1,configurable:!0}),m.prototype.setChildren=function(_){return this.arity<0?this.childNodes[0].setChildren(_):Q.prototype.setChildren.call(this,_)},m.prototype.appendChild=function(_){var v,b,y=this;if(this.arity<0)return this.childNodes[0].appendChild(_),_;if(_.isInferred){if(this.arity===1/0)return _.childNodes.forEach(function(A){return Q.prototype.appendChild.call(y,A)}),_;var E=_;_=this.factory.create("mrow"),_.setChildren(E.childNodes),_.attributes=E.attributes;try{for(var x=o(E.getPropertyNames()),L=x.next();!L.done;L=x.next()){var C=L.value;_.setProperty(C,E.getProperty(C))}}catch(A){v={error:A}}finally{try{L&&!L.done&&(b=x.return)&&b.call(x)}finally{if(v)throw v.error}}}return Q.prototype.appendChild.call(this,_)},m.prototype.replaceChild=function(_,v){return this.arity<0?(this.childNodes[0].replaceChild(_,v),_):Q.prototype.replaceChild.call(this,_,v)},m.prototype.core=function(){return this},m.prototype.coreMO=function(){return this},m.prototype.coreIndex=function(){return 0},m.prototype.childPosition=function(){for(var _,v,b=this,y=b.parent;y&&y.notParent;)b=y,y=y.parent;if(y){var E=0;try{for(var x=o(y.childNodes),L=x.next();!L.done;L=x.next()){var C=L.value;if(C===b)return E;E++}}catch(A){_={error:A}}finally{try{L&&!L.done&&(v=x.return)&&v.call(x)}finally{if(_)throw _.error}}}return null},m.prototype.setTeXclass=function(_){return this.getPrevClass(_),this.texClass!=null?this:_},m.prototype.updateTeXclass=function(_){_&&(this.prevClass=_.prevClass,this.prevLevel=_.prevLevel,_.prevClass=_.prevLevel=null,this.texClass=_.texClass)},m.prototype.getPrevClass=function(_){_&&(this.prevClass=_.texClass,this.prevLevel=_.attributes.get("scriptlevel"))},m.prototype.texSpacing=function(){var _=this.prevClass!=null?this.prevClass:t.TEXCLASS.NONE,v=this.texClass||t.TEXCLASS.ORD;if(_===t.TEXCLASS.NONE||v===t.TEXCLASS.NONE)return"";_===t.TEXCLASS.VCENTER&&(_=t.TEXCLASS.ORD),v===t.TEXCLASS.VCENTER&&(v=t.TEXCLASS.ORD);var b=l[_][v];return(this.prevLevel>0||this.attributes.get("scriptlevel")>0)&&b>=0?"":a[Math.abs(b)]},m.prototype.hasSpacingAttributes=function(){return this.isEmbellished&&this.coreMO().hasSpacingAttributes()},m.prototype.setInheritedAttributes=function(_,v,b,y){var E,x;_===void 0&&(_={}),v===void 0&&(v=!1),b===void 0&&(b=0),y===void 0&&(y=!1);var L=this.attributes.getAllDefaults();try{for(var C=o(Object.keys(_)),A=C.next();!A.done;A=C.next()){var O=A.value;if(L.hasOwnProperty(O)||m.alwaysInherit.hasOwnProperty(O)){var R=r(_[O],2),I=R[0],M=R[1],$=(m.noInherit[I]||{})[this.kind]||{};$[O]||this.attributes.setInherited(O,M)}}}catch(F){E={error:F}}finally{try{A&&!A.done&&(x=C.return)&&x.call(C)}finally{if(E)throw E.error}}var U=this.attributes.getExplicit("displaystyle");U===void 0&&this.attributes.setInherited("displaystyle",v);var G=this.attributes.getExplicit("scriptlevel");G===void 0&&this.attributes.setInherited("scriptlevel",b),y&&this.setProperty("texprimestyle",y);var P=this.arity;if(P>=0&&P!==1/0&&(P===1&&this.childNodes.length===0||P!==1&&this.childNodes.length!==P))if(P=0&&v!==1/0&&(v===1&&this.childNodes.length===0||v!==1&&this.childNodes.length!==v)&&this.mError('Wrong number of children for "'+this.kind+'" node',_,!0),this.verifyChildren(_)}},m.prototype.verifyAttributes=function(_){var v,b;if(_.checkAttributes){var y=this.attributes,E=[];try{for(var x=o(y.getExplicitNames()),L=x.next();!L.done;L=x.next()){var C=L.value;C.substr(0,5)!=="data-"&&y.getDefault(C)===void 0&&!C.match(/^(?:class|style|id|(?:xlink:)?href)$/)&&E.push(C)}}catch(A){v={error:A}}finally{try{L&&!L.done&&(b=x.return)&&b.call(x)}finally{if(v)throw v.error}}E.length&&this.mError("Unknown attributes for "+this.kind+" node: "+E.join(", "),_)}},m.prototype.verifyChildren=function(_){var v,b;try{for(var y=o(this.childNodes),E=y.next();!E.done;E=y.next()){var x=E.value;x.verifyTree(_)}}catch(L){v={error:L}}finally{try{E&&!E.done&&(b=y.return)&&b.call(y)}finally{if(v)throw v.error}}},m.prototype.mError=function(_,v,b){if(b===void 0&&(b=!1),this.parent&&this.parent.isKind("merror"))return null;var y=this.factory.create("merror");if(y.attributes.set("data-mjx-message",_),v.fullErrors||b){var E=this.factory.create("mtext"),x=this.factory.create("text");x.setText(v.fullErrors?_:this.kind),E.appendChild(x),y.appendChild(E),this.parent.replaceChild(y,this)}else this.parent.replaceChild(y,this),y.appendChild(this);return y},m.defaults={mathbackground:i.INHERIT,mathcolor:i.INHERIT,mathsize:i.INHERIT,dir:i.INHERIT},m.noInherit={mstyle:{mpadded:{width:!0,height:!0,depth:!0,lspace:!0,voffset:!0},mtable:{width:!0,height:!0,depth:!0,align:!0}},maligngroup:{mrow:{groupalign:!0},mtable:{groupalign:!0}}},m.alwaysInherit={scriptminsize:!0,scriptsizemultiplier:!0},m.verifyDefaults={checkArity:!0,checkAttributes:!1,fullErrors:!1,fixMmultiscripts:!0,fixMtables:!0},m}(s.AbstractNode);t.AbstractMmlNode=c;var u=function(Q){e(m,Q);function m(){return Q!==null&&Q.apply(this,arguments)||this}return Object.defineProperty(m.prototype,"isToken",{get:function(){return!0},enumerable:!1,configurable:!0}),m.prototype.getText=function(){var _,v,b="";try{for(var y=o(this.childNodes),E=y.next();!E.done;E=y.next()){var x=E.value;x instanceof h&&(b+=x.getText())}}catch(L){_={error:L}}finally{try{E&&!E.done&&(v=y.return)&&v.call(y)}finally{if(_)throw _.error}}return b},m.prototype.setChildInheritedAttributes=function(_,v,b,y){var E,x;try{for(var L=o(this.childNodes),C=L.next();!C.done;C=L.next()){var A=C.value;A instanceof c&&A.setInheritedAttributes(_,v,b,y)}}catch(O){E={error:O}}finally{try{C&&!C.done&&(x=L.return)&&x.call(L)}finally{if(E)throw E.error}}},m.prototype.walkTree=function(_,v){var b,y;_(this,v);try{for(var E=o(this.childNodes),x=E.next();!x.done;x=E.next()){var L=x.value;L instanceof c&&L.walkTree(_,v)}}catch(C){b={error:C}}finally{try{x&&!x.done&&(y=E.return)&&y.call(E)}finally{if(b)throw b.error}}return v},m.defaults=n(n({},c.defaults),{mathvariant:"normal",mathsize:i.INHERIT}),m}(c);t.AbstractMmlTokenNode=u;var d=function(Q){e(m,Q);function m(){return Q!==null&&Q.apply(this,arguments)||this}return Object.defineProperty(m.prototype,"isSpacelike",{get:function(){return this.childNodes[0].isSpacelike},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isEmbellished",{get:function(){return this.childNodes[0].isEmbellished},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"arity",{get:function(){return-1},enumerable:!1,configurable:!0}),m.prototype.core=function(){return this.childNodes[0]},m.prototype.coreMO=function(){return this.childNodes[0].coreMO()},m.prototype.setTeXclass=function(_){return _=this.childNodes[0].setTeXclass(_),this.updateTeXclass(this.childNodes[0]),_},m.defaults=c.defaults,m}(c);t.AbstractMmlLayoutNode=d;var f=function(Q){e(m,Q);function m(){return Q!==null&&Q.apply(this,arguments)||this}return Object.defineProperty(m.prototype,"isEmbellished",{get:function(){return this.childNodes[0].isEmbellished},enumerable:!1,configurable:!0}),m.prototype.core=function(){return this.childNodes[0]},m.prototype.coreMO=function(){return this.childNodes[0].coreMO()},m.prototype.setTeXclass=function(_){var v,b;this.getPrevClass(_),this.texClass=t.TEXCLASS.ORD;var y=this.childNodes[0];y?this.isEmbellished||y.isKind("mi")?(_=y.setTeXclass(_),this.updateTeXclass(this.core())):(y.setTeXclass(null),_=this):_=this;try{for(var E=o(this.childNodes.slice(1)),x=E.next();!x.done;x=E.next()){var L=x.value;L&&L.setTeXclass(null)}}catch(C){v={error:C}}finally{try{x&&!x.done&&(b=E.return)&&b.call(E)}finally{if(v)throw v.error}}return _},m.defaults=c.defaults,m}(c);t.AbstractMmlBaseNode=f;var T=function(Q){e(m,Q);function m(){return Q!==null&&Q.apply(this,arguments)||this}return Object.defineProperty(m.prototype,"isToken",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isEmbellished",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isSpacelike",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"linebreakContainer",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"hasNewLine",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"arity",{get:function(){return 0},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isInferred",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"notParent",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"Parent",{get:function(){return this.parent},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"texClass",{get:function(){return t.TEXCLASS.NONE},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"prevClass",{get:function(){return t.TEXCLASS.NONE},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"prevLevel",{get:function(){return 0},enumerable:!1,configurable:!0}),m.prototype.hasSpacingAttributes=function(){return!1},Object.defineProperty(m.prototype,"attributes",{get:function(){return null},enumerable:!1,configurable:!0}),m.prototype.core=function(){return this},m.prototype.coreMO=function(){return this},m.prototype.coreIndex=function(){return 0},m.prototype.childPosition=function(){return 0},m.prototype.setTeXclass=function(_){return _},m.prototype.texSpacing=function(){return""},m.prototype.setInheritedAttributes=function(_,v,b,y){},m.prototype.inheritAttributesFrom=function(_){},m.prototype.verifyTree=function(_){},m.prototype.mError=function(_,v,b){return null},m}(s.AbstractEmptyNode);t.AbstractMmlEmptyNode=T;var h=function(Q){e(m,Q);function m(){var _=Q!==null&&Q.apply(this,arguments)||this;return _.text="",_}return Object.defineProperty(m.prototype,"kind",{get:function(){return"text"},enumerable:!1,configurable:!0}),m.prototype.getText=function(){return this.text},m.prototype.setText=function(_){return this.text=_,this},m.prototype.copy=function(){return this.factory.create(this.kind).setText(this.getText())},m.prototype.toString=function(){return this.text},m}(T);t.TextNode=h;var g=function(Q){e(m,Q);function m(){var _=Q!==null&&Q.apply(this,arguments)||this;return _.xml=null,_.adaptor=null,_}return Object.defineProperty(m.prototype,"kind",{get:function(){return"XML"},enumerable:!1,configurable:!0}),m.prototype.getXML=function(){return this.xml},m.prototype.setXML=function(_,v){return v===void 0&&(v=null),this.xml=_,this.adaptor=v,this},m.prototype.getSerializedXML=function(){return this.adaptor.serializeXML(this.xml)},m.prototype.copy=function(){return this.factory.create(this.kind).setXML(this.adaptor.clone(this.xml))},m.prototype.toString=function(){return"XML data"},m}(T);t.XMLNode=g}(no)),no}var zo={},Zr={},p3={},uE;function uD(){return uE||(uE=1,function(t){var e=p3&&p3.__values||function(i){var s=typeof Symbol=="function"&&Symbol.iterator,a=s&&i[s],l=0;if(a)return a.call(i);if(i&&typeof i.length=="number")return{next:function(){return i&&l>=i.length&&(i=void 0),{value:i&&i[l++],done:!i}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.OPTABLE=t.MMLSPACING=t.getRange=t.RANGES=t.MO=t.OPDEF=void 0;var n=rt();function o(i,s,a,l){return a===void 0&&(a=n.TEXCLASS.BIN),l===void 0&&(l=null),[i,s,a,l]}t.OPDEF=o,t.MO={ORD:o(0,0,n.TEXCLASS.ORD),ORD11:o(1,1,n.TEXCLASS.ORD),ORD21:o(2,1,n.TEXCLASS.ORD),ORD02:o(0,2,n.TEXCLASS.ORD),ORD55:o(5,5,n.TEXCLASS.ORD),NONE:o(0,0,n.TEXCLASS.NONE),OP:o(1,2,n.TEXCLASS.OP,{largeop:!0,movablelimits:!0,symmetric:!0}),OPFIXED:o(1,2,n.TEXCLASS.OP,{largeop:!0,movablelimits:!0}),INTEGRAL:o(0,1,n.TEXCLASS.OP,{largeop:!0,symmetric:!0}),INTEGRAL2:o(1,2,n.TEXCLASS.OP,{largeop:!0,symmetric:!0}),BIN3:o(3,3,n.TEXCLASS.BIN),BIN4:o(4,4,n.TEXCLASS.BIN),BIN01:o(0,1,n.TEXCLASS.BIN),BIN5:o(5,5,n.TEXCLASS.BIN),TALLBIN:o(4,4,n.TEXCLASS.BIN,{stretchy:!0}),BINOP:o(4,4,n.TEXCLASS.BIN,{largeop:!0,movablelimits:!0}),REL:o(5,5,n.TEXCLASS.REL),REL1:o(1,1,n.TEXCLASS.REL,{stretchy:!0}),REL4:o(4,4,n.TEXCLASS.REL),RELSTRETCH:o(5,5,n.TEXCLASS.REL,{stretchy:!0}),RELACCENT:o(5,5,n.TEXCLASS.REL,{accent:!0}),WIDEREL:o(5,5,n.TEXCLASS.REL,{accent:!0,stretchy:!0}),OPEN:o(0,0,n.TEXCLASS.OPEN,{fence:!0,stretchy:!0,symmetric:!0}),CLOSE:o(0,0,n.TEXCLASS.CLOSE,{fence:!0,stretchy:!0,symmetric:!0}),INNER:o(0,0,n.TEXCLASS.INNER),PUNCT:o(0,3,n.TEXCLASS.PUNCT),ACCENT:o(0,0,n.TEXCLASS.ORD,{accent:!0}),WIDEACCENT:o(0,0,n.TEXCLASS.ORD,{accent:!0,stretchy:!0})},t.RANGES=[[32,127,n.TEXCLASS.REL,"mo"],[160,191,n.TEXCLASS.ORD,"mo"],[192,591,n.TEXCLASS.ORD,"mi"],[688,879,n.TEXCLASS.ORD,"mo"],[880,6688,n.TEXCLASS.ORD,"mi"],[6832,6911,n.TEXCLASS.ORD,"mo"],[6912,7615,n.TEXCLASS.ORD,"mi"],[7616,7679,n.TEXCLASS.ORD,"mo"],[7680,8191,n.TEXCLASS.ORD,"mi"],[8192,8303,n.TEXCLASS.ORD,"mo"],[8304,8351,n.TEXCLASS.ORD,"mo"],[8448,8527,n.TEXCLASS.ORD,"mi"],[8528,8591,n.TEXCLASS.ORD,"mn"],[8592,8703,n.TEXCLASS.REL,"mo"],[8704,8959,n.TEXCLASS.BIN,"mo"],[8960,9215,n.TEXCLASS.ORD,"mo"],[9312,9471,n.TEXCLASS.ORD,"mn"],[9472,10223,n.TEXCLASS.ORD,"mo"],[10224,10239,n.TEXCLASS.REL,"mo"],[10240,10495,n.TEXCLASS.ORD,"mtext"],[10496,10623,n.TEXCLASS.REL,"mo"],[10624,10751,n.TEXCLASS.ORD,"mo"],[10752,11007,n.TEXCLASS.BIN,"mo"],[11008,11055,n.TEXCLASS.ORD,"mo"],[11056,11087,n.TEXCLASS.REL,"mo"],[11088,11263,n.TEXCLASS.ORD,"mo"],[11264,11744,n.TEXCLASS.ORD,"mi"],[11776,11903,n.TEXCLASS.ORD,"mo"],[11904,12255,n.TEXCLASS.ORD,"mi","normal"],[12272,12351,n.TEXCLASS.ORD,"mo"],[12352,42143,n.TEXCLASS.ORD,"mi","normal"],[42192,43055,n.TEXCLASS.ORD,"mi"],[43056,43071,n.TEXCLASS.ORD,"mn"],[43072,55295,n.TEXCLASS.ORD,"mi"],[63744,64255,n.TEXCLASS.ORD,"mi","normal"],[64256,65023,n.TEXCLASS.ORD,"mi"],[65024,65135,n.TEXCLASS.ORD,"mo"],[65136,65791,n.TEXCLASS.ORD,"mi"],[65792,65935,n.TEXCLASS.ORD,"mn"],[65936,74751,n.TEXCLASS.ORD,"mi","normal"],[74752,74879,n.TEXCLASS.ORD,"mn"],[74880,113823,n.TEXCLASS.ORD,"mi","normal"],[113824,119391,n.TEXCLASS.ORD,"mo"],[119648,119679,n.TEXCLASS.ORD,"mn"],[119808,120781,n.TEXCLASS.ORD,"mi"],[120782,120831,n.TEXCLASS.ORD,"mn"],[122624,129023,n.TEXCLASS.ORD,"mo"],[129024,129279,n.TEXCLASS.REL,"mo"],[129280,129535,n.TEXCLASS.ORD,"mo"],[131072,195103,n.TEXCLASS.ORD,"mi","normnal"]];function r(i){var s,a,l=i.codePointAt(0);try{for(var c=e(t.RANGES),u=c.next();!u.done;u=c.next()){var d=u.value;if(l<=d[1]){if(l>=d[0])return d;break}}}catch(f){s={error:f}}finally{try{u&&!u.done&&(a=c.return)&&a.call(c)}finally{if(s)throw s.error}}return null}t.getRange=r,t.MMLSPACING=[[0,0],[1,2],[3,3],[4,4],[0,0],[0,0],[0,3]],t.OPTABLE={prefix:{"(":t.MO.OPEN,"+":t.MO.BIN01,"-":t.MO.BIN01,"[":t.MO.OPEN,"{":t.MO.OPEN,"|":t.MO.OPEN,"||":[0,0,n.TEXCLASS.BIN,{fence:!0,stretchy:!0,symmetric:!0}],"|||":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"¬":t.MO.ORD21,"±":t.MO.BIN01,"‖":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"‘":[0,0,n.TEXCLASS.OPEN,{fence:!0}],"“":[0,0,n.TEXCLASS.OPEN,{fence:!0}],"ⅅ":t.MO.ORD21,"ⅆ":o(2,0,n.TEXCLASS.ORD),"∀":t.MO.ORD21,"∂":t.MO.ORD21,"∃":t.MO.ORD21,"∄":t.MO.ORD21,"∇":t.MO.ORD21,"∏":t.MO.OP,"∐":t.MO.OP,"∑":t.MO.OP,"−":t.MO.BIN01,"∓":t.MO.BIN01,"√":[1,1,n.TEXCLASS.ORD,{stretchy:!0}],"∛":t.MO.ORD11,"∜":t.MO.ORD11,"∠":t.MO.ORD,"∡":t.MO.ORD,"∢":t.MO.ORD,"∫":t.MO.INTEGRAL,"∬":t.MO.INTEGRAL,"∭":t.MO.INTEGRAL,"∮":t.MO.INTEGRAL,"∯":t.MO.INTEGRAL,"∰":t.MO.INTEGRAL,"∱":t.MO.INTEGRAL,"∲":t.MO.INTEGRAL,"∳":t.MO.INTEGRAL,"⋀":t.MO.OP,"⋁":t.MO.OP,"⋂":t.MO.OP,"⋃":t.MO.OP,"⌈":t.MO.OPEN,"⌊":t.MO.OPEN,"〈":t.MO.OPEN,"❲":t.MO.OPEN,"⟦":t.MO.OPEN,"⟨":t.MO.OPEN,"⟪":t.MO.OPEN,"⟬":t.MO.OPEN,"⟮":t.MO.OPEN,"⦀":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"⦃":t.MO.OPEN,"⦅":t.MO.OPEN,"⦇":t.MO.OPEN,"⦉":t.MO.OPEN,"⦋":t.MO.OPEN,"⦍":t.MO.OPEN,"⦏":t.MO.OPEN,"⦑":t.MO.OPEN,"⦓":t.MO.OPEN,"⦕":t.MO.OPEN,"⦗":t.MO.OPEN,"⧼":t.MO.OPEN,"⨀":t.MO.OP,"⨁":t.MO.OP,"⨂":t.MO.OP,"⨃":t.MO.OP,"⨄":t.MO.OP,"⨅":t.MO.OP,"⨆":t.MO.OP,"⨇":t.MO.OP,"⨈":t.MO.OP,"⨉":t.MO.OP,"⨊":t.MO.OP,"⨋":t.MO.INTEGRAL2,"⨌":t.MO.INTEGRAL,"⨍":t.MO.INTEGRAL2,"⨎":t.MO.INTEGRAL2,"⨏":t.MO.INTEGRAL2,"⨐":t.MO.OP,"⨑":t.MO.OP,"⨒":t.MO.OP,"⨓":t.MO.OP,"⨔":t.MO.OP,"⨕":t.MO.INTEGRAL2,"⨖":t.MO.INTEGRAL2,"⨗":t.MO.INTEGRAL2,"⨘":t.MO.INTEGRAL2,"⨙":t.MO.INTEGRAL2,"⨚":t.MO.INTEGRAL2,"⨛":t.MO.INTEGRAL2,"⨜":t.MO.INTEGRAL2,"⫼":t.MO.OP,"⫿":t.MO.OP},postfix:{"!!":o(1,0),"!":[1,0,n.TEXCLASS.CLOSE,null],'"':t.MO.ACCENT,"&":t.MO.ORD,")":t.MO.CLOSE,"++":o(0,0),"--":o(0,0),"..":o(0,0),"...":t.MO.ORD,"'":t.MO.ACCENT,"]":t.MO.CLOSE,"^":t.MO.WIDEACCENT,_:t.MO.WIDEACCENT,"`":t.MO.ACCENT,"|":t.MO.CLOSE,"}":t.MO.CLOSE,"~":t.MO.WIDEACCENT,"||":[0,0,n.TEXCLASS.BIN,{fence:!0,stretchy:!0,symmetric:!0}],"|||":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"¨":t.MO.ACCENT,ª:t.MO.ACCENT,"¯":t.MO.WIDEACCENT,"°":t.MO.ORD,"²":t.MO.ACCENT,"³":t.MO.ACCENT,"´":t.MO.ACCENT,"¸":t.MO.ACCENT,"¹":t.MO.ACCENT,º:t.MO.ACCENT,"ˆ":t.MO.WIDEACCENT,"ˇ":t.MO.WIDEACCENT,"ˉ":t.MO.WIDEACCENT,"ˊ":t.MO.ACCENT,"ˋ":t.MO.ACCENT,"ˍ":t.MO.WIDEACCENT,"˘":t.MO.ACCENT,"˙":t.MO.ACCENT,"˚":t.MO.ACCENT,"˜":t.MO.WIDEACCENT,"˝":t.MO.ACCENT,"˷":t.MO.WIDEACCENT,"̂":t.MO.WIDEACCENT,"̑":t.MO.ACCENT,"϶":t.MO.REL,"‖":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"’":[0,0,n.TEXCLASS.CLOSE,{fence:!0}],"‚":t.MO.ACCENT,"‛":t.MO.ACCENT,"”":[0,0,n.TEXCLASS.CLOSE,{fence:!0}],"„":t.MO.ACCENT,"‟":t.MO.ACCENT,"′":t.MO.ORD,"″":t.MO.ACCENT,"‴":t.MO.ACCENT,"‵":t.MO.ACCENT,"‶":t.MO.ACCENT,"‷":t.MO.ACCENT,"‾":t.MO.WIDEACCENT,"⁗":t.MO.ACCENT,"⃛":t.MO.ACCENT,"⃜":t.MO.ACCENT,"⌉":t.MO.CLOSE,"⌋":t.MO.CLOSE,"〉":t.MO.CLOSE,"⎴":t.MO.WIDEACCENT,"⎵":t.MO.WIDEACCENT,"⏜":t.MO.WIDEACCENT,"⏝":t.MO.WIDEACCENT,"⏞":t.MO.WIDEACCENT,"⏟":t.MO.WIDEACCENT,"⏠":t.MO.WIDEACCENT,"⏡":t.MO.WIDEACCENT,"■":t.MO.BIN3,"□":t.MO.BIN3,"▪":t.MO.BIN3,"▫":t.MO.BIN3,"▭":t.MO.BIN3,"▮":t.MO.BIN3,"▯":t.MO.BIN3,"▰":t.MO.BIN3,"▱":t.MO.BIN3,"▲":t.MO.BIN4,"▴":t.MO.BIN4,"▶":t.MO.BIN4,"▷":t.MO.BIN4,"▸":t.MO.BIN4,"▼":t.MO.BIN4,"▾":t.MO.BIN4,"◀":t.MO.BIN4,"◁":t.MO.BIN4,"◂":t.MO.BIN4,"◄":t.MO.BIN4,"◅":t.MO.BIN4,"◆":t.MO.BIN4,"◇":t.MO.BIN4,"◈":t.MO.BIN4,"◉":t.MO.BIN4,"◌":t.MO.BIN4,"◍":t.MO.BIN4,"◎":t.MO.BIN4,"●":t.MO.BIN4,"◖":t.MO.BIN4,"◗":t.MO.BIN4,"◦":t.MO.BIN4,"♭":t.MO.ORD02,"♮":t.MO.ORD02,"♯":t.MO.ORD02,"❳":t.MO.CLOSE,"⟧":t.MO.CLOSE,"⟩":t.MO.CLOSE,"⟫":t.MO.CLOSE,"⟭":t.MO.CLOSE,"⟯":t.MO.CLOSE,"⦀":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"⦄":t.MO.CLOSE,"⦆":t.MO.CLOSE,"⦈":t.MO.CLOSE,"⦊":t.MO.CLOSE,"⦌":t.MO.CLOSE,"⦎":t.MO.CLOSE,"⦐":t.MO.CLOSE,"⦒":t.MO.CLOSE,"⦔":t.MO.CLOSE,"⦖":t.MO.CLOSE,"⦘":t.MO.CLOSE,"⧽":t.MO.CLOSE},infix:{"!=":t.MO.BIN4,"#":t.MO.ORD,$:t.MO.ORD,"%":[3,3,n.TEXCLASS.ORD,null],"&&":t.MO.BIN4,"":t.MO.ORD,"*":t.MO.BIN3,"**":o(1,1),"*=":t.MO.BIN4,"+":t.MO.BIN4,"+=":t.MO.BIN4,",":[0,3,n.TEXCLASS.PUNCT,{linebreakstyle:"after",separator:!0}],"-":t.MO.BIN4,"-=":t.MO.BIN4,"->":t.MO.BIN5,".":[0,3,n.TEXCLASS.PUNCT,{separator:!0}],"/":t.MO.ORD11,"//":o(1,1),"/=":t.MO.BIN4,":":[1,2,n.TEXCLASS.REL,null],":=":t.MO.BIN4,";":[0,3,n.TEXCLASS.PUNCT,{linebreakstyle:"after",separator:!0}],"<":t.MO.REL,"<=":t.MO.BIN5,"<>":o(1,1),"=":t.MO.REL,"==":t.MO.BIN4,">":t.MO.REL,">=":t.MO.BIN5,"?":[1,1,n.TEXCLASS.CLOSE,null],"@":t.MO.ORD11,"\\":t.MO.ORD,"^":t.MO.ORD11,_:t.MO.ORD11,"|":[2,2,n.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"||":[2,2,n.TEXCLASS.BIN,{fence:!0,stretchy:!0,symmetric:!0}],"|||":[2,2,n.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"±":t.MO.BIN4,"·":t.MO.BIN4,"×":t.MO.BIN4,"÷":t.MO.BIN4,"ʹ":t.MO.ORD,"̀":t.MO.ACCENT,"́":t.MO.ACCENT,"̃":t.MO.WIDEACCENT,"̄":t.MO.ACCENT,"̆":t.MO.ACCENT,"̇":t.MO.ACCENT,"̈":t.MO.ACCENT,"̌":t.MO.ACCENT,"̲":t.MO.WIDEACCENT,"̸":t.MO.REL4,"―":[0,0,n.TEXCLASS.ORD,{stretchy:!0}],"‗":[0,0,n.TEXCLASS.ORD,{stretchy:!0}],"†":t.MO.BIN3,"‡":t.MO.BIN3,"•":t.MO.BIN4,"…":t.MO.INNER,"⁃":t.MO.BIN4,"⁄":t.MO.TALLBIN,"⁡":t.MO.NONE,"⁢":t.MO.NONE,"⁣":[0,0,n.TEXCLASS.NONE,{linebreakstyle:"after",separator:!0}],"⁤":t.MO.NONE,"⃗":t.MO.ACCENT,ℑ:t.MO.ORD,ℓ:t.MO.ORD,"℘":t.MO.ORD,ℜ:t.MO.ORD,"←":t.MO.WIDEREL,"↑":t.MO.RELSTRETCH,"→":t.MO.WIDEREL,"↓":t.MO.RELSTRETCH,"↔":t.MO.WIDEREL,"↕":t.MO.RELSTRETCH,"↖":t.MO.RELSTRETCH,"↗":t.MO.RELSTRETCH,"↘":t.MO.RELSTRETCH,"↙":t.MO.RELSTRETCH,"↚":t.MO.RELACCENT,"↛":t.MO.RELACCENT,"↜":t.MO.WIDEREL,"↝":t.MO.WIDEREL,"↞":t.MO.WIDEREL,"↟":t.MO.WIDEREL,"↠":t.MO.WIDEREL,"↡":t.MO.RELSTRETCH,"↢":t.MO.WIDEREL,"↣":t.MO.WIDEREL,"↤":t.MO.WIDEREL,"↥":t.MO.RELSTRETCH,"↦":t.MO.WIDEREL,"↧":t.MO.RELSTRETCH,"↨":t.MO.RELSTRETCH,"↩":t.MO.WIDEREL,"↪":t.MO.WIDEREL,"↫":t.MO.WIDEREL,"↬":t.MO.WIDEREL,"↭":t.MO.WIDEREL,"↮":t.MO.RELACCENT,"↯":t.MO.RELSTRETCH,"↰":t.MO.RELSTRETCH,"↱":t.MO.RELSTRETCH,"↲":t.MO.RELSTRETCH,"↳":t.MO.RELSTRETCH,"↴":t.MO.RELSTRETCH,"↵":t.MO.RELSTRETCH,"↶":t.MO.RELACCENT,"↷":t.MO.RELACCENT,"↸":t.MO.REL,"↹":t.MO.WIDEREL,"↺":t.MO.REL,"↻":t.MO.REL,"↼":t.MO.WIDEREL,"↽":t.MO.WIDEREL,"↾":t.MO.RELSTRETCH,"↿":t.MO.RELSTRETCH,"⇀":t.MO.WIDEREL,"⇁":t.MO.WIDEREL,"⇂":t.MO.RELSTRETCH,"⇃":t.MO.RELSTRETCH,"⇄":t.MO.WIDEREL,"⇅":t.MO.RELSTRETCH,"⇆":t.MO.WIDEREL,"⇇":t.MO.WIDEREL,"⇈":t.MO.RELSTRETCH,"⇉":t.MO.WIDEREL,"⇊":t.MO.RELSTRETCH,"⇋":t.MO.WIDEREL,"⇌":t.MO.WIDEREL,"⇍":t.MO.RELACCENT,"⇎":t.MO.RELACCENT,"⇏":t.MO.RELACCENT,"⇐":t.MO.WIDEREL,"⇑":t.MO.RELSTRETCH,"⇒":t.MO.WIDEREL,"⇓":t.MO.RELSTRETCH,"⇔":t.MO.WIDEREL,"⇕":t.MO.RELSTRETCH,"⇖":t.MO.RELSTRETCH,"⇗":t.MO.RELSTRETCH,"⇘":t.MO.RELSTRETCH,"⇙":t.MO.RELSTRETCH,"⇚":t.MO.WIDEREL,"⇛":t.MO.WIDEREL,"⇜":t.MO.WIDEREL,"⇝":t.MO.WIDEREL,"⇞":t.MO.REL,"⇟":t.MO.REL,"⇠":t.MO.WIDEREL,"⇡":t.MO.RELSTRETCH,"⇢":t.MO.WIDEREL,"⇣":t.MO.RELSTRETCH,"⇤":t.MO.WIDEREL,"⇥":t.MO.WIDEREL,"⇦":t.MO.WIDEREL,"⇧":t.MO.RELSTRETCH,"⇨":t.MO.WIDEREL,"⇩":t.MO.RELSTRETCH,"⇪":t.MO.RELSTRETCH,"⇫":t.MO.RELSTRETCH,"⇬":t.MO.RELSTRETCH,"⇭":t.MO.RELSTRETCH,"⇮":t.MO.RELSTRETCH,"⇯":t.MO.RELSTRETCH,"⇰":t.MO.WIDEREL,"⇱":t.MO.REL,"⇲":t.MO.REL,"⇳":t.MO.RELSTRETCH,"⇴":t.MO.RELACCENT,"⇵":t.MO.RELSTRETCH,"⇶":t.MO.WIDEREL,"⇷":t.MO.RELACCENT,"⇸":t.MO.RELACCENT,"⇹":t.MO.RELACCENT,"⇺":t.MO.RELACCENT,"⇻":t.MO.RELACCENT,"⇼":t.MO.RELACCENT,"⇽":t.MO.WIDEREL,"⇾":t.MO.WIDEREL,"⇿":t.MO.WIDEREL,"∁":o(1,2,n.TEXCLASS.ORD),"∅":t.MO.ORD,"∆":t.MO.BIN3,"∈":t.MO.REL,"∉":t.MO.REL,"∊":t.MO.REL,"∋":t.MO.REL,"∌":t.MO.REL,"∍":t.MO.REL,"∎":t.MO.BIN3,"−":t.MO.BIN4,"∓":t.MO.BIN4,"∔":t.MO.BIN4,"∕":t.MO.TALLBIN,"∖":t.MO.BIN4,"∗":t.MO.BIN4,"∘":t.MO.BIN4,"∙":t.MO.BIN4,"∝":t.MO.REL,"∞":t.MO.ORD,"∟":t.MO.REL,"∣":t.MO.REL,"∤":t.MO.REL,"∥":t.MO.REL,"∦":t.MO.REL,"∧":t.MO.BIN4,"∨":t.MO.BIN4,"∩":t.MO.BIN4,"∪":t.MO.BIN4,"∴":t.MO.REL,"∵":t.MO.REL,"∶":t.MO.REL,"∷":t.MO.REL,"∸":t.MO.BIN4,"∹":t.MO.REL,"∺":t.MO.BIN4,"∻":t.MO.REL,"∼":t.MO.REL,"∽":t.MO.REL,"∽̱":t.MO.BIN3,"∾":t.MO.REL,"∿":t.MO.BIN3,"≀":t.MO.BIN4,"≁":t.MO.REL,"≂":t.MO.REL,"≂̸":t.MO.REL,"≃":t.MO.REL,"≄":t.MO.REL,"≅":t.MO.REL,"≆":t.MO.REL,"≇":t.MO.REL,"≈":t.MO.REL,"≉":t.MO.REL,"≊":t.MO.REL,"≋":t.MO.REL,"≌":t.MO.REL,"≍":t.MO.REL,"≎":t.MO.REL,"≎̸":t.MO.REL,"≏":t.MO.REL,"≏̸":t.MO.REL,"≐":t.MO.REL,"≑":t.MO.REL,"≒":t.MO.REL,"≓":t.MO.REL,"≔":t.MO.REL,"≕":t.MO.REL,"≖":t.MO.REL,"≗":t.MO.REL,"≘":t.MO.REL,"≙":t.MO.REL,"≚":t.MO.REL,"≛":t.MO.REL,"≜":t.MO.REL,"≝":t.MO.REL,"≞":t.MO.REL,"≟":t.MO.REL,"≠":t.MO.REL,"≡":t.MO.REL,"≢":t.MO.REL,"≣":t.MO.REL,"≤":t.MO.REL,"≥":t.MO.REL,"≦":t.MO.REL,"≦̸":t.MO.REL,"≧":t.MO.REL,"≨":t.MO.REL,"≩":t.MO.REL,"≪":t.MO.REL,"≪̸":t.MO.REL,"≫":t.MO.REL,"≫̸":t.MO.REL,"≬":t.MO.REL,"≭":t.MO.REL,"≮":t.MO.REL,"≯":t.MO.REL,"≰":t.MO.REL,"≱":t.MO.REL,"≲":t.MO.REL,"≳":t.MO.REL,"≴":t.MO.REL,"≵":t.MO.REL,"≶":t.MO.REL,"≷":t.MO.REL,"≸":t.MO.REL,"≹":t.MO.REL,"≺":t.MO.REL,"≻":t.MO.REL,"≼":t.MO.REL,"≽":t.MO.REL,"≾":t.MO.REL,"≿":t.MO.REL,"≿̸":t.MO.REL,"⊀":t.MO.REL,"⊁":t.MO.REL,"⊂":t.MO.REL,"⊂⃒":t.MO.REL,"⊃":t.MO.REL,"⊃⃒":t.MO.REL,"⊄":t.MO.REL,"⊅":t.MO.REL,"⊆":t.MO.REL,"⊇":t.MO.REL,"⊈":t.MO.REL,"⊉":t.MO.REL,"⊊":t.MO.REL,"⊋":t.MO.REL,"⊌":t.MO.BIN4,"⊍":t.MO.BIN4,"⊎":t.MO.BIN4,"⊏":t.MO.REL,"⊏̸":t.MO.REL,"⊐":t.MO.REL,"⊐̸":t.MO.REL,"⊑":t.MO.REL,"⊒":t.MO.REL,"⊓":t.MO.BIN4,"⊔":t.MO.BIN4,"⊕":t.MO.BIN4,"⊖":t.MO.BIN4,"⊗":t.MO.BIN4,"⊘":t.MO.BIN4,"⊙":t.MO.BIN4,"⊚":t.MO.BIN4,"⊛":t.MO.BIN4,"⊜":t.MO.BIN4,"⊝":t.MO.BIN4,"⊞":t.MO.BIN4,"⊟":t.MO.BIN4,"⊠":t.MO.BIN4,"⊡":t.MO.BIN4,"⊢":t.MO.REL,"⊣":t.MO.REL,"⊤":t.MO.ORD55,"⊥":t.MO.REL,"⊦":t.MO.REL,"⊧":t.MO.REL,"⊨":t.MO.REL,"⊩":t.MO.REL,"⊪":t.MO.REL,"⊫":t.MO.REL,"⊬":t.MO.REL,"⊭":t.MO.REL,"⊮":t.MO.REL,"⊯":t.MO.REL,"⊰":t.MO.REL,"⊱":t.MO.REL,"⊲":t.MO.REL,"⊳":t.MO.REL,"⊴":t.MO.REL,"⊵":t.MO.REL,"⊶":t.MO.REL,"⊷":t.MO.REL,"⊸":t.MO.REL,"⊹":t.MO.REL,"⊺":t.MO.BIN4,"⊻":t.MO.BIN4,"⊼":t.MO.BIN4,"⊽":t.MO.BIN4,"⊾":t.MO.BIN3,"⊿":t.MO.BIN3,"⋄":t.MO.BIN4,"⋅":t.MO.BIN4,"⋆":t.MO.BIN4,"⋇":t.MO.BIN4,"⋈":t.MO.REL,"⋉":t.MO.BIN4,"⋊":t.MO.BIN4,"⋋":t.MO.BIN4,"⋌":t.MO.BIN4,"⋍":t.MO.REL,"⋎":t.MO.BIN4,"⋏":t.MO.BIN4,"⋐":t.MO.REL,"⋑":t.MO.REL,"⋒":t.MO.BIN4,"⋓":t.MO.BIN4,"⋔":t.MO.REL,"⋕":t.MO.REL,"⋖":t.MO.REL,"⋗":t.MO.REL,"⋘":t.MO.REL,"⋙":t.MO.REL,"⋚":t.MO.REL,"⋛":t.MO.REL,"⋜":t.MO.REL,"⋝":t.MO.REL,"⋞":t.MO.REL,"⋟":t.MO.REL,"⋠":t.MO.REL,"⋡":t.MO.REL,"⋢":t.MO.REL,"⋣":t.MO.REL,"⋤":t.MO.REL,"⋥":t.MO.REL,"⋦":t.MO.REL,"⋧":t.MO.REL,"⋨":t.MO.REL,"⋩":t.MO.REL,"⋪":t.MO.REL,"⋫":t.MO.REL,"⋬":t.MO.REL,"⋭":t.MO.REL,"⋮":t.MO.ORD55,"⋯":t.MO.INNER,"⋰":t.MO.REL,"⋱":[5,5,n.TEXCLASS.INNER,null],"⋲":t.MO.REL,"⋳":t.MO.REL,"⋴":t.MO.REL,"⋵":t.MO.REL,"⋶":t.MO.REL,"⋷":t.MO.REL,"⋸":t.MO.REL,"⋹":t.MO.REL,"⋺":t.MO.REL,"⋻":t.MO.REL,"⋼":t.MO.REL,"⋽":t.MO.REL,"⋾":t.MO.REL,"⋿":t.MO.REL,"⌅":t.MO.BIN3,"⌆":t.MO.BIN3,"⌢":t.MO.REL4,"⌣":t.MO.REL4,"〈":t.MO.OPEN,"〉":t.MO.CLOSE,"⎪":t.MO.ORD,"⎯":[0,0,n.TEXCLASS.ORD,{stretchy:!0}],"⎰":t.MO.OPEN,"⎱":t.MO.CLOSE,"─":t.MO.ORD,"△":t.MO.BIN4,"▵":t.MO.BIN4,"▹":t.MO.BIN4,"▽":t.MO.BIN4,"▿":t.MO.BIN4,"◃":t.MO.BIN4,"◯":t.MO.BIN3,"♠":t.MO.ORD,"♡":t.MO.ORD,"♢":t.MO.ORD,"♣":t.MO.ORD,"❘":t.MO.REL,"⟰":t.MO.RELSTRETCH,"⟱":t.MO.RELSTRETCH,"⟵":t.MO.WIDEREL,"⟶":t.MO.WIDEREL,"⟷":t.MO.WIDEREL,"⟸":t.MO.WIDEREL,"⟹":t.MO.WIDEREL,"⟺":t.MO.WIDEREL,"⟻":t.MO.WIDEREL,"⟼":t.MO.WIDEREL,"⟽":t.MO.WIDEREL,"⟾":t.MO.WIDEREL,"⟿":t.MO.WIDEREL,"⤀":t.MO.RELACCENT,"⤁":t.MO.RELACCENT,"⤂":t.MO.RELACCENT,"⤃":t.MO.RELACCENT,"⤄":t.MO.RELACCENT,"⤅":t.MO.RELACCENT,"⤆":t.MO.RELACCENT,"⤇":t.MO.RELACCENT,"⤈":t.MO.REL,"⤉":t.MO.REL,"⤊":t.MO.RELSTRETCH,"⤋":t.MO.RELSTRETCH,"⤌":t.MO.WIDEREL,"⤍":t.MO.WIDEREL,"⤎":t.MO.WIDEREL,"⤏":t.MO.WIDEREL,"⤐":t.MO.WIDEREL,"⤑":t.MO.RELACCENT,"⤒":t.MO.RELSTRETCH,"⤓":t.MO.RELSTRETCH,"⤔":t.MO.RELACCENT,"⤕":t.MO.RELACCENT,"⤖":t.MO.RELACCENT,"⤗":t.MO.RELACCENT,"⤘":t.MO.RELACCENT,"⤙":t.MO.RELACCENT,"⤚":t.MO.RELACCENT,"⤛":t.MO.RELACCENT,"⤜":t.MO.RELACCENT,"⤝":t.MO.RELACCENT,"⤞":t.MO.RELACCENT,"⤟":t.MO.RELACCENT,"⤠":t.MO.RELACCENT,"⤡":t.MO.RELSTRETCH,"⤢":t.MO.RELSTRETCH,"⤣":t.MO.REL,"⤤":t.MO.REL,"⤥":t.MO.REL,"⤦":t.MO.REL,"⤧":t.MO.REL,"⤨":t.MO.REL,"⤩":t.MO.REL,"⤪":t.MO.REL,"⤫":t.MO.REL,"⤬":t.MO.REL,"⤭":t.MO.REL,"⤮":t.MO.REL,"⤯":t.MO.REL,"⤰":t.MO.REL,"⤱":t.MO.REL,"⤲":t.MO.REL,"⤳":t.MO.RELACCENT,"⤴":t.MO.REL,"⤵":t.MO.REL,"⤶":t.MO.REL,"⤷":t.MO.REL,"⤸":t.MO.REL,"⤹":t.MO.REL,"⤺":t.MO.RELACCENT,"⤻":t.MO.RELACCENT,"⤼":t.MO.RELACCENT,"⤽":t.MO.RELACCENT,"⤾":t.MO.REL,"⤿":t.MO.REL,"⥀":t.MO.REL,"⥁":t.MO.REL,"⥂":t.MO.RELACCENT,"⥃":t.MO.RELACCENT,"⥄":t.MO.RELACCENT,"⥅":t.MO.RELACCENT,"⥆":t.MO.RELACCENT,"⥇":t.MO.RELACCENT,"⥈":t.MO.RELACCENT,"⥉":t.MO.REL,"⥊":t.MO.RELACCENT,"⥋":t.MO.RELACCENT,"⥌":t.MO.REL,"⥍":t.MO.REL,"⥎":t.MO.WIDEREL,"⥏":t.MO.RELSTRETCH,"⥐":t.MO.WIDEREL,"⥑":t.MO.RELSTRETCH,"⥒":t.MO.WIDEREL,"⥓":t.MO.WIDEREL,"⥔":t.MO.RELSTRETCH,"⥕":t.MO.RELSTRETCH,"⥖":t.MO.RELSTRETCH,"⥗":t.MO.RELSTRETCH,"⥘":t.MO.RELSTRETCH,"⥙":t.MO.RELSTRETCH,"⥚":t.MO.WIDEREL,"⥛":t.MO.WIDEREL,"⥜":t.MO.RELSTRETCH,"⥝":t.MO.RELSTRETCH,"⥞":t.MO.WIDEREL,"⥟":t.MO.WIDEREL,"⥠":t.MO.RELSTRETCH,"⥡":t.MO.RELSTRETCH,"⥢":t.MO.RELACCENT,"⥣":t.MO.REL,"⥤":t.MO.RELACCENT,"⥥":t.MO.REL,"⥦":t.MO.RELACCENT,"⥧":t.MO.RELACCENT,"⥨":t.MO.RELACCENT,"⥩":t.MO.RELACCENT,"⥪":t.MO.RELACCENT,"⥫":t.MO.RELACCENT,"⥬":t.MO.RELACCENT,"⥭":t.MO.RELACCENT,"⥮":t.MO.RELSTRETCH,"⥯":t.MO.RELSTRETCH,"⥰":t.MO.RELACCENT,"⥱":t.MO.RELACCENT,"⥲":t.MO.RELACCENT,"⥳":t.MO.RELACCENT,"⥴":t.MO.RELACCENT,"⥵":t.MO.RELACCENT,"⥶":t.MO.RELACCENT,"⥷":t.MO.RELACCENT,"⥸":t.MO.RELACCENT,"⥹":t.MO.RELACCENT,"⥺":t.MO.RELACCENT,"⥻":t.MO.RELACCENT,"⥼":t.MO.RELACCENT,"⥽":t.MO.RELACCENT,"⥾":t.MO.REL,"⥿":t.MO.REL,"⦁":t.MO.BIN3,"⦂":t.MO.BIN3,"⦙":t.MO.BIN3,"⦚":t.MO.BIN3,"⦛":t.MO.BIN3,"⦜":t.MO.BIN3,"⦝":t.MO.BIN3,"⦞":t.MO.BIN3,"⦟":t.MO.BIN3,"⦠":t.MO.BIN3,"⦡":t.MO.BIN3,"⦢":t.MO.BIN3,"⦣":t.MO.BIN3,"⦤":t.MO.BIN3,"⦥":t.MO.BIN3,"⦦":t.MO.BIN3,"⦧":t.MO.BIN3,"⦨":t.MO.BIN3,"⦩":t.MO.BIN3,"⦪":t.MO.BIN3,"⦫":t.MO.BIN3,"⦬":t.MO.BIN3,"⦭":t.MO.BIN3,"⦮":t.MO.BIN3,"⦯":t.MO.BIN3,"⦰":t.MO.BIN3,"⦱":t.MO.BIN3,"⦲":t.MO.BIN3,"⦳":t.MO.BIN3,"⦴":t.MO.BIN3,"⦵":t.MO.BIN3,"⦶":t.MO.BIN4,"⦷":t.MO.BIN4,"⦸":t.MO.BIN4,"⦹":t.MO.BIN4,"⦺":t.MO.BIN4,"⦻":t.MO.BIN4,"⦼":t.MO.BIN4,"⦽":t.MO.BIN4,"⦾":t.MO.BIN4,"⦿":t.MO.BIN4,"⧀":t.MO.REL,"⧁":t.MO.REL,"⧂":t.MO.BIN3,"⧃":t.MO.BIN3,"⧄":t.MO.BIN4,"⧅":t.MO.BIN4,"⧆":t.MO.BIN4,"⧇":t.MO.BIN4,"⧈":t.MO.BIN4,"⧉":t.MO.BIN3,"⧊":t.MO.BIN3,"⧋":t.MO.BIN3,"⧌":t.MO.BIN3,"⧍":t.MO.BIN3,"⧎":t.MO.REL,"⧏":t.MO.REL,"⧏̸":t.MO.REL,"⧐":t.MO.REL,"⧐̸":t.MO.REL,"⧑":t.MO.REL,"⧒":t.MO.REL,"⧓":t.MO.REL,"⧔":t.MO.REL,"⧕":t.MO.REL,"⧖":t.MO.BIN4,"⧗":t.MO.BIN4,"⧘":t.MO.BIN3,"⧙":t.MO.BIN3,"⧛":t.MO.BIN3,"⧜":t.MO.BIN3,"⧝":t.MO.BIN3,"⧞":t.MO.REL,"⧟":t.MO.BIN3,"⧠":t.MO.BIN3,"⧡":t.MO.REL,"⧢":t.MO.BIN4,"⧣":t.MO.REL,"⧤":t.MO.REL,"⧥":t.MO.REL,"⧦":t.MO.REL,"⧧":t.MO.BIN3,"⧨":t.MO.BIN3,"⧩":t.MO.BIN3,"⧪":t.MO.BIN3,"⧫":t.MO.BIN3,"⧬":t.MO.BIN3,"⧭":t.MO.BIN3,"⧮":t.MO.BIN3,"⧯":t.MO.BIN3,"⧰":t.MO.BIN3,"⧱":t.MO.BIN3,"⧲":t.MO.BIN3,"⧳":t.MO.BIN3,"⧴":t.MO.REL,"⧵":t.MO.BIN4,"⧶":t.MO.BIN4,"⧷":t.MO.BIN4,"⧸":t.MO.BIN3,"⧹":t.MO.BIN3,"⧺":t.MO.BIN3,"⧻":t.MO.BIN3,"⧾":t.MO.BIN4,"⧿":t.MO.BIN4,"⨝":t.MO.BIN3,"⨞":t.MO.BIN3,"⨟":t.MO.BIN3,"⨠":t.MO.BIN3,"⨡":t.MO.BIN3,"⨢":t.MO.BIN4,"⨣":t.MO.BIN4,"⨤":t.MO.BIN4,"⨥":t.MO.BIN4,"⨦":t.MO.BIN4,"⨧":t.MO.BIN4,"⨨":t.MO.BIN4,"⨩":t.MO.BIN4,"⨪":t.MO.BIN4,"⨫":t.MO.BIN4,"⨬":t.MO.BIN4,"⨭":t.MO.BIN4,"⨮":t.MO.BIN4,"⨯":t.MO.BIN4,"⨰":t.MO.BIN4,"⨱":t.MO.BIN4,"⨲":t.MO.BIN4,"⨳":t.MO.BIN4,"⨴":t.MO.BIN4,"⨵":t.MO.BIN4,"⨶":t.MO.BIN4,"⨷":t.MO.BIN4,"⨸":t.MO.BIN4,"⨹":t.MO.BIN4,"⨺":t.MO.BIN4,"⨻":t.MO.BIN4,"⨼":t.MO.BIN4,"⨽":t.MO.BIN4,"⨾":t.MO.BIN4,"⨿":t.MO.BIN4,"⩀":t.MO.BIN4,"⩁":t.MO.BIN4,"⩂":t.MO.BIN4,"⩃":t.MO.BIN4,"⩄":t.MO.BIN4,"⩅":t.MO.BIN4,"⩆":t.MO.BIN4,"⩇":t.MO.BIN4,"⩈":t.MO.BIN4,"⩉":t.MO.BIN4,"⩊":t.MO.BIN4,"⩋":t.MO.BIN4,"⩌":t.MO.BIN4,"⩍":t.MO.BIN4,"⩎":t.MO.BIN4,"⩏":t.MO.BIN4,"⩐":t.MO.BIN4,"⩑":t.MO.BIN4,"⩒":t.MO.BIN4,"⩓":t.MO.BIN4,"⩔":t.MO.BIN4,"⩕":t.MO.BIN4,"⩖":t.MO.BIN4,"⩗":t.MO.BIN4,"⩘":t.MO.BIN4,"⩙":t.MO.REL,"⩚":t.MO.BIN4,"⩛":t.MO.BIN4,"⩜":t.MO.BIN4,"⩝":t.MO.BIN4,"⩞":t.MO.BIN4,"⩟":t.MO.BIN4,"⩠":t.MO.BIN4,"⩡":t.MO.BIN4,"⩢":t.MO.BIN4,"⩣":t.MO.BIN4,"⩤":t.MO.BIN4,"⩥":t.MO.BIN4,"⩦":t.MO.REL,"⩧":t.MO.REL,"⩨":t.MO.REL,"⩩":t.MO.REL,"⩪":t.MO.REL,"⩫":t.MO.REL,"⩬":t.MO.REL,"⩭":t.MO.REL,"⩮":t.MO.REL,"⩯":t.MO.REL,"⩰":t.MO.REL,"⩱":t.MO.BIN4,"⩲":t.MO.BIN4,"⩳":t.MO.REL,"⩴":t.MO.REL,"⩵":t.MO.REL,"⩶":t.MO.REL,"⩷":t.MO.REL,"⩸":t.MO.REL,"⩹":t.MO.REL,"⩺":t.MO.REL,"⩻":t.MO.REL,"⩼":t.MO.REL,"⩽":t.MO.REL,"⩽̸":t.MO.REL,"⩾":t.MO.REL,"⩾̸":t.MO.REL,"⩿":t.MO.REL,"⪀":t.MO.REL,"⪁":t.MO.REL,"⪂":t.MO.REL,"⪃":t.MO.REL,"⪄":t.MO.REL,"⪅":t.MO.REL,"⪆":t.MO.REL,"⪇":t.MO.REL,"⪈":t.MO.REL,"⪉":t.MO.REL,"⪊":t.MO.REL,"⪋":t.MO.REL,"⪌":t.MO.REL,"⪍":t.MO.REL,"⪎":t.MO.REL,"⪏":t.MO.REL,"⪐":t.MO.REL,"⪑":t.MO.REL,"⪒":t.MO.REL,"⪓":t.MO.REL,"⪔":t.MO.REL,"⪕":t.MO.REL,"⪖":t.MO.REL,"⪗":t.MO.REL,"⪘":t.MO.REL,"⪙":t.MO.REL,"⪚":t.MO.REL,"⪛":t.MO.REL,"⪜":t.MO.REL,"⪝":t.MO.REL,"⪞":t.MO.REL,"⪟":t.MO.REL,"⪠":t.MO.REL,"⪡":t.MO.REL,"⪡̸":t.MO.REL,"⪢":t.MO.REL,"⪢̸":t.MO.REL,"⪣":t.MO.REL,"⪤":t.MO.REL,"⪥":t.MO.REL,"⪦":t.MO.REL,"⪧":t.MO.REL,"⪨":t.MO.REL,"⪩":t.MO.REL,"⪪":t.MO.REL,"⪫":t.MO.REL,"⪬":t.MO.REL,"⪭":t.MO.REL,"⪮":t.MO.REL,"⪯":t.MO.REL,"⪯̸":t.MO.REL,"⪰":t.MO.REL,"⪰̸":t.MO.REL,"⪱":t.MO.REL,"⪲":t.MO.REL,"⪳":t.MO.REL,"⪴":t.MO.REL,"⪵":t.MO.REL,"⪶":t.MO.REL,"⪷":t.MO.REL,"⪸":t.MO.REL,"⪹":t.MO.REL,"⪺":t.MO.REL,"⪻":t.MO.REL,"⪼":t.MO.REL,"⪽":t.MO.REL,"⪾":t.MO.REL,"⪿":t.MO.REL,"⫀":t.MO.REL,"⫁":t.MO.REL,"⫂":t.MO.REL,"⫃":t.MO.REL,"⫄":t.MO.REL,"⫅":t.MO.REL,"⫆":t.MO.REL,"⫇":t.MO.REL,"⫈":t.MO.REL,"⫉":t.MO.REL,"⫊":t.MO.REL,"⫋":t.MO.REL,"⫌":t.MO.REL,"⫍":t.MO.REL,"⫎":t.MO.REL,"⫏":t.MO.REL,"⫐":t.MO.REL,"⫑":t.MO.REL,"⫒":t.MO.REL,"⫓":t.MO.REL,"⫔":t.MO.REL,"⫕":t.MO.REL,"⫖":t.MO.REL,"⫗":t.MO.REL,"⫘":t.MO.REL,"⫙":t.MO.REL,"⫚":t.MO.REL,"⫛":t.MO.REL,"⫝":t.MO.REL,"⫝̸":t.MO.REL,"⫞":t.MO.REL,"⫟":t.MO.REL,"⫠":t.MO.REL,"⫡":t.MO.REL,"⫢":t.MO.REL,"⫣":t.MO.REL,"⫤":t.MO.REL,"⫥":t.MO.REL,"⫦":t.MO.REL,"⫧":t.MO.REL,"⫨":t.MO.REL,"⫩":t.MO.REL,"⫪":t.MO.REL,"⫫":t.MO.REL,"⫬":t.MO.REL,"⫭":t.MO.REL,"⫮":t.MO.REL,"⫯":t.MO.REL,"⫰":t.MO.REL,"⫱":t.MO.REL,"⫲":t.MO.REL,"⫳":t.MO.REL,"⫴":t.MO.BIN4,"⫵":t.MO.BIN4,"⫶":t.MO.BIN4,"⫷":t.MO.REL,"⫸":t.MO.REL,"⫹":t.MO.REL,"⫺":t.MO.REL,"⫻":t.MO.BIN4,"⫽":t.MO.BIN4,"⫾":t.MO.BIN3,"⭅":t.MO.RELSTRETCH,"⭆":t.MO.RELSTRETCH,"〈":t.MO.OPEN,"〉":t.MO.CLOSE,"︷":t.MO.WIDEACCENT,"︸":t.MO.WIDEACCENT}},t.OPTABLE.infix["^"]=t.MO.WIDEREL,t.OPTABLE.infix._=t.MO.WIDEREL,t.OPTABLE.infix["⫝̸"]=t.MO.REL}(p3)),p3}var dE;function T0(){if(dE)return Zr;dE=1;var t=Zr&&Zr.__extends||function(){var l=function(c,u){return l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,f){d.__proto__=f}||function(d,f){for(var T in f)Object.prototype.hasOwnProperty.call(f,T)&&(d[T]=f[T])},l(c,u)};return function(c,u){if(typeof u!="function"&&u!==null)throw new TypeError("Class extends value "+String(u)+" is not a constructor or null");l(c,u);function d(){this.constructor=c}c.prototype=u===null?Object.create(u):(d.prototype=u.prototype,new d)}}(),e=Zr&&Zr.__assign||function(){return e=Object.assign||function(l){for(var c,u=1,d=arguments.length;u0)&&!(f=d.next()).done;)T.push(f.value)}catch(g){h={error:g}}finally{try{f&&!f.done&&(u=d.return)&&u.call(d)}finally{if(h)throw h.error}}return T},o=Zr&&Zr.__values||function(l){var c=typeof Symbol=="function"&&Symbol.iterator,u=c&&l[c],d=0;if(u)return u.call(l);if(l&&typeof l.length=="number")return{next:function(){return l&&d>=l.length&&(l=void 0),{value:l&&l[d++],done:!l}}};throw new TypeError(c?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Zr,"__esModule",{value:!0}),Zr.MmlMo=void 0;var r=rt(),i=uD(),s=Uo(),a=function(l){t(c,l);function c(){var u=l!==null&&l.apply(this,arguments)||this;return u._texClass=null,u.lspace=5/18,u.rspace=5/18,u}return Object.defineProperty(c.prototype,"texClass",{get:function(){if(this._texClass===null){var u=this.getText(),d=n(this.handleExplicitForm(this.getForms()),3),f=d[0],T=d[1],h=d[2],g=this.constructor.OPTABLE,Q=g[f][u]||g[T][u]||g[h][u];return Q?Q[2]:r.TEXCLASS.REL}return this._texClass},set:function(u){this._texClass=u},enumerable:!1,configurable:!0}),Object.defineProperty(c.prototype,"kind",{get:function(){return"mo"},enumerable:!1,configurable:!0}),Object.defineProperty(c.prototype,"isEmbellished",{get:function(){return!0},enumerable:!1,configurable:!0}),Object.defineProperty(c.prototype,"hasNewLine",{get:function(){return this.attributes.get("linebreak")==="newline"},enumerable:!1,configurable:!0}),c.prototype.coreParent=function(){for(var u=this,d=this,f=this.factory.getNodeClass("math");d&&d.isEmbellished&&d.coreMO()===this&&!(d instanceof f);)u=d,d=d.parent;return u},c.prototype.coreText=function(u){if(!u)return"";if(u.isEmbellished)return u.coreMO().getText();for(;((u.isKind("mrow")||u.isKind("TeXAtom")&&u.texClass!==r.TEXCLASS.VCENTER||u.isKind("mstyle")||u.isKind("mphantom"))&&u.childNodes.length===1||u.isKind("munderover"))&&u.childNodes[0];)u=u.childNodes[0];return u.isToken?u.getText():""},c.prototype.hasSpacingAttributes=function(){return this.attributes.isSet("lspace")||this.attributes.isSet("rspace")},Object.defineProperty(c.prototype,"isAccent",{get:function(){var u=!1,d=this.coreParent().parent;if(d){var f=d.isKind("mover")?d.childNodes[d.over].coreMO()?"accent":"":d.isKind("munder")?d.childNodes[d.under].coreMO()?"accentunder":"":d.isKind("munderover")?this===d.childNodes[d.over].coreMO()?"accent":this===d.childNodes[d.under].coreMO()?"accentunder":"":"";if(f){var T=d.attributes.getExplicit(f);u=T!==void 0?u:this.attributes.get("accent")}}return u},enumerable:!1,configurable:!0}),c.prototype.setTeXclass=function(u){var d=this.attributes.getList("form","fence"),f=d.form,T=d.fence;return this.getProperty("texClass")===void 0&&(this.attributes.isSet("lspace")||this.attributes.isSet("rspace"))?null:(T&&this.texClass===r.TEXCLASS.REL&&(f==="prefix"&&(this.texClass=r.TEXCLASS.OPEN),f==="postfix"&&(this.texClass=r.TEXCLASS.CLOSE)),this.adjustTeXclass(u))},c.prototype.adjustTeXclass=function(u){var d=this.texClass,f=this.prevClass;if(d===r.TEXCLASS.NONE)return u;if(u?(u.getProperty("autoOP")&&(d===r.TEXCLASS.BIN||d===r.TEXCLASS.REL)&&(f=u.texClass=r.TEXCLASS.ORD),f=this.prevClass=u.texClass||r.TEXCLASS.ORD,this.prevLevel=this.attributes.getInherited("scriptlevel")):f=this.prevClass=r.TEXCLASS.NONE,d===r.TEXCLASS.BIN&&(f===r.TEXCLASS.NONE||f===r.TEXCLASS.BIN||f===r.TEXCLASS.OP||f===r.TEXCLASS.REL||f===r.TEXCLASS.OPEN||f===r.TEXCLASS.PUNCT))this.texClass=r.TEXCLASS.ORD;else if(f===r.TEXCLASS.BIN&&(d===r.TEXCLASS.REL||d===r.TEXCLASS.CLOSE||d===r.TEXCLASS.PUNCT))u.texClass=this.prevClass=r.TEXCLASS.ORD;else if(d===r.TEXCLASS.BIN){for(var T=this,h=this.parent;h&&h.parent&&h.isEmbellished&&(h.childNodes.length===1||!h.isKind("mrow")&&h.core()===T);)T=h,h=h.parent;h.childNodes[h.childNodes.length-1]===T&&(this.texClass=r.TEXCLASS.ORD)}return this},c.prototype.setInheritedAttributes=function(u,d,f,T){u===void 0&&(u={}),d===void 0&&(d=!1),f===void 0&&(f=0),T===void 0&&(T=!1),l.prototype.setInheritedAttributes.call(this,u,d,f,T);var h=this.getText();this.checkOperatorTable(h),this.checkPseudoScripts(h),this.checkPrimes(h),this.checkMathAccent(h)},c.prototype.checkOperatorTable=function(u){var d,f,T=n(this.handleExplicitForm(this.getForms()),3),h=T[0],g=T[1],Q=T[2];this.attributes.setInherited("form",h);var m=this.constructor.OPTABLE,_=m[h][u]||m[g][u]||m[Q][u];if(_){this.getProperty("texClass")===void 0&&(this.texClass=_[2]);try{for(var v=o(Object.keys(_[3]||{})),b=v.next();!b.done;b=v.next()){var y=b.value;this.attributes.setInherited(y,_[3][y])}}catch(L){d={error:L}}finally{try{b&&!b.done&&(f=v.return)&&f.call(v)}finally{if(d)throw d.error}}this.lspace=(_[0]+1)/18,this.rspace=(_[1]+1)/18}else{var E=(0,i.getRange)(u);if(E){this.getProperty("texClass")===void 0&&(this.texClass=E[2]);var x=this.constructor.MMLSPACING[E[2]];this.lspace=(x[0]+1)/18,this.rspace=(x[1]+1)/18}}},c.prototype.getForms=function(){for(var u=this,d=this.parent,f=this.Parent;f&&f.isEmbellished;)u=d,d=f.parent,f=f.Parent;if(d&&d.isKind("mrow")&&d.nonSpaceLength()!==1){if(d.firstNonSpace()===u)return["prefix","infix","postfix"];if(d.lastNonSpace()===u)return["postfix","infix","prefix"]}return["infix","prefix","postfix"]},c.prototype.handleExplicitForm=function(u){if(this.attributes.isSet("form")){var d=this.attributes.get("form");u=[d].concat(u.filter(function(f){return f!==d}))}return u},c.prototype.checkPseudoScripts=function(u){var d=this.constructor.pseudoScripts;if(u.match(d)){var f=this.coreParent().Parent,T=!f||!(f.isKind("msubsup")&&!f.isKind("msub"));this.setProperty("pseudoscript",T),T&&(this.attributes.setInherited("lspace",0),this.attributes.setInherited("rspace",0))}},c.prototype.checkPrimes=function(u){var d=this.constructor.primes;if(u.match(d)){var f=this.constructor.remapPrimes,T=(0,s.unicodeString)((0,s.unicodeChars)(u).map(function(h){return f[h]}));this.setProperty("primes",T)}},c.prototype.checkMathAccent=function(u){var d=this.Parent;if(!(this.getProperty("mathaccent")!==void 0||!d||!d.isKind("munderover"))){var f=d.childNodes[0];if(!(f.isEmbellished&&f.coreMO()===this)){var T=this.constructor.mathaccents;u.match(T)&&this.setProperty("mathaccent",!0)}}},c.defaults=e(e({},r.AbstractMmlTokenNode.defaults),{form:"infix",fence:!1,separator:!1,lspace:"thickmathspace",rspace:"thickmathspace",stretchy:!1,symmetric:!1,maxsize:"infinity",minsize:"0em",largeop:!1,movablelimits:!1,accent:!1,linebreak:"auto",lineleading:"1ex",linebreakstyle:"before",indentalign:"auto",indentshift:"0",indenttarget:"",indentalignfirst:"indentalign",indentshiftfirst:"indentshift",indentalignlast:"indentalign",indentshiftlast:"indentshift"}),c.MMLSPACING=i.MMLSPACING,c.OPTABLE=i.OPTABLE,c.pseudoScripts=new RegExp(["^[\"'*`","ª","°","²-´","¹","º","‘-‟","′-‷⁗","⁰ⁱ","⁴-ⁿ","₀-₎","]+$"].join("")),c.primes=new RegExp(["^[\"'`","‘-‟","]+$"].join("")),c.remapPrimes={34:8243,39:8242,96:8245,8216:8245,8217:8242,8218:8242,8219:8245,8220:8246,8221:8243,8222:8243,8223:8246},c.mathaccents=new RegExp(["^[","´́ˊ","`̀ˋ","¨̈","~̃˜","¯̄ˉ","˘̆","ˇ̌","^̂ˆ","→⃗","˙̇","˚̊","⃛","⃜","]$"].join("")),c}(r.AbstractMmlTokenNode);return Zr.MmlMo=a,Zr}var TE;function ln(){if(TE)return zo;TE=1;var t=zo&&zo.__values||function(s){var a=typeof Symbol=="function"&&Symbol.iterator,l=a&&s[a],c=0;if(l)return l.call(s);if(s&&typeof s.length=="number")return{next:function(){return s&&c>=s.length&&(s=void 0),{value:s&&s[c++],done:!s}}};throw new TypeError(a?"Object is not iterable.":"Symbol.iterator is not defined.")},e=zo&&zo.__read||function(s,a){var l=typeof Symbol=="function"&&s[Symbol.iterator];if(!l)return s;var c=l.call(s),u,d=[],f;try{for(;(a===void 0||a-- >0)&&!(u=c.next()).done;)d.push(u.value)}catch(T){f={error:T}}finally{try{u&&!u.done&&(l=c.return)&&l.call(c)}finally{if(f)throw f.error}}return d},n=zo&&zo.__spreadArray||function(s,a,l){if(l||arguments.length===2)for(var c=0,u=a.length,d;c=i.length&&(i=void 0),{value:i&&i[l++],done:!i}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")},e=M1&&M1.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(M1,"__esModule",{value:!0});var n=rt(),o=e(ln()),r;return function(i){i.cleanStretchy=function(u){var d,f,T=u.data;try{for(var h=t(T.getList("fixStretchy")),g=h.next();!g.done;g=h.next()){var Q=g.value;if(o.default.getProperty(Q,"fixStretchy")){var m=o.default.getForm(Q);m&&m[3]&&m[3].stretchy&&o.default.setAttribute(Q,"stretchy",!1);var _=Q.parent;if(!o.default.getTexClass(Q)&&(!m||!m[2])){var v=T.nodeFactory.create("node","TeXAtom",[Q]);_.replaceChild(v,Q),v.inheritAttributesFrom(Q)}o.default.removeProperties(Q,"fixStretchy")}}}catch(b){d={error:b}}finally{try{g&&!g.done&&(f=h.return)&&f.call(h)}finally{if(d)throw d.error}}},i.cleanAttributes=function(u){var d=u.data.root;d.walkTree(function(f,T){var h,g,Q=f.attributes;if(Q){var m=new Set((Q.get("mjx-keep-attrs")||"").split(/ /));delete Q.getAllAttributes()["mjx-keep-attrs"];try{for(var _=t(Q.getExplicitNames()),v=_.next();!v.done;v=_.next()){var b=v.value;!m.has(b)&&Q.attributes[b]===f.attributes.getInherited(b)&&delete Q.attributes[b]}}catch(y){h={error:y}}finally{try{v&&!v.done&&(g=_.return)&&g.call(_)}finally{if(h)throw h.error}}}},{})},i.combineRelations=function(u){var d,f,T,h,g=[];try{for(var Q=t(u.data.getList("mo")),m=Q.next();!m.done;m=Q.next()){var _=m.value;if(!(_.getProperty("relationsCombined")||!_.parent||_.parent&&!o.default.isType(_.parent,"mrow")||o.default.getTexClass(_)!==n.TEXCLASS.REL)){for(var v=_.parent,b=void 0,y=v.childNodes,E=y.indexOf(_)+1,x=o.default.getProperty(_,"variantForm");E="0"&&a<="9")r[i]=o[parseInt(r[i],10)-1],typeof r[i]=="number"&&(r[i]=r[i].toString());else if(a==="{")if(a=r[i].substr(1),a>="0"&&a<="9")r[i]=o[parseInt(r[i].substr(1,r[i].length-2),10)-1],typeof r[i]=="number"&&(r[i]=r[i].toString());else{var l=r[i].match(/^\{([a-z]+):%(\d+)\|(.*)\}$/);l&&(r[i]="%"+r[i])}r[i]==null&&(r[i]="???")}return r.join("")},e.pattern=/%(\d+|\{\d+\}|\{[a-z]+:\%\d+(?:\|(?:%\{\d+\}|%.|[^\}])*)+\}|.)/g,e}();return L6.default=t,L6}var J9={},h3={},hE;function O1t(){if(hE)return h3;hE=1,Object.defineProperty(h3,"__esModule",{value:!0}),h3.asyncLoad=void 0;var t=Vp();function e(n){return t.mathjax.asyncLoad?new Promise(function(o,r){var i=t.mathjax.asyncLoad(n);i instanceof Promise?i.then(function(s){return o(s)}).catch(function(s){return r(s)}):o(i)}):Promise.reject("Can't load '".concat(n,"': No asyncLoad method specified"))}return h3.asyncLoad=e,h3}var mE;function Wc(){return mE||(mE=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.numeric=t.translate=t.remove=t.add=t.entities=t.options=void 0;var e=$p(),n=O1t();t.options={loadMissingEntities:!0},t.entities={ApplyFunction:"⁡",Backslash:"∖",Because:"∵",Breve:"˘",Cap:"⋒",CenterDot:"·",CircleDot:"⊙",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",Congruent:"≡",ContourIntegral:"∮",Coproduct:"∐",Cross:"⨯",Cup:"⋓",CupCap:"≍",Dagger:"‡",Del:"∇",Delta:"Δ",Diamond:"⋄",DifferentialD:"ⅆ",DotEqual:"≐",DoubleDot:"¨",DoubleRightTee:"⊨",DoubleVerticalBar:"∥",DownArrow:"↓",DownLeftVector:"↽",DownRightVector:"⇁",DownTee:"⊤",Downarrow:"⇓",Element:"∈",EqualTilde:"≂",Equilibrium:"⇌",Exists:"∃",ExponentialE:"ⅇ",FilledVerySmallSquare:"▪",ForAll:"∀",Gamma:"Γ",Gg:"⋙",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Hacek:"ˇ",Hat:"^",HumpDownHump:"≎",HumpEqual:"≏",Im:"ℑ",ImaginaryI:"ⅈ",Integral:"∫",Intersection:"⋂",InvisibleComma:"⁣",InvisibleTimes:"⁢",Lambda:"Λ",Larr:"↞",LeftAngleBracket:"⟨",LeftArrow:"←",LeftArrowRightArrow:"⇆",LeftCeiling:"⌈",LeftDownVector:"⇃",LeftFloor:"⌊",LeftRightArrow:"↔",LeftTee:"⊣",LeftTriangle:"⊲",LeftTriangleEqual:"⊴",LeftUpVector:"↿",LeftVector:"↼",Leftarrow:"⇐",Leftrightarrow:"⇔",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",LessSlantEqual:"⩽",LessTilde:"≲",Ll:"⋘",Lleftarrow:"⇚",LongLeftArrow:"⟵",LongLeftRightArrow:"⟷",LongRightArrow:"⟶",Longleftarrow:"⟸",Longleftrightarrow:"⟺",Longrightarrow:"⟹",Lsh:"↰",MinusPlus:"∓",NestedGreaterGreater:"≫",NestedLessLess:"≪",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotLeftTriangle:"⋪",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotPrecedes:"⊀",NotPrecedesSlantEqual:"⋠",NotRightTriangle:"⋫",NotRightTriangleEqual:"⋭",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsSlantEqual:"⋡",NotSupersetEqual:"⊉",NotTilde:"≁",NotVerticalBar:"∤",Omega:"Ω",OverBar:"‾",OverBrace:"⏞",PartialD:"∂",Phi:"Φ",Pi:"Π",PlusMinus:"±",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",Product:"∏",Proportional:"∝",Psi:"Ψ",Rarr:"↠",Re:"ℜ",ReverseEquilibrium:"⇋",RightAngleBracket:"⟩",RightArrow:"→",RightArrowLeftArrow:"⇄",RightCeiling:"⌉",RightDownVector:"⇂",RightFloor:"⌋",RightTee:"⊢",RightTeeArrow:"↦",RightTriangle:"⊳",RightTriangleEqual:"⊵",RightUpVector:"↾",RightVector:"⇀",Rightarrow:"⇒",Rrightarrow:"⇛",Rsh:"↱",Sigma:"Σ",SmallCircle:"∘",Sqrt:"√",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",Star:"⋆",Subset:"⋐",SubsetEqual:"⊆",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",SuchThat:"∋",Sum:"∑",Superset:"⊃",SupersetEqual:"⊇",Supset:"⋑",Therefore:"∴",Theta:"Θ",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",UnderBar:"_",UnderBrace:"⏟",Union:"⋃",UnionPlus:"⊎",UpArrow:"↑",UpDownArrow:"↕",UpTee:"⊥",Uparrow:"⇑",Updownarrow:"⇕",Upsilon:"Υ",Vdash:"⊩",Vee:"⋁",VerticalBar:"∣",VerticalTilde:"≀",Vvdash:"⊪",Wedge:"⋀",Xi:"Ξ",amp:"&",acute:"´",aleph:"ℵ",alpha:"α",amalg:"⨿",and:"∧",ang:"∠",angmsd:"∡",angsph:"∢",ape:"≊",backprime:"‵",backsim:"∽",backsimeq:"⋍",beta:"β",beth:"ℶ",between:"≬",bigcirc:"◯",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",blacklozenge:"⧫",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",bowtie:"⋈",boxdl:"┐",boxdr:"┌",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxul:"┘",boxur:"└",bsol:"\\",bull:"•",cap:"∩",check:"✓",chi:"χ",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledR:"®",circledS:"Ⓢ",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",clubs:"♣",colon:":",comp:"∁",ctdot:"⋯",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cup:"∪",curarr:"↷",curlyvee:"⋎",curlywedge:"⋏",dagger:"†",daleth:"ℸ",ddarr:"⇊",deg:"°",delta:"δ",digamma:"ϝ",div:"÷",divideontimes:"⋇",dot:"˙",doteqdot:"≑",dotplus:"∔",dotsquare:"⊡",dtdot:"⋱",ecir:"≖",efDot:"≒",egs:"⪖",ell:"ℓ",els:"⪕",empty:"∅",epsi:"ε",epsiv:"ϵ",erDot:"≓",eta:"η",eth:"ð",flat:"♭",fork:"⋔",frown:"⌢",gEl:"⪌",gamma:"γ",gap:"⪆",gimel:"ℷ",gnE:"≩",gnap:"⪊",gne:"⪈",gnsim:"⋧",gt:">",gtdot:"⋗",harrw:"↭",hbar:"ℏ",hellip:"…",hookleftarrow:"↩",hookrightarrow:"↪",imath:"ı",infin:"∞",intcal:"⊺",iota:"ι",jmath:"ȷ",kappa:"κ",kappav:"ϰ",lEg:"⪋",lambda:"λ",lap:"⪅",larrlp:"↫",larrtl:"↢",lbrace:"{",lbrack:"[",le:"≤",leftleftarrows:"⇇",leftthreetimes:"⋋",lessdot:"⋖",lmoust:"⎰",lnE:"≨",lnap:"⪉",lne:"⪇",lnsim:"⋦",longmapsto:"⟼",looparrowright:"↬",lowast:"∗",loz:"◊",lt:"<",ltimes:"⋉",ltri:"◃",macr:"¯",malt:"✠",mho:"℧",mu:"μ",multimap:"⊸",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nRightarrow:"⇏",nVDash:"⊯",nVdash:"⊮",natur:"♮",nearr:"↗",nharr:"↮",nlarr:"↚",not:"¬",nrarr:"↛",nu:"ν",nvDash:"⊭",nvdash:"⊬",nwarr:"↖",omega:"ω",omicron:"ο",or:"∨",osol:"⊘",period:".",phi:"φ",phiv:"ϕ",pi:"π",piv:"ϖ",prap:"⪷",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",prime:"′",psi:"ψ",quot:'"',rarrtl:"↣",rbrace:"}",rbrack:"]",rho:"ρ",rhov:"ϱ",rightrightarrows:"⇉",rightthreetimes:"⋌",ring:"˚",rmoust:"⎱",rtimes:"⋊",rtri:"▹",scap:"⪸",scnE:"⪶",scnap:"⪺",scnsim:"⋩",sdot:"⋅",searr:"↘",sect:"§",sharp:"♯",sigma:"σ",sigmav:"ς",simne:"≆",smile:"⌣",spades:"♠",sub:"⊂",subE:"⫅",subnE:"⫋",subne:"⊊",supE:"⫆",supnE:"⫌",supne:"⊋",swarr:"↙",tau:"τ",theta:"θ",thetav:"ϑ",tilde:"˜",times:"×",triangle:"▵",triangleq:"≜",upsi:"υ",upuparrows:"⇈",veebar:"⊻",vellip:"⋮",weierp:"℘",xi:"ξ",yen:"¥",zeta:"ζ",zigrarr:"⇝",nbsp:" ",rsquo:"’",lsquo:"‘"};var o={};function r(c,u){Object.assign(t.entities,c),o[u]=!0}t.add=r;function i(c){delete t.entities[c]}t.remove=i;function s(c){return c.replace(/&([a-z][a-z0-9]*|#(?:[0-9]+|x[0-9a-f]+));/ig,a)}t.translate=s;function a(c,u){if(u.charAt(0)==="#")return l(u.slice(1));if(t.entities[u])return t.entities[u];if(t.options.loadMissingEntities){var d=u.match(/^[a-zA-Z](fr|scr|opf)$/)?RegExp.$1:u.charAt(0).toLowerCase();o[d]||(o[d]=!0,(0,e.retryAfter)((0,n.asyncLoad)("./util/entities/"+d+".js")))}return c}function l(c){var u=c.charAt(0)==="x"?parseInt(c.slice(1),16):parseInt(c);return String.fromCodePoint(u)}t.numeric=l}(J9)),J9}var gE;function on(){if(gE)return Yo;gE=1;var t=Yo&&Yo.__read||function(c,u){var d=typeof Symbol=="function"&&c[Symbol.iterator];if(!d)return c;var f=d.call(c),T,h=[],g;try{for(;(u===void 0||u-- >0)&&!(T=f.next()).done;)h.push(T.value)}catch(Q){g={error:Q}}finally{try{T&&!T.done&&(d=f.return)&&d.call(f)}finally{if(g)throw g.error}}return h},e=Yo&&Yo.__values||function(c){var u=typeof Symbol=="function"&&Symbol.iterator,d=u&&c[u],f=0;if(d)return d.call(c);if(c&&typeof c.length=="number")return{next:function(){return c&&f>=c.length&&(c=void 0),{value:c&&c[f++],done:!c}}};throw new TypeError(u?"Object is not iterable.":"Symbol.iterator is not defined.")},n=Yo&&Yo.__importDefault||function(c){return c&&c.__esModule?c:{default:c}};Object.defineProperty(Yo,"__esModule",{value:!0});var o=rt(),r=n(ln()),i=n(pr()),s=n(Yt()),a=Wc(),l;return function(c){var u=7.2,d=72,f={em:function(z){return z},ex:function(z){return z*.43},pt:function(z){return z/10},pc:function(z){return z*1.2},px:function(z){return z*u/d},in:function(z){return z*u},cm:function(z){return z*u/2.54},mm:function(z){return z*u/25.4},mu:function(z){return z/18}},T="([-+]?([.,]\\d+|\\d+([.,]\\d*)?))",h="(pt|em|ex|mu|px|mm|cm|in|pc)",g=RegExp("^\\s*"+T+"\\s*"+h+"\\s*$"),Q=RegExp("^\\s*"+T+"\\s*"+h+" ?");function m(z,te){te===void 0&&(te=!1);var ae=z.match(te?Q:g);return ae?_([ae[1].replace(/,/,"."),ae[4],ae[0].length]):[null,null,0]}c.matchDimen=m;function _(z){var te=t(z,3),ae=te[0],fe=te[1],Qe=te[2];if(fe!=="mu")return[ae,fe,Qe];var Y=b(f[fe](parseFloat(ae||"1")));return[Y.slice(0,-2),"em",Qe]}function v(z){var te=t(m(z),2),ae=te[0],fe=te[1],Qe=parseFloat(ae||"1"),Y=f[fe];return Y?Y(Qe):0}c.dimen2em=v;function b(z){return Math.abs(z)<6e-4?"0em":z.toFixed(3).replace(/\.?0+$/,"")+"em"}c.Em=b;function y(){for(var z=[],te=0;te1&&(W=[z.create("node","mrow",W)]),W}c.internalMath=A;function O(z,te,ae){te=te.replace(/^\s+/,a.entities.nbsp).replace(/\s+$/,a.entities.nbsp);var fe=z.create("text",te);return z.create("node","mtext",[],ae,fe)}c.internalText=O;function R(z,te,ae,fe,Qe){if(c.checkMovableLimits(te),r.default.isType(te,"munderover")&&r.default.isEmbellished(te)){r.default.setProperties(r.default.getCoreMO(te),{lspace:0,rspace:0});var Y=z.create("node","mo",[],{rspace:0});te=z.create("node","mrow",[Y,te])}var W=z.create("node","munderover",[te]);r.default.setChild(W,fe==="over"?W.over:W.under,ae);var X=W;return Qe&&(X=z.create("node","TeXAtom",[W],{texClass:o.TEXCLASS.OP,movesupsub:!0})),r.default.setProperty(X,"subsupOK",!0),X}c.underOver=R;function I(z){var te=r.default.isType(z,"mo")?r.default.getForm(z):null;(r.default.getProperty(z,"movablelimits")||te&&te[3]&&te[3].movablelimits)&&r.default.setProperties(z,{movablelimits:!1})}c.checkMovableLimits=I;function M(z){if(typeof z!="string")return z;var te=z.trim();return te.match(/\\$/)&&z.match(/ $/)&&(te+=" "),te}c.trimSpaces=M;function $(z,te){return te=c.trimSpaces(te||""),te==="t"?z.arraydef.align="baseline 1":te==="b"?z.arraydef.align="baseline -1":te==="c"?z.arraydef.align="axis":te&&(z.arraydef.align=te),z}c.setArrayAlign=$;function U(z,te,ae){for(var fe="",Qe="",Y=0;Yte.length)throw new s.default("IllegalMacroParam","Illegal macro parameter reference");Qe=G(z,G(z,Qe,fe),te[parseInt(W,10)-1]),fe=""}else fe+=W}return G(z,Qe,fe)}c.substituteArgs=U;function G(z,te,ae){if(ae.match(/^[a-z]/i)&&te.match(/(^|[^\\])(\\\\)*\\[a-z]+$/i)&&(te+=" "),te.length+ae.length>z.configuration.options.maxBuffer)throw new s.default("MaxBufferSize","MathJax internal buffer size exceeded; is there a recursive macro call?");return te+ae}c.addArgs=G;function P(z,te){if(te===void 0&&(te=!0),!(++z.macroCount<=z.configuration.options.maxMacros))throw te?new s.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is here a recursive macro call?"):new s.default("MaxMacroSub2","MathJax maximum substitution count exceeded; is there a recursive latex environment?")}c.checkMaxMacros=P;function F(z){if(z.stack.global.eqnenv)throw new s.default("ErroneousNestingEq","Erroneous nesting of equation structures");z.stack.global.eqnenv=!0}c.checkEqnEnv=F;function B(z,te){var ae=z.copy(),fe=te.configuration;return ae.walkTree(function(Qe){var Y,W;fe.addNode(Qe.kind,Qe);var X=(Qe.getProperty("in-lists")||"").split(/,/);try{for(var se=e(X),le=se.next();!le.done;le=se.next()){var de=le.value;de&&fe.addNode(de,Qe)}}catch(Te){Y={error:Te}}finally{try{le&&!le.done&&(W=se.return)&&W.call(se)}finally{if(Y)throw Y.error}}}),ae}c.copyNode=B;function q(z,te,ae){return ae}c.MmlFilterAttribute=q;function ee(z){var te=z.stack.env.font;return te?{mathvariant:te}:{}}c.getFontDef=ee;function K(z,te,ae){var fe,Qe;te===void 0&&(te=null),ae===void 0&&(ae=!1);var Y=j(z);if(te)try{for(var W=e(Object.keys(Y)),X=W.next();!X.done;X=W.next()){var se=X.value;if(!te.hasOwnProperty(se)){if(ae)throw new s.default("InvalidOption","Invalid option: %1",se);delete Y[se]}}}catch(le){fe={error:le}}finally{try{X&&!X.done&&(Qe=W.return)&&Qe.call(W)}finally{if(fe)throw fe.error}}return Y}c.keyvalOptions=K;function j(z){for(var te,ae,fe={},Qe=z,Y,W,X;Qe;)te=t(pe(Qe,["=",","]),3),W=te[0],Y=te[1],Qe=te[2],Y==="="?(ae=t(pe(Qe,[","]),3),X=ae[0],Y=ae[1],Qe=ae[2],X=X==="false"||X==="true"?JSON.parse(X):X,fe[W]=X):W&&(fe[W]=!0);return fe}function ue(z,te){for(;te>0;)z=z.trim().slice(1,-1),te--;return z.trim()}function pe(z,te){for(var ae=z.length,fe=0,Qe="",Y=0,W=0,X=!0,se=!1;Yfe&&(W=fe)),fe++;break;case"}":fe&&fe--,(X||se)&&(W--,se=!0),X=!1;break;default:if(!fe&&te.indexOf(le)!==-1)return[se?"true":ue(Qe,W),le,z.slice(Y)];X=!1,se=!1}Qe+=le}if(fe)throw new s.default("ExtraOpenMissingClose","Extra open brace or missing close brace");return[se?"true":ue(Qe,W),"",z.slice(Y)]}}(l||(l={})),Yo.default=l,Yo}var Ni={},_E;function dD(){if(_E)return Ni;_E=1;var t=Ni&&Ni.__values||function(s){var a=typeof Symbol=="function"&&Symbol.iterator,l=a&&s[a],c=0;if(l)return l.call(s);if(s&&typeof s.length=="number")return{next:function(){return s&&c>=s.length&&(s=void 0),{value:s&&s[c++],done:!s}}};throw new TypeError(a?"Object is not iterable.":"Symbol.iterator is not defined.")},e=Ni&&Ni.__read||function(s,a){var l=typeof Symbol=="function"&&s[Symbol.iterator];if(!l)return s;var c=l.call(s),u,d=[],f;try{for(;(a===void 0||a-- >0)&&!(u=c.next()).done;)d.push(u.value)}catch(T){f={error:T}}finally{try{u&&!u.done&&(l=c.return)&&l.call(c)}finally{if(f)throw f.error}}return d},n=Ni&&Ni.__spreadArray||function(s,a,l){if(l||arguments.length===2)for(var c=0,u=a.length,d;c";return n?Promise.resolve(r):r}if(n)return Promise.reject(o);throw o}}}const M2=new u1t;function Et(t,e){return M2.parse(t,e)}Et.options=Et.setOptions=function(t){return M2.setOptions(t),Et.defaults=M2.defaults,XN(Et.defaults),Et};Et.getDefaults=Rp;Et.defaults=k2;Et.use=function(...t){return M2.use(...t),Et.defaults=M2.defaults,XN(Et.defaults),Et};Et.walkTokens=function(t,e){return M2.walkTokens(t,e)};Et.parseInline=M2.parseInline;Et.Parser=Bi;Et.parser=Bi.parse;Et.Renderer=S5;Et.TextRenderer=Pp;Et.Lexer=Vi;Et.lexer=Vi.lex;Et.Tokenizer=b5;Et.Hooks=gc;Et.parse=Et;Et.options;Et.setOptions;Et.use;Et.walkTokens;Et.parseInline;Bi.parse;Vi.lex;Et.setOptions({highlight:function(t,e){const n=j1.getLanguage(e)?e:"plaintext";try{return j1.highlight(t,{language:n,ignoreIllegals:!0}).value}catch(o){return console.error("Highlight.js error:",o),j1.highlightAuto(t).value}},breaks:!0,gfm:!0,pedantic:!1,smartLists:!0,smartypants:!1});let d1t=0;const T1t={name:"ThinkingBlock",props:{content:{type:String,required:!0},isDone:{type:Boolean,required:!0,default:!1},startOpen:{type:Boolean,default:!1}},setup(t){const e=Ve(t.startOpen),n=Ve(null),o=`thinking-content-${d1t++}`,r=je(()=>!t.isDone),i=je(()=>{const c=Et.parse(t.content||"");return Rc.sanitize(c,{ADD_ATTR:["target"]})}),s=()=>{e.value=!e.value,e.value&&Se(a)},a=()=>{n.value&&(n.value.scrollTop=n.value.scrollHeight)},l=()=>{const c=new Blob([t.content],{type:"text/markdown;charset=utf-8"}),u=window.URL.createObjectURL(c),d=document.createElement("a");d.href=u,d.setAttribute("download","ai_thoughts.md"),document.body.appendChild(d),d.click(),document.body.removeChild(d),window.URL.revokeObjectURL(u)};return $n(()=>t.content,()=>{e.value&&Se(a)}),$n(()=>t.isDone,c=>{c&&e.value&&Se(a)}),Hr(()=>{e.value&&Se(a)}),{isOpen:e,isThinking:r,renderedContent:i,contentContainer:n,contentId:o,toggle:s,downloadMarkdown:l}}},f1t={class:"my-4 bg-white dark:bg-gray-800 rounded-lg shadow-md overflow-hidden border border-gray-200 dark:border-gray-700"},p1t={class:"flex items-center justify-between p-3 bg-gray-50 dark:bg-gray-700/50 border-b border-gray-200 dark:border-gray-700"},h1t=["aria-expanded","aria-controls"],m1t={key:0,class:"flex items-center gap-2"},g1t={class:"inline-flex items-center space-x-1"},_1t={key:1},Q1t=["id"],v1t={ref:"contentContainer",class:"p-4 text-gray-700 dark:text-gray-300 thinking-prose prose-sm max-w-none overflow-y-auto max-h-[400px] bg-gray-50 dark:bg-gray-800/50"},y1t=["innerHTML"],b1t={key:2,class:"inline-block w-2 h-4 ml-1 bg-gray-600 dark:bg-gray-400 animate-pulse"};function E1t(t,e,n,o,r,i){return N(),H("div",f1t,[S("div",p1t,[S("button",{onClick:e[0]||(e[0]=(...s)=>o.toggle&&o.toggle(...s)),"aria-expanded":o.isOpen,"aria-controls":o.contentId,class:"group flex items-center gap-2 text-sm font-medium text-gray-700 dark:text-gray-300 hover:text-blue-600 dark:hover:text-blue-400 focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-blue-500 dark:focus-visible:ring-offset-gray-800 rounded"},[(N(),H("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",class:Ee(["w-5 h-5 transition-transform duration-300 ease-in-out flex-shrink-0",{"rotate-90":o.isOpen}])},e[2]||(e[2]=[S("path",{"fill-rule":"evenodd",d:"M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z","clip-rule":"evenodd"},null,-1)]),2)),o.isThinking?(N(),H("span",m1t,[e[3]||(e[3]=S("span",null,"Thinking",-1)),S("span",g1t,[(N(),H(xe,null,Pe(3,s=>S("span",{key:s,class:"w-1.5 h-1.5 bg-blue-500 rounded-full animate-bounce",style:an({animationDelay:`${(s-1)*150}ms`})},null,4)),64))])])):(N(),H("span",_1t,"AI Thoughts"))],8,h1t),!o.isThinking&&n.content?(N(),H("button",{key:0,onClick:e[1]||(e[1]=(...s)=>o.downloadMarkdown&&o.downloadMarkdown(...s)),class:"p-1.5 text-gray-500 dark:text-gray-400 hover:text-blue-600 dark:hover:text-blue-400 hover:bg-gray-200 dark:hover:bg-gray-600 rounded-full focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-1 focus-visible:ring-blue-500 dark:focus-visible:ring-offset-gray-700/50 transition-colors duration-150",title:"Download as Markdown"},e[4]||(e[4]=[S("span",{class:"sr-only"},"Download AI Thoughts as Markdown",-1),S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",class:"w-5 h-5"},[S("path",{d:"M10.75 2.75a.75.75 0 00-1.5 0v8.614L6.295 8.235a.75.75 0 10-1.09 1.03l4.25 4.5a.75.75 0 001.09 0l4.25-4.5a.75.75 0 00-1.09-1.03l-2.955 3.129V2.75z"}),S("path",{d:"M3.5 12.75a.75.75 0 00-1.5 0v2.5A2.75 2.75 0 004.75 18h10.5A2.75 2.75 0 0018 15.25v-2.5a.75.75 0 00-1.5 0v2.5c0 .69-.56 1.25-1.25 1.25H4.75c-.69 0-1.25-.56-1.25-1.25v-2.5z"})],-1)]))):Z("",!0)]),ne(Nr,{"enter-active-class":"transition duration-300 ease-out","enter-from-class":"transform -translate-y-2 scale-95 opacity-0","enter-to-class":"transform translate-y-0 scale-100 opacity-100","leave-active-class":"transition duration-200 ease-in","leave-from-class":"transform translate-y-0 scale-100 opacity-100","leave-to-class":"transform -translate-y-2 scale-95 opacity-0"},{default:Ge(()=>[Le(S("div",{class:"content-wrapper",id:o.contentId},[S("div",v1t,[t.$slots.default?_n(t.$slots,"default",{key:0}):(N(),H("div",{key:1,innerHTML:o.renderedContent},null,8,y1t)),o.isThinking?(N(),H("span",b1t)):Z("",!0)],512)],8,Q1t),[[An,o.isOpen]])]),_:3})])}const S1t=Ye(T1t,[["render",E1t]]);var Z9={},c3={},Wb;function x1t(){return Wb||(Wb=1,Object.defineProperty(c3,"__esModule",{value:!0}),c3.VERSION=void 0,c3.VERSION="3.2.2"),c3}var ds={},u3={},Kb;function zc(){if(Kb)return u3;Kb=1,Object.defineProperty(u3,"__esModule",{value:!0}),u3.PrioritizedList=void 0;var t=function(){function e(){this.items=[],this.items=[]}return e.prototype[Symbol.iterator]=function(){var n=0,o=this.items;return{next:function(){return{value:o[n++],done:n>o.length}}}},e.prototype.add=function(n,o){o===void 0&&(o=e.DEFAULTPRIORITY);var r=this.items.length;do r--;while(r>=0&&o=0&&this.items[o].item!==n);o>=0&&this.items.splice(o,1)},e.DEFAULTPRIORITY=5,e}();return u3.PrioritizedList=t,u3}var Zb;function L1t(){if(Zb)return ds;Zb=1;var t=ds&&ds.__extends||function(){var r=function(i,s){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,l){a.__proto__=l}||function(a,l){for(var c in l)Object.prototype.hasOwnProperty.call(l,c)&&(a[c]=l[c])},r(i,s)};return function(i,s){if(typeof s!="function"&&s!==null)throw new TypeError("Class extends value "+String(s)+" is not a constructor or null");r(i,s);function a(){this.constructor=i}i.prototype=s===null?Object.create(s):(a.prototype=s.prototype,new a)}}(),e=ds&&ds.__values||function(r){var i=typeof Symbol=="function"&&Symbol.iterator,s=i&&r[i],a=0;if(s)return s.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&a>=r.length&&(r=void 0),{value:r&&r[a++],done:!r}}};throw new TypeError(i?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(ds,"__esModule",{value:!0}),ds.HandlerList=void 0;var n=zc(),o=function(r){t(i,r);function i(){return r!==null&&r.apply(this,arguments)||this}return i.prototype.register=function(s){return this.add(s,s.priority)},i.prototype.unregister=function(s){this.remove(s)},i.prototype.handlesDocument=function(s){var a,l;try{for(var c=e(this),u=c.next();!u.done;u=c.next()){var d=u.value,f=d.item;if(f.handlesDocument(s))return f}}catch(T){a={error:T}}finally{try{u&&!u.done&&(l=c.return)&&l.call(c)}finally{if(a)throw a.error}}throw new Error("Can't find handler for document")},i.prototype.document=function(s,a){return a===void 0&&(a=null),this.handlesDocument(s).create(s,a)},i}(n.PrioritizedList);return ds.HandlerList=o,ds}var pa={},Xb;function $p(){if(Xb)return pa;Xb=1,Object.defineProperty(pa,"__esModule",{value:!0}),pa.retryAfter=pa.handleRetriesFor=void 0;function t(n){return new Promise(function o(r,i){try{r(n())}catch(s){s.retry&&s.retry instanceof Promise?s.retry.then(function(){return o(r,i)}).catch(function(a){return i(a)}):s.restart&&s.restart.isCallback?MathJax.Callback.After(function(){return o(r,i)},s.restart):i(s)}})}pa.handleRetriesFor=t;function e(n){var o=new Error("MathJax retry");throw o.retry=n,o}return pa.retryAfter=e,pa}var Jb;function Vp(){return Jb||(Jb=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.mathjax=void 0;var e=x1t(),n=L1t(),o=$p();t.mathjax={version:e.VERSION,handlers:new n.HandlerList,document:function(r,i){return t.mathjax.handlers.document(r,i)},handleRetriesFor:o.handleRetriesFor,retryAfter:o.retryAfter,asyncLoad:null}}(Z9)),Z9}var Yr={},d3={},Ts={},eE;function Vn(){return eE||(eE=1,function(t){var e=Ts&&Ts.__values||function(_){var v=typeof Symbol=="function"&&Symbol.iterator,b=v&&_[v],y=0;if(b)return b.call(_);if(_&&typeof _.length=="number")return{next:function(){return _&&y>=_.length&&(_=void 0),{value:_&&_[y++],done:!_}}};throw new TypeError(v?"Object is not iterable.":"Symbol.iterator is not defined.")},n=Ts&&Ts.__read||function(_,v){var b=typeof Symbol=="function"&&_[Symbol.iterator];if(!b)return _;var y=b.call(_),E,x=[],L;try{for(;(v===void 0||v-- >0)&&!(E=y.next()).done;)x.push(E.value)}catch(C){L={error:C}}finally{try{E&&!E.done&&(b=y.return)&&b.call(y)}finally{if(L)throw L.error}}return x},o=Ts&&Ts.__spreadArray||function(_,v,b){if(b||arguments.length===2)for(var y=0,E=v.length,x;y=s.length&&(s=void 0),{value:s&&s[c++],done:!s}}};throw new TypeError(a?"Object is not iterable.":"Symbol.iterator is not defined.")},n=Wr&&Wr.__read||function(s,a){var l=typeof Symbol=="function"&&s[Symbol.iterator];if(!l)return s;var c=l.call(s),u,d=[],f;try{for(;(a===void 0||a-- >0)&&!(u=c.next()).done;)d.push(u.value)}catch(T){f={error:T}}finally{try{u&&!u.done&&(l=c.return)&&l.call(c)}finally{if(f)throw f.error}}return d},o=Wr&&Wr.__spreadArray||function(s,a,l){if(l||arguments.length===2)for(var c=0,u=a.length,d;c0)&&!(f=d.next()).done;)T.push(f.value)}catch(g){h={error:g}}finally{try{f&&!f.done&&(u=d.return)&&u.call(d)}finally{if(h)throw h.error}}return T},e=Rn&&Rn.__spreadArray||function(l,c,u){if(u||arguments.length===2)for(var d=0,f=c.length,T;d=s&&this.state(s-1),i.renderActions.renderMath(this,i,s)},r.prototype.convert=function(i,s){s===void 0&&(s=t.STATE.LAST),i.renderActions.renderConvert(this,i,s)},r.prototype.compile=function(i){this.state()=t.STATE.INSERTED&&this.removeFromDocument(s),i=t.STATE.TYPESET&&(this.outputData={}),i=t.STATE.COMPILED&&(this.inputData={}),this._state=i),this._state},r.prototype.reset=function(i){i===void 0&&(i=!1),this.state(t.STATE.UNPROCESSED,i)},r}();t.AbstractMathItem=n,t.STATE={UNPROCESSED:0,FINDMATH:10,COMPILED:20,CONVERT:100,METRICS:110,RERENDER:125,TYPESET:150,INSERTED:200,LAST:1e4};function o(r,i){if(r in t.STATE)throw Error("State "+r+" already exists");t.STATE[r]=i}t.newState=o}(X9)),X9}var sE;function A1t(){if(sE)return fs;sE=1;var t=fs&&fs.__extends||function(){var s=function(a,l){return s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,u){c.__proto__=u}||function(c,u){for(var d in u)Object.prototype.hasOwnProperty.call(u,d)&&(c[d]=u[d])},s(a,l)};return function(a,l){if(typeof l!="function"&&l!==null)throw new TypeError("Class extends value "+String(l)+" is not a constructor or null");s(a,l);function c(){this.constructor=a}a.prototype=l===null?Object.create(l):(c.prototype=l.prototype,new c)}}(),e=fs&&fs.__read||function(s,a){var l=typeof Symbol=="function"&&s[Symbol.iterator];if(!l)return s;var c=l.call(s),u,d=[],f;try{for(;(a===void 0||a-- >0)&&!(u=c.next()).done;)d.push(u.value)}catch(T){f={error:T}}finally{try{u&&!u.done&&(l=c.return)&&l.call(c)}finally{if(f)throw f.error}}return d};Object.defineProperty(fs,"__esModule",{value:!0}),fs.FindTeX=void 0;var n=C1t(),o=Uo(),r=$l(),i=function(s){t(a,s);function a(l){var c=s.call(this,l)||this;return c.getPatterns(),c}return a.prototype.getPatterns=function(){var l=this,c=this.options,u=[],d=[],f=[];this.end={},this.env=this.sub=0;var T=1;c.inlineMath.forEach(function(h){return l.addPattern(u,h,!1)}),c.displayMath.forEach(function(h){return l.addPattern(u,h,!0)}),u.length&&d.push(u.sort(o.sortLength).join("|")),c.processEnvironments&&(d.push("\\\\begin\\s*\\{([^}]*)\\}"),this.env=T,T++),c.processEscapes&&f.push("\\\\([\\\\$])"),c.processRefs&&f.push("(\\\\(?:eq)?ref\\s*\\{[^}]*\\})"),f.length&&(d.push("("+f.join("|")+")"),this.sub=T),this.start=new RegExp(d.join("|"),"g"),this.hasPatterns=d.length>0},a.prototype.addPattern=function(l,c,u){var d=e(c,2),f=d[0],T=d[1];l.push((0,o.quotePattern)(f)),this.end[f]=[T,u,this.endPattern(T)]},a.prototype.endPattern=function(l,c){return new RegExp((c||(0,o.quotePattern)(l))+"|\\\\(?:[a-zA-Z]|.)|[{}]","g")},a.prototype.findEnd=function(l,c,u,d){for(var f=e(d,3),T=f[0],h=f[1],g=f[2],Q=g.lastIndex=u.index+u[0].length,m,_=0;m=g.exec(l);){if((m[1]||m[0])===T&&_===0)return(0,r.protoItem)(u[0],l.substr(Q,m.index-Q),m[0],c,u.index,m.index+m[0].length,h);m[0]==="{"?_++:m[0]==="}"&&_&&_--}return null},a.prototype.findMathInString=function(l,c,u){var d,f;for(this.start.lastIndex=0;d=this.start.exec(u);){if(d[this.env]!==void 0&&this.env){var T="\\\\end\\s*(\\{"+(0,o.quotePattern)(d[this.env])+"\\})";f=this.findEnd(u,c,d,["{"+d[this.env]+"}",!0,this.endPattern(null,T)]),f&&(f.math=f.open+f.math+f.close,f.open=f.close="")}else if(d[this.sub]!==void 0&&this.sub){var h=d[this.sub],T=d.index+d[this.sub].length;h.length===2?f=(0,r.protoItem)("",h.substr(1),"",c,d.index,T):f=(0,r.protoItem)("",h,"",c,d.index,T,!1)}else f=this.findEnd(u,c,d,this.end[d[0]]);f&&(l.push(f),this.start.lastIndex=f.end.n)}},a.prototype.findMath=function(l){var c=[];if(this.hasPatterns)for(var u=0,d=l.length;u=o.length&&(o=void 0),{value:o&&o[s++],done:!o}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.Attributes=t.INHERIT=void 0,t.INHERIT="_inherit_";var n=function(){function o(r,i){this.global=i,this.defaults=Object.create(i),this.inherited=Object.create(this.defaults),this.attributes=Object.create(this.inherited),Object.assign(this.defaults,r)}return o.prototype.set=function(r,i){this.attributes[r]=i},o.prototype.setList=function(r){Object.assign(this.attributes,r)},o.prototype.get=function(r){var i=this.attributes[r];return i===t.INHERIT&&(i=this.global[r]),i},o.prototype.getExplicit=function(r){if(this.attributes.hasOwnProperty(r))return this.attributes[r]},o.prototype.getList=function(){for(var r,i,s=[],a=0;a=i.length&&(i=void 0),{value:i&&i[l++],done:!i}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Kr,"__esModule",{value:!0}),Kr.AbstractEmptyNode=Kr.AbstractNode=void 0;var o=function(){function i(s,a,l){var c,u;a===void 0&&(a={}),l===void 0&&(l=[]),this.factory=s,this.parent=null,this.properties={},this.childNodes=[];try{for(var d=n(Object.keys(a)),f=d.next();!f.done;f=d.next()){var T=f.value;this.setProperty(T,a[T])}}catch(h){c={error:h}}finally{try{f&&!f.done&&(u=d.return)&&u.call(d)}finally{if(c)throw c.error}}l.length&&this.setChildren(l)}return Object.defineProperty(i.prototype,"kind",{get:function(){return"unknown"},enumerable:!1,configurable:!0}),i.prototype.setProperty=function(s,a){this.properties[s]=a},i.prototype.getProperty=function(s){return this.properties[s]},i.prototype.getPropertyNames=function(){return Object.keys(this.properties)},i.prototype.getAllProperties=function(){return this.properties},i.prototype.removeProperty=function(){for(var s,a,l=[],c=0;c=Q.length&&(Q=void 0),{value:Q&&Q[v++],done:!Q}}};throw new TypeError(m?"Object is not iterable.":"Symbol.iterator is not defined.")},r=no&&no.__read||function(Q,m){var _=typeof Symbol=="function"&&Q[Symbol.iterator];if(!_)return Q;var v=_.call(Q),b,y=[],E;try{for(;(m===void 0||m-- >0)&&!(b=v.next()).done;)y.push(b.value)}catch(x){E={error:x}}finally{try{b&&!b.done&&(_=v.return)&&_.call(v)}finally{if(E)throw E.error}}return y};Object.defineProperty(t,"__esModule",{value:!0}),t.XMLNode=t.TextNode=t.AbstractMmlEmptyNode=t.AbstractMmlBaseNode=t.AbstractMmlLayoutNode=t.AbstractMmlTokenNode=t.AbstractMmlNode=t.indentAttributes=t.TEXCLASSNAMES=t.TEXCLASS=void 0;var i=Yc(),s=cD();t.TEXCLASS={ORD:0,OP:1,BIN:2,REL:3,OPEN:4,CLOSE:5,PUNCT:6,INNER:7,VCENTER:8,NONE:-1},t.TEXCLASSNAMES=["ORD","OP","BIN","REL","OPEN","CLOSE","PUNCT","INNER","VCENTER"];var a=["","thinmathspace","mediummathspace","thickmathspace"],l=[[0,-1,2,3,0,0,0,1],[-1,-1,0,3,0,0,0,1],[2,2,0,0,2,0,0,2],[3,3,0,0,3,0,0,3],[0,0,0,0,0,0,0,0],[0,-1,2,3,0,0,0,1],[1,1,0,1,1,1,1,1],[1,-1,2,3,1,0,1,1]];t.indentAttributes=["indentalign","indentalignfirst","indentshift","indentshiftfirst"];var c=function(Q){e(m,Q);function m(_,v,b){v===void 0&&(v={}),b===void 0&&(b=[]);var y=Q.call(this,_)||this;return y.prevClass=null,y.prevLevel=null,y.texclass=null,y.arity<0&&(y.childNodes=[_.create("inferredMrow")],y.childNodes[0].parent=y),y.setChildren(b),y.attributes=new i.Attributes(_.getNodeClass(y.kind).defaults,_.getNodeClass("math").defaults),y.attributes.setList(v),y}return m.prototype.copy=function(_){var v,b,y,E;_===void 0&&(_=!1);var x=this.factory.create(this.kind);if(x.properties=n({},this.properties),this.attributes){var L=this.attributes.getAllAttributes();try{for(var C=o(Object.keys(L)),A=C.next();!A.done;A=C.next()){var O=A.value;(O!=="id"||_)&&x.attributes.set(O,L[O])}}catch(U){v={error:U}}finally{try{A&&!A.done&&(b=C.return)&&b.call(C)}finally{if(v)throw v.error}}}if(this.childNodes&&this.childNodes.length){var R=this.childNodes;R.length===1&&R[0].isInferred&&(R=R[0].childNodes);try{for(var I=o(R),M=I.next();!M.done;M=I.next()){var $=M.value;$?x.appendChild($.copy()):x.childNodes.push(null)}}catch(U){y={error:U}}finally{try{M&&!M.done&&(E=I.return)&&E.call(I)}finally{if(y)throw y.error}}}return x},Object.defineProperty(m.prototype,"texClass",{get:function(){return this.texclass},set:function(_){this.texclass=_},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isToken",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isEmbellished",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isSpacelike",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"linebreakContainer",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"hasNewLine",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"arity",{get:function(){return 1/0},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isInferred",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"Parent",{get:function(){for(var _=this.parent;_&&_.notParent;)_=_.Parent;return _},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"notParent",{get:function(){return!1},enumerable:!1,configurable:!0}),m.prototype.setChildren=function(_){return this.arity<0?this.childNodes[0].setChildren(_):Q.prototype.setChildren.call(this,_)},m.prototype.appendChild=function(_){var v,b,y=this;if(this.arity<0)return this.childNodes[0].appendChild(_),_;if(_.isInferred){if(this.arity===1/0)return _.childNodes.forEach(function(A){return Q.prototype.appendChild.call(y,A)}),_;var E=_;_=this.factory.create("mrow"),_.setChildren(E.childNodes),_.attributes=E.attributes;try{for(var x=o(E.getPropertyNames()),L=x.next();!L.done;L=x.next()){var C=L.value;_.setProperty(C,E.getProperty(C))}}catch(A){v={error:A}}finally{try{L&&!L.done&&(b=x.return)&&b.call(x)}finally{if(v)throw v.error}}}return Q.prototype.appendChild.call(this,_)},m.prototype.replaceChild=function(_,v){return this.arity<0?(this.childNodes[0].replaceChild(_,v),_):Q.prototype.replaceChild.call(this,_,v)},m.prototype.core=function(){return this},m.prototype.coreMO=function(){return this},m.prototype.coreIndex=function(){return 0},m.prototype.childPosition=function(){for(var _,v,b=this,y=b.parent;y&&y.notParent;)b=y,y=y.parent;if(y){var E=0;try{for(var x=o(y.childNodes),L=x.next();!L.done;L=x.next()){var C=L.value;if(C===b)return E;E++}}catch(A){_={error:A}}finally{try{L&&!L.done&&(v=x.return)&&v.call(x)}finally{if(_)throw _.error}}}return null},m.prototype.setTeXclass=function(_){return this.getPrevClass(_),this.texClass!=null?this:_},m.prototype.updateTeXclass=function(_){_&&(this.prevClass=_.prevClass,this.prevLevel=_.prevLevel,_.prevClass=_.prevLevel=null,this.texClass=_.texClass)},m.prototype.getPrevClass=function(_){_&&(this.prevClass=_.texClass,this.prevLevel=_.attributes.get("scriptlevel"))},m.prototype.texSpacing=function(){var _=this.prevClass!=null?this.prevClass:t.TEXCLASS.NONE,v=this.texClass||t.TEXCLASS.ORD;if(_===t.TEXCLASS.NONE||v===t.TEXCLASS.NONE)return"";_===t.TEXCLASS.VCENTER&&(_=t.TEXCLASS.ORD),v===t.TEXCLASS.VCENTER&&(v=t.TEXCLASS.ORD);var b=l[_][v];return(this.prevLevel>0||this.attributes.get("scriptlevel")>0)&&b>=0?"":a[Math.abs(b)]},m.prototype.hasSpacingAttributes=function(){return this.isEmbellished&&this.coreMO().hasSpacingAttributes()},m.prototype.setInheritedAttributes=function(_,v,b,y){var E,x;_===void 0&&(_={}),v===void 0&&(v=!1),b===void 0&&(b=0),y===void 0&&(y=!1);var L=this.attributes.getAllDefaults();try{for(var C=o(Object.keys(_)),A=C.next();!A.done;A=C.next()){var O=A.value;if(L.hasOwnProperty(O)||m.alwaysInherit.hasOwnProperty(O)){var R=r(_[O],2),I=R[0],M=R[1],$=(m.noInherit[I]||{})[this.kind]||{};$[O]||this.attributes.setInherited(O,M)}}}catch(F){E={error:F}}finally{try{A&&!A.done&&(x=C.return)&&x.call(C)}finally{if(E)throw E.error}}var U=this.attributes.getExplicit("displaystyle");U===void 0&&this.attributes.setInherited("displaystyle",v);var G=this.attributes.getExplicit("scriptlevel");G===void 0&&this.attributes.setInherited("scriptlevel",b),y&&this.setProperty("texprimestyle",y);var P=this.arity;if(P>=0&&P!==1/0&&(P===1&&this.childNodes.length===0||P!==1&&this.childNodes.length!==P))if(P=0&&v!==1/0&&(v===1&&this.childNodes.length===0||v!==1&&this.childNodes.length!==v)&&this.mError('Wrong number of children for "'+this.kind+'" node',_,!0),this.verifyChildren(_)}},m.prototype.verifyAttributes=function(_){var v,b;if(_.checkAttributes){var y=this.attributes,E=[];try{for(var x=o(y.getExplicitNames()),L=x.next();!L.done;L=x.next()){var C=L.value;C.substr(0,5)!=="data-"&&y.getDefault(C)===void 0&&!C.match(/^(?:class|style|id|(?:xlink:)?href)$/)&&E.push(C)}}catch(A){v={error:A}}finally{try{L&&!L.done&&(b=x.return)&&b.call(x)}finally{if(v)throw v.error}}E.length&&this.mError("Unknown attributes for "+this.kind+" node: "+E.join(", "),_)}},m.prototype.verifyChildren=function(_){var v,b;try{for(var y=o(this.childNodes),E=y.next();!E.done;E=y.next()){var x=E.value;x.verifyTree(_)}}catch(L){v={error:L}}finally{try{E&&!E.done&&(b=y.return)&&b.call(y)}finally{if(v)throw v.error}}},m.prototype.mError=function(_,v,b){if(b===void 0&&(b=!1),this.parent&&this.parent.isKind("merror"))return null;var y=this.factory.create("merror");if(y.attributes.set("data-mjx-message",_),v.fullErrors||b){var E=this.factory.create("mtext"),x=this.factory.create("text");x.setText(v.fullErrors?_:this.kind),E.appendChild(x),y.appendChild(E),this.parent.replaceChild(y,this)}else this.parent.replaceChild(y,this),y.appendChild(this);return y},m.defaults={mathbackground:i.INHERIT,mathcolor:i.INHERIT,mathsize:i.INHERIT,dir:i.INHERIT},m.noInherit={mstyle:{mpadded:{width:!0,height:!0,depth:!0,lspace:!0,voffset:!0},mtable:{width:!0,height:!0,depth:!0,align:!0}},maligngroup:{mrow:{groupalign:!0},mtable:{groupalign:!0}}},m.alwaysInherit={scriptminsize:!0,scriptsizemultiplier:!0},m.verifyDefaults={checkArity:!0,checkAttributes:!1,fullErrors:!1,fixMmultiscripts:!0,fixMtables:!0},m}(s.AbstractNode);t.AbstractMmlNode=c;var u=function(Q){e(m,Q);function m(){return Q!==null&&Q.apply(this,arguments)||this}return Object.defineProperty(m.prototype,"isToken",{get:function(){return!0},enumerable:!1,configurable:!0}),m.prototype.getText=function(){var _,v,b="";try{for(var y=o(this.childNodes),E=y.next();!E.done;E=y.next()){var x=E.value;x instanceof h&&(b+=x.getText())}}catch(L){_={error:L}}finally{try{E&&!E.done&&(v=y.return)&&v.call(y)}finally{if(_)throw _.error}}return b},m.prototype.setChildInheritedAttributes=function(_,v,b,y){var E,x;try{for(var L=o(this.childNodes),C=L.next();!C.done;C=L.next()){var A=C.value;A instanceof c&&A.setInheritedAttributes(_,v,b,y)}}catch(O){E={error:O}}finally{try{C&&!C.done&&(x=L.return)&&x.call(L)}finally{if(E)throw E.error}}},m.prototype.walkTree=function(_,v){var b,y;_(this,v);try{for(var E=o(this.childNodes),x=E.next();!x.done;x=E.next()){var L=x.value;L instanceof c&&L.walkTree(_,v)}}catch(C){b={error:C}}finally{try{x&&!x.done&&(y=E.return)&&y.call(E)}finally{if(b)throw b.error}}return v},m.defaults=n(n({},c.defaults),{mathvariant:"normal",mathsize:i.INHERIT}),m}(c);t.AbstractMmlTokenNode=u;var d=function(Q){e(m,Q);function m(){return Q!==null&&Q.apply(this,arguments)||this}return Object.defineProperty(m.prototype,"isSpacelike",{get:function(){return this.childNodes[0].isSpacelike},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isEmbellished",{get:function(){return this.childNodes[0].isEmbellished},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"arity",{get:function(){return-1},enumerable:!1,configurable:!0}),m.prototype.core=function(){return this.childNodes[0]},m.prototype.coreMO=function(){return this.childNodes[0].coreMO()},m.prototype.setTeXclass=function(_){return _=this.childNodes[0].setTeXclass(_),this.updateTeXclass(this.childNodes[0]),_},m.defaults=c.defaults,m}(c);t.AbstractMmlLayoutNode=d;var f=function(Q){e(m,Q);function m(){return Q!==null&&Q.apply(this,arguments)||this}return Object.defineProperty(m.prototype,"isEmbellished",{get:function(){return this.childNodes[0].isEmbellished},enumerable:!1,configurable:!0}),m.prototype.core=function(){return this.childNodes[0]},m.prototype.coreMO=function(){return this.childNodes[0].coreMO()},m.prototype.setTeXclass=function(_){var v,b;this.getPrevClass(_),this.texClass=t.TEXCLASS.ORD;var y=this.childNodes[0];y?this.isEmbellished||y.isKind("mi")?(_=y.setTeXclass(_),this.updateTeXclass(this.core())):(y.setTeXclass(null),_=this):_=this;try{for(var E=o(this.childNodes.slice(1)),x=E.next();!x.done;x=E.next()){var L=x.value;L&&L.setTeXclass(null)}}catch(C){v={error:C}}finally{try{x&&!x.done&&(b=E.return)&&b.call(E)}finally{if(v)throw v.error}}return _},m.defaults=c.defaults,m}(c);t.AbstractMmlBaseNode=f;var T=function(Q){e(m,Q);function m(){return Q!==null&&Q.apply(this,arguments)||this}return Object.defineProperty(m.prototype,"isToken",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isEmbellished",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isSpacelike",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"linebreakContainer",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"hasNewLine",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"arity",{get:function(){return 0},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"isInferred",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"notParent",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"Parent",{get:function(){return this.parent},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"texClass",{get:function(){return t.TEXCLASS.NONE},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"prevClass",{get:function(){return t.TEXCLASS.NONE},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"prevLevel",{get:function(){return 0},enumerable:!1,configurable:!0}),m.prototype.hasSpacingAttributes=function(){return!1},Object.defineProperty(m.prototype,"attributes",{get:function(){return null},enumerable:!1,configurable:!0}),m.prototype.core=function(){return this},m.prototype.coreMO=function(){return this},m.prototype.coreIndex=function(){return 0},m.prototype.childPosition=function(){return 0},m.prototype.setTeXclass=function(_){return _},m.prototype.texSpacing=function(){return""},m.prototype.setInheritedAttributes=function(_,v,b,y){},m.prototype.inheritAttributesFrom=function(_){},m.prototype.verifyTree=function(_){},m.prototype.mError=function(_,v,b){return null},m}(s.AbstractEmptyNode);t.AbstractMmlEmptyNode=T;var h=function(Q){e(m,Q);function m(){var _=Q!==null&&Q.apply(this,arguments)||this;return _.text="",_}return Object.defineProperty(m.prototype,"kind",{get:function(){return"text"},enumerable:!1,configurable:!0}),m.prototype.getText=function(){return this.text},m.prototype.setText=function(_){return this.text=_,this},m.prototype.copy=function(){return this.factory.create(this.kind).setText(this.getText())},m.prototype.toString=function(){return this.text},m}(T);t.TextNode=h;var g=function(Q){e(m,Q);function m(){var _=Q!==null&&Q.apply(this,arguments)||this;return _.xml=null,_.adaptor=null,_}return Object.defineProperty(m.prototype,"kind",{get:function(){return"XML"},enumerable:!1,configurable:!0}),m.prototype.getXML=function(){return this.xml},m.prototype.setXML=function(_,v){return v===void 0&&(v=null),this.xml=_,this.adaptor=v,this},m.prototype.getSerializedXML=function(){return this.adaptor.serializeXML(this.xml)},m.prototype.copy=function(){return this.factory.create(this.kind).setXML(this.adaptor.clone(this.xml))},m.prototype.toString=function(){return"XML data"},m}(T);t.XMLNode=g}(no)),no}var zo={},Zr={},p3={},uE;function uD(){return uE||(uE=1,function(t){var e=p3&&p3.__values||function(i){var s=typeof Symbol=="function"&&Symbol.iterator,a=s&&i[s],l=0;if(a)return a.call(i);if(i&&typeof i.length=="number")return{next:function(){return i&&l>=i.length&&(i=void 0),{value:i&&i[l++],done:!i}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.OPTABLE=t.MMLSPACING=t.getRange=t.RANGES=t.MO=t.OPDEF=void 0;var n=rt();function o(i,s,a,l){return a===void 0&&(a=n.TEXCLASS.BIN),l===void 0&&(l=null),[i,s,a,l]}t.OPDEF=o,t.MO={ORD:o(0,0,n.TEXCLASS.ORD),ORD11:o(1,1,n.TEXCLASS.ORD),ORD21:o(2,1,n.TEXCLASS.ORD),ORD02:o(0,2,n.TEXCLASS.ORD),ORD55:o(5,5,n.TEXCLASS.ORD),NONE:o(0,0,n.TEXCLASS.NONE),OP:o(1,2,n.TEXCLASS.OP,{largeop:!0,movablelimits:!0,symmetric:!0}),OPFIXED:o(1,2,n.TEXCLASS.OP,{largeop:!0,movablelimits:!0}),INTEGRAL:o(0,1,n.TEXCLASS.OP,{largeop:!0,symmetric:!0}),INTEGRAL2:o(1,2,n.TEXCLASS.OP,{largeop:!0,symmetric:!0}),BIN3:o(3,3,n.TEXCLASS.BIN),BIN4:o(4,4,n.TEXCLASS.BIN),BIN01:o(0,1,n.TEXCLASS.BIN),BIN5:o(5,5,n.TEXCLASS.BIN),TALLBIN:o(4,4,n.TEXCLASS.BIN,{stretchy:!0}),BINOP:o(4,4,n.TEXCLASS.BIN,{largeop:!0,movablelimits:!0}),REL:o(5,5,n.TEXCLASS.REL),REL1:o(1,1,n.TEXCLASS.REL,{stretchy:!0}),REL4:o(4,4,n.TEXCLASS.REL),RELSTRETCH:o(5,5,n.TEXCLASS.REL,{stretchy:!0}),RELACCENT:o(5,5,n.TEXCLASS.REL,{accent:!0}),WIDEREL:o(5,5,n.TEXCLASS.REL,{accent:!0,stretchy:!0}),OPEN:o(0,0,n.TEXCLASS.OPEN,{fence:!0,stretchy:!0,symmetric:!0}),CLOSE:o(0,0,n.TEXCLASS.CLOSE,{fence:!0,stretchy:!0,symmetric:!0}),INNER:o(0,0,n.TEXCLASS.INNER),PUNCT:o(0,3,n.TEXCLASS.PUNCT),ACCENT:o(0,0,n.TEXCLASS.ORD,{accent:!0}),WIDEACCENT:o(0,0,n.TEXCLASS.ORD,{accent:!0,stretchy:!0})},t.RANGES=[[32,127,n.TEXCLASS.REL,"mo"],[160,191,n.TEXCLASS.ORD,"mo"],[192,591,n.TEXCLASS.ORD,"mi"],[688,879,n.TEXCLASS.ORD,"mo"],[880,6688,n.TEXCLASS.ORD,"mi"],[6832,6911,n.TEXCLASS.ORD,"mo"],[6912,7615,n.TEXCLASS.ORD,"mi"],[7616,7679,n.TEXCLASS.ORD,"mo"],[7680,8191,n.TEXCLASS.ORD,"mi"],[8192,8303,n.TEXCLASS.ORD,"mo"],[8304,8351,n.TEXCLASS.ORD,"mo"],[8448,8527,n.TEXCLASS.ORD,"mi"],[8528,8591,n.TEXCLASS.ORD,"mn"],[8592,8703,n.TEXCLASS.REL,"mo"],[8704,8959,n.TEXCLASS.BIN,"mo"],[8960,9215,n.TEXCLASS.ORD,"mo"],[9312,9471,n.TEXCLASS.ORD,"mn"],[9472,10223,n.TEXCLASS.ORD,"mo"],[10224,10239,n.TEXCLASS.REL,"mo"],[10240,10495,n.TEXCLASS.ORD,"mtext"],[10496,10623,n.TEXCLASS.REL,"mo"],[10624,10751,n.TEXCLASS.ORD,"mo"],[10752,11007,n.TEXCLASS.BIN,"mo"],[11008,11055,n.TEXCLASS.ORD,"mo"],[11056,11087,n.TEXCLASS.REL,"mo"],[11088,11263,n.TEXCLASS.ORD,"mo"],[11264,11744,n.TEXCLASS.ORD,"mi"],[11776,11903,n.TEXCLASS.ORD,"mo"],[11904,12255,n.TEXCLASS.ORD,"mi","normal"],[12272,12351,n.TEXCLASS.ORD,"mo"],[12352,42143,n.TEXCLASS.ORD,"mi","normal"],[42192,43055,n.TEXCLASS.ORD,"mi"],[43056,43071,n.TEXCLASS.ORD,"mn"],[43072,55295,n.TEXCLASS.ORD,"mi"],[63744,64255,n.TEXCLASS.ORD,"mi","normal"],[64256,65023,n.TEXCLASS.ORD,"mi"],[65024,65135,n.TEXCLASS.ORD,"mo"],[65136,65791,n.TEXCLASS.ORD,"mi"],[65792,65935,n.TEXCLASS.ORD,"mn"],[65936,74751,n.TEXCLASS.ORD,"mi","normal"],[74752,74879,n.TEXCLASS.ORD,"mn"],[74880,113823,n.TEXCLASS.ORD,"mi","normal"],[113824,119391,n.TEXCLASS.ORD,"mo"],[119648,119679,n.TEXCLASS.ORD,"mn"],[119808,120781,n.TEXCLASS.ORD,"mi"],[120782,120831,n.TEXCLASS.ORD,"mn"],[122624,129023,n.TEXCLASS.ORD,"mo"],[129024,129279,n.TEXCLASS.REL,"mo"],[129280,129535,n.TEXCLASS.ORD,"mo"],[131072,195103,n.TEXCLASS.ORD,"mi","normnal"]];function r(i){var s,a,l=i.codePointAt(0);try{for(var c=e(t.RANGES),u=c.next();!u.done;u=c.next()){var d=u.value;if(l<=d[1]){if(l>=d[0])return d;break}}}catch(f){s={error:f}}finally{try{u&&!u.done&&(a=c.return)&&a.call(c)}finally{if(s)throw s.error}}return null}t.getRange=r,t.MMLSPACING=[[0,0],[1,2],[3,3],[4,4],[0,0],[0,0],[0,3]],t.OPTABLE={prefix:{"(":t.MO.OPEN,"+":t.MO.BIN01,"-":t.MO.BIN01,"[":t.MO.OPEN,"{":t.MO.OPEN,"|":t.MO.OPEN,"||":[0,0,n.TEXCLASS.BIN,{fence:!0,stretchy:!0,symmetric:!0}],"|||":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"¬":t.MO.ORD21,"±":t.MO.BIN01,"‖":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"‘":[0,0,n.TEXCLASS.OPEN,{fence:!0}],"“":[0,0,n.TEXCLASS.OPEN,{fence:!0}],"ⅅ":t.MO.ORD21,"ⅆ":o(2,0,n.TEXCLASS.ORD),"∀":t.MO.ORD21,"∂":t.MO.ORD21,"∃":t.MO.ORD21,"∄":t.MO.ORD21,"∇":t.MO.ORD21,"∏":t.MO.OP,"∐":t.MO.OP,"∑":t.MO.OP,"−":t.MO.BIN01,"∓":t.MO.BIN01,"√":[1,1,n.TEXCLASS.ORD,{stretchy:!0}],"∛":t.MO.ORD11,"∜":t.MO.ORD11,"∠":t.MO.ORD,"∡":t.MO.ORD,"∢":t.MO.ORD,"∫":t.MO.INTEGRAL,"∬":t.MO.INTEGRAL,"∭":t.MO.INTEGRAL,"∮":t.MO.INTEGRAL,"∯":t.MO.INTEGRAL,"∰":t.MO.INTEGRAL,"∱":t.MO.INTEGRAL,"∲":t.MO.INTEGRAL,"∳":t.MO.INTEGRAL,"⋀":t.MO.OP,"⋁":t.MO.OP,"⋂":t.MO.OP,"⋃":t.MO.OP,"⌈":t.MO.OPEN,"⌊":t.MO.OPEN,"〈":t.MO.OPEN,"❲":t.MO.OPEN,"⟦":t.MO.OPEN,"⟨":t.MO.OPEN,"⟪":t.MO.OPEN,"⟬":t.MO.OPEN,"⟮":t.MO.OPEN,"⦀":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"⦃":t.MO.OPEN,"⦅":t.MO.OPEN,"⦇":t.MO.OPEN,"⦉":t.MO.OPEN,"⦋":t.MO.OPEN,"⦍":t.MO.OPEN,"⦏":t.MO.OPEN,"⦑":t.MO.OPEN,"⦓":t.MO.OPEN,"⦕":t.MO.OPEN,"⦗":t.MO.OPEN,"⧼":t.MO.OPEN,"⨀":t.MO.OP,"⨁":t.MO.OP,"⨂":t.MO.OP,"⨃":t.MO.OP,"⨄":t.MO.OP,"⨅":t.MO.OP,"⨆":t.MO.OP,"⨇":t.MO.OP,"⨈":t.MO.OP,"⨉":t.MO.OP,"⨊":t.MO.OP,"⨋":t.MO.INTEGRAL2,"⨌":t.MO.INTEGRAL,"⨍":t.MO.INTEGRAL2,"⨎":t.MO.INTEGRAL2,"⨏":t.MO.INTEGRAL2,"⨐":t.MO.OP,"⨑":t.MO.OP,"⨒":t.MO.OP,"⨓":t.MO.OP,"⨔":t.MO.OP,"⨕":t.MO.INTEGRAL2,"⨖":t.MO.INTEGRAL2,"⨗":t.MO.INTEGRAL2,"⨘":t.MO.INTEGRAL2,"⨙":t.MO.INTEGRAL2,"⨚":t.MO.INTEGRAL2,"⨛":t.MO.INTEGRAL2,"⨜":t.MO.INTEGRAL2,"⫼":t.MO.OP,"⫿":t.MO.OP},postfix:{"!!":o(1,0),"!":[1,0,n.TEXCLASS.CLOSE,null],'"':t.MO.ACCENT,"&":t.MO.ORD,")":t.MO.CLOSE,"++":o(0,0),"--":o(0,0),"..":o(0,0),"...":t.MO.ORD,"'":t.MO.ACCENT,"]":t.MO.CLOSE,"^":t.MO.WIDEACCENT,_:t.MO.WIDEACCENT,"`":t.MO.ACCENT,"|":t.MO.CLOSE,"}":t.MO.CLOSE,"~":t.MO.WIDEACCENT,"||":[0,0,n.TEXCLASS.BIN,{fence:!0,stretchy:!0,symmetric:!0}],"|||":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"¨":t.MO.ACCENT,ª:t.MO.ACCENT,"¯":t.MO.WIDEACCENT,"°":t.MO.ORD,"²":t.MO.ACCENT,"³":t.MO.ACCENT,"´":t.MO.ACCENT,"¸":t.MO.ACCENT,"¹":t.MO.ACCENT,º:t.MO.ACCENT,"ˆ":t.MO.WIDEACCENT,"ˇ":t.MO.WIDEACCENT,"ˉ":t.MO.WIDEACCENT,"ˊ":t.MO.ACCENT,"ˋ":t.MO.ACCENT,"ˍ":t.MO.WIDEACCENT,"˘":t.MO.ACCENT,"˙":t.MO.ACCENT,"˚":t.MO.ACCENT,"˜":t.MO.WIDEACCENT,"˝":t.MO.ACCENT,"˷":t.MO.WIDEACCENT,"̂":t.MO.WIDEACCENT,"̑":t.MO.ACCENT,"϶":t.MO.REL,"‖":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"’":[0,0,n.TEXCLASS.CLOSE,{fence:!0}],"‚":t.MO.ACCENT,"‛":t.MO.ACCENT,"”":[0,0,n.TEXCLASS.CLOSE,{fence:!0}],"„":t.MO.ACCENT,"‟":t.MO.ACCENT,"′":t.MO.ORD,"″":t.MO.ACCENT,"‴":t.MO.ACCENT,"‵":t.MO.ACCENT,"‶":t.MO.ACCENT,"‷":t.MO.ACCENT,"‾":t.MO.WIDEACCENT,"⁗":t.MO.ACCENT,"⃛":t.MO.ACCENT,"⃜":t.MO.ACCENT,"⌉":t.MO.CLOSE,"⌋":t.MO.CLOSE,"〉":t.MO.CLOSE,"⎴":t.MO.WIDEACCENT,"⎵":t.MO.WIDEACCENT,"⏜":t.MO.WIDEACCENT,"⏝":t.MO.WIDEACCENT,"⏞":t.MO.WIDEACCENT,"⏟":t.MO.WIDEACCENT,"⏠":t.MO.WIDEACCENT,"⏡":t.MO.WIDEACCENT,"■":t.MO.BIN3,"□":t.MO.BIN3,"▪":t.MO.BIN3,"▫":t.MO.BIN3,"▭":t.MO.BIN3,"▮":t.MO.BIN3,"▯":t.MO.BIN3,"▰":t.MO.BIN3,"▱":t.MO.BIN3,"▲":t.MO.BIN4,"▴":t.MO.BIN4,"▶":t.MO.BIN4,"▷":t.MO.BIN4,"▸":t.MO.BIN4,"▼":t.MO.BIN4,"▾":t.MO.BIN4,"◀":t.MO.BIN4,"◁":t.MO.BIN4,"◂":t.MO.BIN4,"◄":t.MO.BIN4,"◅":t.MO.BIN4,"◆":t.MO.BIN4,"◇":t.MO.BIN4,"◈":t.MO.BIN4,"◉":t.MO.BIN4,"◌":t.MO.BIN4,"◍":t.MO.BIN4,"◎":t.MO.BIN4,"●":t.MO.BIN4,"◖":t.MO.BIN4,"◗":t.MO.BIN4,"◦":t.MO.BIN4,"♭":t.MO.ORD02,"♮":t.MO.ORD02,"♯":t.MO.ORD02,"❳":t.MO.CLOSE,"⟧":t.MO.CLOSE,"⟩":t.MO.CLOSE,"⟫":t.MO.CLOSE,"⟭":t.MO.CLOSE,"⟯":t.MO.CLOSE,"⦀":[0,0,n.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"⦄":t.MO.CLOSE,"⦆":t.MO.CLOSE,"⦈":t.MO.CLOSE,"⦊":t.MO.CLOSE,"⦌":t.MO.CLOSE,"⦎":t.MO.CLOSE,"⦐":t.MO.CLOSE,"⦒":t.MO.CLOSE,"⦔":t.MO.CLOSE,"⦖":t.MO.CLOSE,"⦘":t.MO.CLOSE,"⧽":t.MO.CLOSE},infix:{"!=":t.MO.BIN4,"#":t.MO.ORD,$:t.MO.ORD,"%":[3,3,n.TEXCLASS.ORD,null],"&&":t.MO.BIN4,"":t.MO.ORD,"*":t.MO.BIN3,"**":o(1,1),"*=":t.MO.BIN4,"+":t.MO.BIN4,"+=":t.MO.BIN4,",":[0,3,n.TEXCLASS.PUNCT,{linebreakstyle:"after",separator:!0}],"-":t.MO.BIN4,"-=":t.MO.BIN4,"->":t.MO.BIN5,".":[0,3,n.TEXCLASS.PUNCT,{separator:!0}],"/":t.MO.ORD11,"//":o(1,1),"/=":t.MO.BIN4,":":[1,2,n.TEXCLASS.REL,null],":=":t.MO.BIN4,";":[0,3,n.TEXCLASS.PUNCT,{linebreakstyle:"after",separator:!0}],"<":t.MO.REL,"<=":t.MO.BIN5,"<>":o(1,1),"=":t.MO.REL,"==":t.MO.BIN4,">":t.MO.REL,">=":t.MO.BIN5,"?":[1,1,n.TEXCLASS.CLOSE,null],"@":t.MO.ORD11,"\\":t.MO.ORD,"^":t.MO.ORD11,_:t.MO.ORD11,"|":[2,2,n.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"||":[2,2,n.TEXCLASS.BIN,{fence:!0,stretchy:!0,symmetric:!0}],"|||":[2,2,n.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"±":t.MO.BIN4,"·":t.MO.BIN4,"×":t.MO.BIN4,"÷":t.MO.BIN4,"ʹ":t.MO.ORD,"̀":t.MO.ACCENT,"́":t.MO.ACCENT,"̃":t.MO.WIDEACCENT,"̄":t.MO.ACCENT,"̆":t.MO.ACCENT,"̇":t.MO.ACCENT,"̈":t.MO.ACCENT,"̌":t.MO.ACCENT,"̲":t.MO.WIDEACCENT,"̸":t.MO.REL4,"―":[0,0,n.TEXCLASS.ORD,{stretchy:!0}],"‗":[0,0,n.TEXCLASS.ORD,{stretchy:!0}],"†":t.MO.BIN3,"‡":t.MO.BIN3,"•":t.MO.BIN4,"…":t.MO.INNER,"⁃":t.MO.BIN4,"⁄":t.MO.TALLBIN,"⁡":t.MO.NONE,"⁢":t.MO.NONE,"⁣":[0,0,n.TEXCLASS.NONE,{linebreakstyle:"after",separator:!0}],"⁤":t.MO.NONE,"⃗":t.MO.ACCENT,ℑ:t.MO.ORD,ℓ:t.MO.ORD,"℘":t.MO.ORD,ℜ:t.MO.ORD,"←":t.MO.WIDEREL,"↑":t.MO.RELSTRETCH,"→":t.MO.WIDEREL,"↓":t.MO.RELSTRETCH,"↔":t.MO.WIDEREL,"↕":t.MO.RELSTRETCH,"↖":t.MO.RELSTRETCH,"↗":t.MO.RELSTRETCH,"↘":t.MO.RELSTRETCH,"↙":t.MO.RELSTRETCH,"↚":t.MO.RELACCENT,"↛":t.MO.RELACCENT,"↜":t.MO.WIDEREL,"↝":t.MO.WIDEREL,"↞":t.MO.WIDEREL,"↟":t.MO.WIDEREL,"↠":t.MO.WIDEREL,"↡":t.MO.RELSTRETCH,"↢":t.MO.WIDEREL,"↣":t.MO.WIDEREL,"↤":t.MO.WIDEREL,"↥":t.MO.RELSTRETCH,"↦":t.MO.WIDEREL,"↧":t.MO.RELSTRETCH,"↨":t.MO.RELSTRETCH,"↩":t.MO.WIDEREL,"↪":t.MO.WIDEREL,"↫":t.MO.WIDEREL,"↬":t.MO.WIDEREL,"↭":t.MO.WIDEREL,"↮":t.MO.RELACCENT,"↯":t.MO.RELSTRETCH,"↰":t.MO.RELSTRETCH,"↱":t.MO.RELSTRETCH,"↲":t.MO.RELSTRETCH,"↳":t.MO.RELSTRETCH,"↴":t.MO.RELSTRETCH,"↵":t.MO.RELSTRETCH,"↶":t.MO.RELACCENT,"↷":t.MO.RELACCENT,"↸":t.MO.REL,"↹":t.MO.WIDEREL,"↺":t.MO.REL,"↻":t.MO.REL,"↼":t.MO.WIDEREL,"↽":t.MO.WIDEREL,"↾":t.MO.RELSTRETCH,"↿":t.MO.RELSTRETCH,"⇀":t.MO.WIDEREL,"⇁":t.MO.WIDEREL,"⇂":t.MO.RELSTRETCH,"⇃":t.MO.RELSTRETCH,"⇄":t.MO.WIDEREL,"⇅":t.MO.RELSTRETCH,"⇆":t.MO.WIDEREL,"⇇":t.MO.WIDEREL,"⇈":t.MO.RELSTRETCH,"⇉":t.MO.WIDEREL,"⇊":t.MO.RELSTRETCH,"⇋":t.MO.WIDEREL,"⇌":t.MO.WIDEREL,"⇍":t.MO.RELACCENT,"⇎":t.MO.RELACCENT,"⇏":t.MO.RELACCENT,"⇐":t.MO.WIDEREL,"⇑":t.MO.RELSTRETCH,"⇒":t.MO.WIDEREL,"⇓":t.MO.RELSTRETCH,"⇔":t.MO.WIDEREL,"⇕":t.MO.RELSTRETCH,"⇖":t.MO.RELSTRETCH,"⇗":t.MO.RELSTRETCH,"⇘":t.MO.RELSTRETCH,"⇙":t.MO.RELSTRETCH,"⇚":t.MO.WIDEREL,"⇛":t.MO.WIDEREL,"⇜":t.MO.WIDEREL,"⇝":t.MO.WIDEREL,"⇞":t.MO.REL,"⇟":t.MO.REL,"⇠":t.MO.WIDEREL,"⇡":t.MO.RELSTRETCH,"⇢":t.MO.WIDEREL,"⇣":t.MO.RELSTRETCH,"⇤":t.MO.WIDEREL,"⇥":t.MO.WIDEREL,"⇦":t.MO.WIDEREL,"⇧":t.MO.RELSTRETCH,"⇨":t.MO.WIDEREL,"⇩":t.MO.RELSTRETCH,"⇪":t.MO.RELSTRETCH,"⇫":t.MO.RELSTRETCH,"⇬":t.MO.RELSTRETCH,"⇭":t.MO.RELSTRETCH,"⇮":t.MO.RELSTRETCH,"⇯":t.MO.RELSTRETCH,"⇰":t.MO.WIDEREL,"⇱":t.MO.REL,"⇲":t.MO.REL,"⇳":t.MO.RELSTRETCH,"⇴":t.MO.RELACCENT,"⇵":t.MO.RELSTRETCH,"⇶":t.MO.WIDEREL,"⇷":t.MO.RELACCENT,"⇸":t.MO.RELACCENT,"⇹":t.MO.RELACCENT,"⇺":t.MO.RELACCENT,"⇻":t.MO.RELACCENT,"⇼":t.MO.RELACCENT,"⇽":t.MO.WIDEREL,"⇾":t.MO.WIDEREL,"⇿":t.MO.WIDEREL,"∁":o(1,2,n.TEXCLASS.ORD),"∅":t.MO.ORD,"∆":t.MO.BIN3,"∈":t.MO.REL,"∉":t.MO.REL,"∊":t.MO.REL,"∋":t.MO.REL,"∌":t.MO.REL,"∍":t.MO.REL,"∎":t.MO.BIN3,"−":t.MO.BIN4,"∓":t.MO.BIN4,"∔":t.MO.BIN4,"∕":t.MO.TALLBIN,"∖":t.MO.BIN4,"∗":t.MO.BIN4,"∘":t.MO.BIN4,"∙":t.MO.BIN4,"∝":t.MO.REL,"∞":t.MO.ORD,"∟":t.MO.REL,"∣":t.MO.REL,"∤":t.MO.REL,"∥":t.MO.REL,"∦":t.MO.REL,"∧":t.MO.BIN4,"∨":t.MO.BIN4,"∩":t.MO.BIN4,"∪":t.MO.BIN4,"∴":t.MO.REL,"∵":t.MO.REL,"∶":t.MO.REL,"∷":t.MO.REL,"∸":t.MO.BIN4,"∹":t.MO.REL,"∺":t.MO.BIN4,"∻":t.MO.REL,"∼":t.MO.REL,"∽":t.MO.REL,"∽̱":t.MO.BIN3,"∾":t.MO.REL,"∿":t.MO.BIN3,"≀":t.MO.BIN4,"≁":t.MO.REL,"≂":t.MO.REL,"≂̸":t.MO.REL,"≃":t.MO.REL,"≄":t.MO.REL,"≅":t.MO.REL,"≆":t.MO.REL,"≇":t.MO.REL,"≈":t.MO.REL,"≉":t.MO.REL,"≊":t.MO.REL,"≋":t.MO.REL,"≌":t.MO.REL,"≍":t.MO.REL,"≎":t.MO.REL,"≎̸":t.MO.REL,"≏":t.MO.REL,"≏̸":t.MO.REL,"≐":t.MO.REL,"≑":t.MO.REL,"≒":t.MO.REL,"≓":t.MO.REL,"≔":t.MO.REL,"≕":t.MO.REL,"≖":t.MO.REL,"≗":t.MO.REL,"≘":t.MO.REL,"≙":t.MO.REL,"≚":t.MO.REL,"≛":t.MO.REL,"≜":t.MO.REL,"≝":t.MO.REL,"≞":t.MO.REL,"≟":t.MO.REL,"≠":t.MO.REL,"≡":t.MO.REL,"≢":t.MO.REL,"≣":t.MO.REL,"≤":t.MO.REL,"≥":t.MO.REL,"≦":t.MO.REL,"≦̸":t.MO.REL,"≧":t.MO.REL,"≨":t.MO.REL,"≩":t.MO.REL,"≪":t.MO.REL,"≪̸":t.MO.REL,"≫":t.MO.REL,"≫̸":t.MO.REL,"≬":t.MO.REL,"≭":t.MO.REL,"≮":t.MO.REL,"≯":t.MO.REL,"≰":t.MO.REL,"≱":t.MO.REL,"≲":t.MO.REL,"≳":t.MO.REL,"≴":t.MO.REL,"≵":t.MO.REL,"≶":t.MO.REL,"≷":t.MO.REL,"≸":t.MO.REL,"≹":t.MO.REL,"≺":t.MO.REL,"≻":t.MO.REL,"≼":t.MO.REL,"≽":t.MO.REL,"≾":t.MO.REL,"≿":t.MO.REL,"≿̸":t.MO.REL,"⊀":t.MO.REL,"⊁":t.MO.REL,"⊂":t.MO.REL,"⊂⃒":t.MO.REL,"⊃":t.MO.REL,"⊃⃒":t.MO.REL,"⊄":t.MO.REL,"⊅":t.MO.REL,"⊆":t.MO.REL,"⊇":t.MO.REL,"⊈":t.MO.REL,"⊉":t.MO.REL,"⊊":t.MO.REL,"⊋":t.MO.REL,"⊌":t.MO.BIN4,"⊍":t.MO.BIN4,"⊎":t.MO.BIN4,"⊏":t.MO.REL,"⊏̸":t.MO.REL,"⊐":t.MO.REL,"⊐̸":t.MO.REL,"⊑":t.MO.REL,"⊒":t.MO.REL,"⊓":t.MO.BIN4,"⊔":t.MO.BIN4,"⊕":t.MO.BIN4,"⊖":t.MO.BIN4,"⊗":t.MO.BIN4,"⊘":t.MO.BIN4,"⊙":t.MO.BIN4,"⊚":t.MO.BIN4,"⊛":t.MO.BIN4,"⊜":t.MO.BIN4,"⊝":t.MO.BIN4,"⊞":t.MO.BIN4,"⊟":t.MO.BIN4,"⊠":t.MO.BIN4,"⊡":t.MO.BIN4,"⊢":t.MO.REL,"⊣":t.MO.REL,"⊤":t.MO.ORD55,"⊥":t.MO.REL,"⊦":t.MO.REL,"⊧":t.MO.REL,"⊨":t.MO.REL,"⊩":t.MO.REL,"⊪":t.MO.REL,"⊫":t.MO.REL,"⊬":t.MO.REL,"⊭":t.MO.REL,"⊮":t.MO.REL,"⊯":t.MO.REL,"⊰":t.MO.REL,"⊱":t.MO.REL,"⊲":t.MO.REL,"⊳":t.MO.REL,"⊴":t.MO.REL,"⊵":t.MO.REL,"⊶":t.MO.REL,"⊷":t.MO.REL,"⊸":t.MO.REL,"⊹":t.MO.REL,"⊺":t.MO.BIN4,"⊻":t.MO.BIN4,"⊼":t.MO.BIN4,"⊽":t.MO.BIN4,"⊾":t.MO.BIN3,"⊿":t.MO.BIN3,"⋄":t.MO.BIN4,"⋅":t.MO.BIN4,"⋆":t.MO.BIN4,"⋇":t.MO.BIN4,"⋈":t.MO.REL,"⋉":t.MO.BIN4,"⋊":t.MO.BIN4,"⋋":t.MO.BIN4,"⋌":t.MO.BIN4,"⋍":t.MO.REL,"⋎":t.MO.BIN4,"⋏":t.MO.BIN4,"⋐":t.MO.REL,"⋑":t.MO.REL,"⋒":t.MO.BIN4,"⋓":t.MO.BIN4,"⋔":t.MO.REL,"⋕":t.MO.REL,"⋖":t.MO.REL,"⋗":t.MO.REL,"⋘":t.MO.REL,"⋙":t.MO.REL,"⋚":t.MO.REL,"⋛":t.MO.REL,"⋜":t.MO.REL,"⋝":t.MO.REL,"⋞":t.MO.REL,"⋟":t.MO.REL,"⋠":t.MO.REL,"⋡":t.MO.REL,"⋢":t.MO.REL,"⋣":t.MO.REL,"⋤":t.MO.REL,"⋥":t.MO.REL,"⋦":t.MO.REL,"⋧":t.MO.REL,"⋨":t.MO.REL,"⋩":t.MO.REL,"⋪":t.MO.REL,"⋫":t.MO.REL,"⋬":t.MO.REL,"⋭":t.MO.REL,"⋮":t.MO.ORD55,"⋯":t.MO.INNER,"⋰":t.MO.REL,"⋱":[5,5,n.TEXCLASS.INNER,null],"⋲":t.MO.REL,"⋳":t.MO.REL,"⋴":t.MO.REL,"⋵":t.MO.REL,"⋶":t.MO.REL,"⋷":t.MO.REL,"⋸":t.MO.REL,"⋹":t.MO.REL,"⋺":t.MO.REL,"⋻":t.MO.REL,"⋼":t.MO.REL,"⋽":t.MO.REL,"⋾":t.MO.REL,"⋿":t.MO.REL,"⌅":t.MO.BIN3,"⌆":t.MO.BIN3,"⌢":t.MO.REL4,"⌣":t.MO.REL4,"〈":t.MO.OPEN,"〉":t.MO.CLOSE,"⎪":t.MO.ORD,"⎯":[0,0,n.TEXCLASS.ORD,{stretchy:!0}],"⎰":t.MO.OPEN,"⎱":t.MO.CLOSE,"─":t.MO.ORD,"△":t.MO.BIN4,"▵":t.MO.BIN4,"▹":t.MO.BIN4,"▽":t.MO.BIN4,"▿":t.MO.BIN4,"◃":t.MO.BIN4,"◯":t.MO.BIN3,"♠":t.MO.ORD,"♡":t.MO.ORD,"♢":t.MO.ORD,"♣":t.MO.ORD,"❘":t.MO.REL,"⟰":t.MO.RELSTRETCH,"⟱":t.MO.RELSTRETCH,"⟵":t.MO.WIDEREL,"⟶":t.MO.WIDEREL,"⟷":t.MO.WIDEREL,"⟸":t.MO.WIDEREL,"⟹":t.MO.WIDEREL,"⟺":t.MO.WIDEREL,"⟻":t.MO.WIDEREL,"⟼":t.MO.WIDEREL,"⟽":t.MO.WIDEREL,"⟾":t.MO.WIDEREL,"⟿":t.MO.WIDEREL,"⤀":t.MO.RELACCENT,"⤁":t.MO.RELACCENT,"⤂":t.MO.RELACCENT,"⤃":t.MO.RELACCENT,"⤄":t.MO.RELACCENT,"⤅":t.MO.RELACCENT,"⤆":t.MO.RELACCENT,"⤇":t.MO.RELACCENT,"⤈":t.MO.REL,"⤉":t.MO.REL,"⤊":t.MO.RELSTRETCH,"⤋":t.MO.RELSTRETCH,"⤌":t.MO.WIDEREL,"⤍":t.MO.WIDEREL,"⤎":t.MO.WIDEREL,"⤏":t.MO.WIDEREL,"⤐":t.MO.WIDEREL,"⤑":t.MO.RELACCENT,"⤒":t.MO.RELSTRETCH,"⤓":t.MO.RELSTRETCH,"⤔":t.MO.RELACCENT,"⤕":t.MO.RELACCENT,"⤖":t.MO.RELACCENT,"⤗":t.MO.RELACCENT,"⤘":t.MO.RELACCENT,"⤙":t.MO.RELACCENT,"⤚":t.MO.RELACCENT,"⤛":t.MO.RELACCENT,"⤜":t.MO.RELACCENT,"⤝":t.MO.RELACCENT,"⤞":t.MO.RELACCENT,"⤟":t.MO.RELACCENT,"⤠":t.MO.RELACCENT,"⤡":t.MO.RELSTRETCH,"⤢":t.MO.RELSTRETCH,"⤣":t.MO.REL,"⤤":t.MO.REL,"⤥":t.MO.REL,"⤦":t.MO.REL,"⤧":t.MO.REL,"⤨":t.MO.REL,"⤩":t.MO.REL,"⤪":t.MO.REL,"⤫":t.MO.REL,"⤬":t.MO.REL,"⤭":t.MO.REL,"⤮":t.MO.REL,"⤯":t.MO.REL,"⤰":t.MO.REL,"⤱":t.MO.REL,"⤲":t.MO.REL,"⤳":t.MO.RELACCENT,"⤴":t.MO.REL,"⤵":t.MO.REL,"⤶":t.MO.REL,"⤷":t.MO.REL,"⤸":t.MO.REL,"⤹":t.MO.REL,"⤺":t.MO.RELACCENT,"⤻":t.MO.RELACCENT,"⤼":t.MO.RELACCENT,"⤽":t.MO.RELACCENT,"⤾":t.MO.REL,"⤿":t.MO.REL,"⥀":t.MO.REL,"⥁":t.MO.REL,"⥂":t.MO.RELACCENT,"⥃":t.MO.RELACCENT,"⥄":t.MO.RELACCENT,"⥅":t.MO.RELACCENT,"⥆":t.MO.RELACCENT,"⥇":t.MO.RELACCENT,"⥈":t.MO.RELACCENT,"⥉":t.MO.REL,"⥊":t.MO.RELACCENT,"⥋":t.MO.RELACCENT,"⥌":t.MO.REL,"⥍":t.MO.REL,"⥎":t.MO.WIDEREL,"⥏":t.MO.RELSTRETCH,"⥐":t.MO.WIDEREL,"⥑":t.MO.RELSTRETCH,"⥒":t.MO.WIDEREL,"⥓":t.MO.WIDEREL,"⥔":t.MO.RELSTRETCH,"⥕":t.MO.RELSTRETCH,"⥖":t.MO.RELSTRETCH,"⥗":t.MO.RELSTRETCH,"⥘":t.MO.RELSTRETCH,"⥙":t.MO.RELSTRETCH,"⥚":t.MO.WIDEREL,"⥛":t.MO.WIDEREL,"⥜":t.MO.RELSTRETCH,"⥝":t.MO.RELSTRETCH,"⥞":t.MO.WIDEREL,"⥟":t.MO.WIDEREL,"⥠":t.MO.RELSTRETCH,"⥡":t.MO.RELSTRETCH,"⥢":t.MO.RELACCENT,"⥣":t.MO.REL,"⥤":t.MO.RELACCENT,"⥥":t.MO.REL,"⥦":t.MO.RELACCENT,"⥧":t.MO.RELACCENT,"⥨":t.MO.RELACCENT,"⥩":t.MO.RELACCENT,"⥪":t.MO.RELACCENT,"⥫":t.MO.RELACCENT,"⥬":t.MO.RELACCENT,"⥭":t.MO.RELACCENT,"⥮":t.MO.RELSTRETCH,"⥯":t.MO.RELSTRETCH,"⥰":t.MO.RELACCENT,"⥱":t.MO.RELACCENT,"⥲":t.MO.RELACCENT,"⥳":t.MO.RELACCENT,"⥴":t.MO.RELACCENT,"⥵":t.MO.RELACCENT,"⥶":t.MO.RELACCENT,"⥷":t.MO.RELACCENT,"⥸":t.MO.RELACCENT,"⥹":t.MO.RELACCENT,"⥺":t.MO.RELACCENT,"⥻":t.MO.RELACCENT,"⥼":t.MO.RELACCENT,"⥽":t.MO.RELACCENT,"⥾":t.MO.REL,"⥿":t.MO.REL,"⦁":t.MO.BIN3,"⦂":t.MO.BIN3,"⦙":t.MO.BIN3,"⦚":t.MO.BIN3,"⦛":t.MO.BIN3,"⦜":t.MO.BIN3,"⦝":t.MO.BIN3,"⦞":t.MO.BIN3,"⦟":t.MO.BIN3,"⦠":t.MO.BIN3,"⦡":t.MO.BIN3,"⦢":t.MO.BIN3,"⦣":t.MO.BIN3,"⦤":t.MO.BIN3,"⦥":t.MO.BIN3,"⦦":t.MO.BIN3,"⦧":t.MO.BIN3,"⦨":t.MO.BIN3,"⦩":t.MO.BIN3,"⦪":t.MO.BIN3,"⦫":t.MO.BIN3,"⦬":t.MO.BIN3,"⦭":t.MO.BIN3,"⦮":t.MO.BIN3,"⦯":t.MO.BIN3,"⦰":t.MO.BIN3,"⦱":t.MO.BIN3,"⦲":t.MO.BIN3,"⦳":t.MO.BIN3,"⦴":t.MO.BIN3,"⦵":t.MO.BIN3,"⦶":t.MO.BIN4,"⦷":t.MO.BIN4,"⦸":t.MO.BIN4,"⦹":t.MO.BIN4,"⦺":t.MO.BIN4,"⦻":t.MO.BIN4,"⦼":t.MO.BIN4,"⦽":t.MO.BIN4,"⦾":t.MO.BIN4,"⦿":t.MO.BIN4,"⧀":t.MO.REL,"⧁":t.MO.REL,"⧂":t.MO.BIN3,"⧃":t.MO.BIN3,"⧄":t.MO.BIN4,"⧅":t.MO.BIN4,"⧆":t.MO.BIN4,"⧇":t.MO.BIN4,"⧈":t.MO.BIN4,"⧉":t.MO.BIN3,"⧊":t.MO.BIN3,"⧋":t.MO.BIN3,"⧌":t.MO.BIN3,"⧍":t.MO.BIN3,"⧎":t.MO.REL,"⧏":t.MO.REL,"⧏̸":t.MO.REL,"⧐":t.MO.REL,"⧐̸":t.MO.REL,"⧑":t.MO.REL,"⧒":t.MO.REL,"⧓":t.MO.REL,"⧔":t.MO.REL,"⧕":t.MO.REL,"⧖":t.MO.BIN4,"⧗":t.MO.BIN4,"⧘":t.MO.BIN3,"⧙":t.MO.BIN3,"⧛":t.MO.BIN3,"⧜":t.MO.BIN3,"⧝":t.MO.BIN3,"⧞":t.MO.REL,"⧟":t.MO.BIN3,"⧠":t.MO.BIN3,"⧡":t.MO.REL,"⧢":t.MO.BIN4,"⧣":t.MO.REL,"⧤":t.MO.REL,"⧥":t.MO.REL,"⧦":t.MO.REL,"⧧":t.MO.BIN3,"⧨":t.MO.BIN3,"⧩":t.MO.BIN3,"⧪":t.MO.BIN3,"⧫":t.MO.BIN3,"⧬":t.MO.BIN3,"⧭":t.MO.BIN3,"⧮":t.MO.BIN3,"⧯":t.MO.BIN3,"⧰":t.MO.BIN3,"⧱":t.MO.BIN3,"⧲":t.MO.BIN3,"⧳":t.MO.BIN3,"⧴":t.MO.REL,"⧵":t.MO.BIN4,"⧶":t.MO.BIN4,"⧷":t.MO.BIN4,"⧸":t.MO.BIN3,"⧹":t.MO.BIN3,"⧺":t.MO.BIN3,"⧻":t.MO.BIN3,"⧾":t.MO.BIN4,"⧿":t.MO.BIN4,"⨝":t.MO.BIN3,"⨞":t.MO.BIN3,"⨟":t.MO.BIN3,"⨠":t.MO.BIN3,"⨡":t.MO.BIN3,"⨢":t.MO.BIN4,"⨣":t.MO.BIN4,"⨤":t.MO.BIN4,"⨥":t.MO.BIN4,"⨦":t.MO.BIN4,"⨧":t.MO.BIN4,"⨨":t.MO.BIN4,"⨩":t.MO.BIN4,"⨪":t.MO.BIN4,"⨫":t.MO.BIN4,"⨬":t.MO.BIN4,"⨭":t.MO.BIN4,"⨮":t.MO.BIN4,"⨯":t.MO.BIN4,"⨰":t.MO.BIN4,"⨱":t.MO.BIN4,"⨲":t.MO.BIN4,"⨳":t.MO.BIN4,"⨴":t.MO.BIN4,"⨵":t.MO.BIN4,"⨶":t.MO.BIN4,"⨷":t.MO.BIN4,"⨸":t.MO.BIN4,"⨹":t.MO.BIN4,"⨺":t.MO.BIN4,"⨻":t.MO.BIN4,"⨼":t.MO.BIN4,"⨽":t.MO.BIN4,"⨾":t.MO.BIN4,"⨿":t.MO.BIN4,"⩀":t.MO.BIN4,"⩁":t.MO.BIN4,"⩂":t.MO.BIN4,"⩃":t.MO.BIN4,"⩄":t.MO.BIN4,"⩅":t.MO.BIN4,"⩆":t.MO.BIN4,"⩇":t.MO.BIN4,"⩈":t.MO.BIN4,"⩉":t.MO.BIN4,"⩊":t.MO.BIN4,"⩋":t.MO.BIN4,"⩌":t.MO.BIN4,"⩍":t.MO.BIN4,"⩎":t.MO.BIN4,"⩏":t.MO.BIN4,"⩐":t.MO.BIN4,"⩑":t.MO.BIN4,"⩒":t.MO.BIN4,"⩓":t.MO.BIN4,"⩔":t.MO.BIN4,"⩕":t.MO.BIN4,"⩖":t.MO.BIN4,"⩗":t.MO.BIN4,"⩘":t.MO.BIN4,"⩙":t.MO.REL,"⩚":t.MO.BIN4,"⩛":t.MO.BIN4,"⩜":t.MO.BIN4,"⩝":t.MO.BIN4,"⩞":t.MO.BIN4,"⩟":t.MO.BIN4,"⩠":t.MO.BIN4,"⩡":t.MO.BIN4,"⩢":t.MO.BIN4,"⩣":t.MO.BIN4,"⩤":t.MO.BIN4,"⩥":t.MO.BIN4,"⩦":t.MO.REL,"⩧":t.MO.REL,"⩨":t.MO.REL,"⩩":t.MO.REL,"⩪":t.MO.REL,"⩫":t.MO.REL,"⩬":t.MO.REL,"⩭":t.MO.REL,"⩮":t.MO.REL,"⩯":t.MO.REL,"⩰":t.MO.REL,"⩱":t.MO.BIN4,"⩲":t.MO.BIN4,"⩳":t.MO.REL,"⩴":t.MO.REL,"⩵":t.MO.REL,"⩶":t.MO.REL,"⩷":t.MO.REL,"⩸":t.MO.REL,"⩹":t.MO.REL,"⩺":t.MO.REL,"⩻":t.MO.REL,"⩼":t.MO.REL,"⩽":t.MO.REL,"⩽̸":t.MO.REL,"⩾":t.MO.REL,"⩾̸":t.MO.REL,"⩿":t.MO.REL,"⪀":t.MO.REL,"⪁":t.MO.REL,"⪂":t.MO.REL,"⪃":t.MO.REL,"⪄":t.MO.REL,"⪅":t.MO.REL,"⪆":t.MO.REL,"⪇":t.MO.REL,"⪈":t.MO.REL,"⪉":t.MO.REL,"⪊":t.MO.REL,"⪋":t.MO.REL,"⪌":t.MO.REL,"⪍":t.MO.REL,"⪎":t.MO.REL,"⪏":t.MO.REL,"⪐":t.MO.REL,"⪑":t.MO.REL,"⪒":t.MO.REL,"⪓":t.MO.REL,"⪔":t.MO.REL,"⪕":t.MO.REL,"⪖":t.MO.REL,"⪗":t.MO.REL,"⪘":t.MO.REL,"⪙":t.MO.REL,"⪚":t.MO.REL,"⪛":t.MO.REL,"⪜":t.MO.REL,"⪝":t.MO.REL,"⪞":t.MO.REL,"⪟":t.MO.REL,"⪠":t.MO.REL,"⪡":t.MO.REL,"⪡̸":t.MO.REL,"⪢":t.MO.REL,"⪢̸":t.MO.REL,"⪣":t.MO.REL,"⪤":t.MO.REL,"⪥":t.MO.REL,"⪦":t.MO.REL,"⪧":t.MO.REL,"⪨":t.MO.REL,"⪩":t.MO.REL,"⪪":t.MO.REL,"⪫":t.MO.REL,"⪬":t.MO.REL,"⪭":t.MO.REL,"⪮":t.MO.REL,"⪯":t.MO.REL,"⪯̸":t.MO.REL,"⪰":t.MO.REL,"⪰̸":t.MO.REL,"⪱":t.MO.REL,"⪲":t.MO.REL,"⪳":t.MO.REL,"⪴":t.MO.REL,"⪵":t.MO.REL,"⪶":t.MO.REL,"⪷":t.MO.REL,"⪸":t.MO.REL,"⪹":t.MO.REL,"⪺":t.MO.REL,"⪻":t.MO.REL,"⪼":t.MO.REL,"⪽":t.MO.REL,"⪾":t.MO.REL,"⪿":t.MO.REL,"⫀":t.MO.REL,"⫁":t.MO.REL,"⫂":t.MO.REL,"⫃":t.MO.REL,"⫄":t.MO.REL,"⫅":t.MO.REL,"⫆":t.MO.REL,"⫇":t.MO.REL,"⫈":t.MO.REL,"⫉":t.MO.REL,"⫊":t.MO.REL,"⫋":t.MO.REL,"⫌":t.MO.REL,"⫍":t.MO.REL,"⫎":t.MO.REL,"⫏":t.MO.REL,"⫐":t.MO.REL,"⫑":t.MO.REL,"⫒":t.MO.REL,"⫓":t.MO.REL,"⫔":t.MO.REL,"⫕":t.MO.REL,"⫖":t.MO.REL,"⫗":t.MO.REL,"⫘":t.MO.REL,"⫙":t.MO.REL,"⫚":t.MO.REL,"⫛":t.MO.REL,"⫝":t.MO.REL,"⫝̸":t.MO.REL,"⫞":t.MO.REL,"⫟":t.MO.REL,"⫠":t.MO.REL,"⫡":t.MO.REL,"⫢":t.MO.REL,"⫣":t.MO.REL,"⫤":t.MO.REL,"⫥":t.MO.REL,"⫦":t.MO.REL,"⫧":t.MO.REL,"⫨":t.MO.REL,"⫩":t.MO.REL,"⫪":t.MO.REL,"⫫":t.MO.REL,"⫬":t.MO.REL,"⫭":t.MO.REL,"⫮":t.MO.REL,"⫯":t.MO.REL,"⫰":t.MO.REL,"⫱":t.MO.REL,"⫲":t.MO.REL,"⫳":t.MO.REL,"⫴":t.MO.BIN4,"⫵":t.MO.BIN4,"⫶":t.MO.BIN4,"⫷":t.MO.REL,"⫸":t.MO.REL,"⫹":t.MO.REL,"⫺":t.MO.REL,"⫻":t.MO.BIN4,"⫽":t.MO.BIN4,"⫾":t.MO.BIN3,"⭅":t.MO.RELSTRETCH,"⭆":t.MO.RELSTRETCH,"〈":t.MO.OPEN,"〉":t.MO.CLOSE,"︷":t.MO.WIDEACCENT,"︸":t.MO.WIDEACCENT}},t.OPTABLE.infix["^"]=t.MO.WIDEREL,t.OPTABLE.infix._=t.MO.WIDEREL,t.OPTABLE.infix["⫝̸"]=t.MO.REL}(p3)),p3}var dE;function T0(){if(dE)return Zr;dE=1;var t=Zr&&Zr.__extends||function(){var l=function(c,u){return l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,f){d.__proto__=f}||function(d,f){for(var T in f)Object.prototype.hasOwnProperty.call(f,T)&&(d[T]=f[T])},l(c,u)};return function(c,u){if(typeof u!="function"&&u!==null)throw new TypeError("Class extends value "+String(u)+" is not a constructor or null");l(c,u);function d(){this.constructor=c}c.prototype=u===null?Object.create(u):(d.prototype=u.prototype,new d)}}(),e=Zr&&Zr.__assign||function(){return e=Object.assign||function(l){for(var c,u=1,d=arguments.length;u0)&&!(f=d.next()).done;)T.push(f.value)}catch(g){h={error:g}}finally{try{f&&!f.done&&(u=d.return)&&u.call(d)}finally{if(h)throw h.error}}return T},o=Zr&&Zr.__values||function(l){var c=typeof Symbol=="function"&&Symbol.iterator,u=c&&l[c],d=0;if(u)return u.call(l);if(l&&typeof l.length=="number")return{next:function(){return l&&d>=l.length&&(l=void 0),{value:l&&l[d++],done:!l}}};throw new TypeError(c?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Zr,"__esModule",{value:!0}),Zr.MmlMo=void 0;var r=rt(),i=uD(),s=Uo(),a=function(l){t(c,l);function c(){var u=l!==null&&l.apply(this,arguments)||this;return u._texClass=null,u.lspace=5/18,u.rspace=5/18,u}return Object.defineProperty(c.prototype,"texClass",{get:function(){if(this._texClass===null){var u=this.getText(),d=n(this.handleExplicitForm(this.getForms()),3),f=d[0],T=d[1],h=d[2],g=this.constructor.OPTABLE,Q=g[f][u]||g[T][u]||g[h][u];return Q?Q[2]:r.TEXCLASS.REL}return this._texClass},set:function(u){this._texClass=u},enumerable:!1,configurable:!0}),Object.defineProperty(c.prototype,"kind",{get:function(){return"mo"},enumerable:!1,configurable:!0}),Object.defineProperty(c.prototype,"isEmbellished",{get:function(){return!0},enumerable:!1,configurable:!0}),Object.defineProperty(c.prototype,"hasNewLine",{get:function(){return this.attributes.get("linebreak")==="newline"},enumerable:!1,configurable:!0}),c.prototype.coreParent=function(){for(var u=this,d=this,f=this.factory.getNodeClass("math");d&&d.isEmbellished&&d.coreMO()===this&&!(d instanceof f);)u=d,d=d.parent;return u},c.prototype.coreText=function(u){if(!u)return"";if(u.isEmbellished)return u.coreMO().getText();for(;((u.isKind("mrow")||u.isKind("TeXAtom")&&u.texClass!==r.TEXCLASS.VCENTER||u.isKind("mstyle")||u.isKind("mphantom"))&&u.childNodes.length===1||u.isKind("munderover"))&&u.childNodes[0];)u=u.childNodes[0];return u.isToken?u.getText():""},c.prototype.hasSpacingAttributes=function(){return this.attributes.isSet("lspace")||this.attributes.isSet("rspace")},Object.defineProperty(c.prototype,"isAccent",{get:function(){var u=!1,d=this.coreParent().parent;if(d){var f=d.isKind("mover")?d.childNodes[d.over].coreMO()?"accent":"":d.isKind("munder")?d.childNodes[d.under].coreMO()?"accentunder":"":d.isKind("munderover")?this===d.childNodes[d.over].coreMO()?"accent":this===d.childNodes[d.under].coreMO()?"accentunder":"":"";if(f){var T=d.attributes.getExplicit(f);u=T!==void 0?u:this.attributes.get("accent")}}return u},enumerable:!1,configurable:!0}),c.prototype.setTeXclass=function(u){var d=this.attributes.getList("form","fence"),f=d.form,T=d.fence;return this.getProperty("texClass")===void 0&&(this.attributes.isSet("lspace")||this.attributes.isSet("rspace"))?null:(T&&this.texClass===r.TEXCLASS.REL&&(f==="prefix"&&(this.texClass=r.TEXCLASS.OPEN),f==="postfix"&&(this.texClass=r.TEXCLASS.CLOSE)),this.adjustTeXclass(u))},c.prototype.adjustTeXclass=function(u){var d=this.texClass,f=this.prevClass;if(d===r.TEXCLASS.NONE)return u;if(u?(u.getProperty("autoOP")&&(d===r.TEXCLASS.BIN||d===r.TEXCLASS.REL)&&(f=u.texClass=r.TEXCLASS.ORD),f=this.prevClass=u.texClass||r.TEXCLASS.ORD,this.prevLevel=this.attributes.getInherited("scriptlevel")):f=this.prevClass=r.TEXCLASS.NONE,d===r.TEXCLASS.BIN&&(f===r.TEXCLASS.NONE||f===r.TEXCLASS.BIN||f===r.TEXCLASS.OP||f===r.TEXCLASS.REL||f===r.TEXCLASS.OPEN||f===r.TEXCLASS.PUNCT))this.texClass=r.TEXCLASS.ORD;else if(f===r.TEXCLASS.BIN&&(d===r.TEXCLASS.REL||d===r.TEXCLASS.CLOSE||d===r.TEXCLASS.PUNCT))u.texClass=this.prevClass=r.TEXCLASS.ORD;else if(d===r.TEXCLASS.BIN){for(var T=this,h=this.parent;h&&h.parent&&h.isEmbellished&&(h.childNodes.length===1||!h.isKind("mrow")&&h.core()===T);)T=h,h=h.parent;h.childNodes[h.childNodes.length-1]===T&&(this.texClass=r.TEXCLASS.ORD)}return this},c.prototype.setInheritedAttributes=function(u,d,f,T){u===void 0&&(u={}),d===void 0&&(d=!1),f===void 0&&(f=0),T===void 0&&(T=!1),l.prototype.setInheritedAttributes.call(this,u,d,f,T);var h=this.getText();this.checkOperatorTable(h),this.checkPseudoScripts(h),this.checkPrimes(h),this.checkMathAccent(h)},c.prototype.checkOperatorTable=function(u){var d,f,T=n(this.handleExplicitForm(this.getForms()),3),h=T[0],g=T[1],Q=T[2];this.attributes.setInherited("form",h);var m=this.constructor.OPTABLE,_=m[h][u]||m[g][u]||m[Q][u];if(_){this.getProperty("texClass")===void 0&&(this.texClass=_[2]);try{for(var v=o(Object.keys(_[3]||{})),b=v.next();!b.done;b=v.next()){var y=b.value;this.attributes.setInherited(y,_[3][y])}}catch(L){d={error:L}}finally{try{b&&!b.done&&(f=v.return)&&f.call(v)}finally{if(d)throw d.error}}this.lspace=(_[0]+1)/18,this.rspace=(_[1]+1)/18}else{var E=(0,i.getRange)(u);if(E){this.getProperty("texClass")===void 0&&(this.texClass=E[2]);var x=this.constructor.MMLSPACING[E[2]];this.lspace=(x[0]+1)/18,this.rspace=(x[1]+1)/18}}},c.prototype.getForms=function(){for(var u=this,d=this.parent,f=this.Parent;f&&f.isEmbellished;)u=d,d=f.parent,f=f.Parent;if(d&&d.isKind("mrow")&&d.nonSpaceLength()!==1){if(d.firstNonSpace()===u)return["prefix","infix","postfix"];if(d.lastNonSpace()===u)return["postfix","infix","prefix"]}return["infix","prefix","postfix"]},c.prototype.handleExplicitForm=function(u){if(this.attributes.isSet("form")){var d=this.attributes.get("form");u=[d].concat(u.filter(function(f){return f!==d}))}return u},c.prototype.checkPseudoScripts=function(u){var d=this.constructor.pseudoScripts;if(u.match(d)){var f=this.coreParent().Parent,T=!f||!(f.isKind("msubsup")&&!f.isKind("msub"));this.setProperty("pseudoscript",T),T&&(this.attributes.setInherited("lspace",0),this.attributes.setInherited("rspace",0))}},c.prototype.checkPrimes=function(u){var d=this.constructor.primes;if(u.match(d)){var f=this.constructor.remapPrimes,T=(0,s.unicodeString)((0,s.unicodeChars)(u).map(function(h){return f[h]}));this.setProperty("primes",T)}},c.prototype.checkMathAccent=function(u){var d=this.Parent;if(!(this.getProperty("mathaccent")!==void 0||!d||!d.isKind("munderover"))){var f=d.childNodes[0];if(!(f.isEmbellished&&f.coreMO()===this)){var T=this.constructor.mathaccents;u.match(T)&&this.setProperty("mathaccent",!0)}}},c.defaults=e(e({},r.AbstractMmlTokenNode.defaults),{form:"infix",fence:!1,separator:!1,lspace:"thickmathspace",rspace:"thickmathspace",stretchy:!1,symmetric:!1,maxsize:"infinity",minsize:"0em",largeop:!1,movablelimits:!1,accent:!1,linebreak:"auto",lineleading:"1ex",linebreakstyle:"before",indentalign:"auto",indentshift:"0",indenttarget:"",indentalignfirst:"indentalign",indentshiftfirst:"indentshift",indentalignlast:"indentalign",indentshiftlast:"indentshift"}),c.MMLSPACING=i.MMLSPACING,c.OPTABLE=i.OPTABLE,c.pseudoScripts=new RegExp(["^[\"'*`","ª","°","²-´","¹","º","‘-‟","′-‷⁗","⁰ⁱ","⁴-ⁿ","₀-₎","]+$"].join("")),c.primes=new RegExp(["^[\"'`","‘-‟","]+$"].join("")),c.remapPrimes={34:8243,39:8242,96:8245,8216:8245,8217:8242,8218:8242,8219:8245,8220:8246,8221:8243,8222:8243,8223:8246},c.mathaccents=new RegExp(["^[","´́ˊ","`̀ˋ","¨̈","~̃˜","¯̄ˉ","˘̆","ˇ̌","^̂ˆ","→⃗","˙̇","˚̊","⃛","⃜","]$"].join("")),c}(r.AbstractMmlTokenNode);return Zr.MmlMo=a,Zr}var TE;function ln(){if(TE)return zo;TE=1;var t=zo&&zo.__values||function(s){var a=typeof Symbol=="function"&&Symbol.iterator,l=a&&s[a],c=0;if(l)return l.call(s);if(s&&typeof s.length=="number")return{next:function(){return s&&c>=s.length&&(s=void 0),{value:s&&s[c++],done:!s}}};throw new TypeError(a?"Object is not iterable.":"Symbol.iterator is not defined.")},e=zo&&zo.__read||function(s,a){var l=typeof Symbol=="function"&&s[Symbol.iterator];if(!l)return s;var c=l.call(s),u,d=[],f;try{for(;(a===void 0||a-- >0)&&!(u=c.next()).done;)d.push(u.value)}catch(T){f={error:T}}finally{try{u&&!u.done&&(l=c.return)&&l.call(c)}finally{if(f)throw f.error}}return d},n=zo&&zo.__spreadArray||function(s,a,l){if(l||arguments.length===2)for(var c=0,u=a.length,d;c=i.length&&(i=void 0),{value:i&&i[l++],done:!i}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")},e=M1&&M1.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(M1,"__esModule",{value:!0});var n=rt(),o=e(ln()),r;return function(i){i.cleanStretchy=function(u){var d,f,T=u.data;try{for(var h=t(T.getList("fixStretchy")),g=h.next();!g.done;g=h.next()){var Q=g.value;if(o.default.getProperty(Q,"fixStretchy")){var m=o.default.getForm(Q);m&&m[3]&&m[3].stretchy&&o.default.setAttribute(Q,"stretchy",!1);var _=Q.parent;if(!o.default.getTexClass(Q)&&(!m||!m[2])){var v=T.nodeFactory.create("node","TeXAtom",[Q]);_.replaceChild(v,Q),v.inheritAttributesFrom(Q)}o.default.removeProperties(Q,"fixStretchy")}}}catch(b){d={error:b}}finally{try{g&&!g.done&&(f=h.return)&&f.call(h)}finally{if(d)throw d.error}}},i.cleanAttributes=function(u){var d=u.data.root;d.walkTree(function(f,T){var h,g,Q=f.attributes;if(Q){var m=new Set((Q.get("mjx-keep-attrs")||"").split(/ /));delete Q.getAllAttributes()["mjx-keep-attrs"];try{for(var _=t(Q.getExplicitNames()),v=_.next();!v.done;v=_.next()){var b=v.value;!m.has(b)&&Q.attributes[b]===f.attributes.getInherited(b)&&delete Q.attributes[b]}}catch(y){h={error:y}}finally{try{v&&!v.done&&(g=_.return)&&g.call(_)}finally{if(h)throw h.error}}}},{})},i.combineRelations=function(u){var d,f,T,h,g=[];try{for(var Q=t(u.data.getList("mo")),m=Q.next();!m.done;m=Q.next()){var _=m.value;if(!(_.getProperty("relationsCombined")||!_.parent||_.parent&&!o.default.isType(_.parent,"mrow")||o.default.getTexClass(_)!==n.TEXCLASS.REL)){for(var v=_.parent,b=void 0,y=v.childNodes,E=y.indexOf(_)+1,x=o.default.getProperty(_,"variantForm");E="0"&&a<="9")r[i]=o[parseInt(r[i],10)-1],typeof r[i]=="number"&&(r[i]=r[i].toString());else if(a==="{")if(a=r[i].substr(1),a>="0"&&a<="9")r[i]=o[parseInt(r[i].substr(1,r[i].length-2),10)-1],typeof r[i]=="number"&&(r[i]=r[i].toString());else{var l=r[i].match(/^\{([a-z]+):%(\d+)\|(.*)\}$/);l&&(r[i]="%"+r[i])}r[i]==null&&(r[i]="???")}return r.join("")},e.pattern=/%(\d+|\{\d+\}|\{[a-z]+:\%\d+(?:\|(?:%\{\d+\}|%.|[^\}])*)+\}|.)/g,e}();return L6.default=t,L6}var J9={},h3={},hE;function O1t(){if(hE)return h3;hE=1,Object.defineProperty(h3,"__esModule",{value:!0}),h3.asyncLoad=void 0;var t=Vp();function e(n){return t.mathjax.asyncLoad?new Promise(function(o,r){var i=t.mathjax.asyncLoad(n);i instanceof Promise?i.then(function(s){return o(s)}).catch(function(s){return r(s)}):o(i)}):Promise.reject("Can't load '".concat(n,"': No asyncLoad method specified"))}return h3.asyncLoad=e,h3}var mE;function Wc(){return mE||(mE=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.numeric=t.translate=t.remove=t.add=t.entities=t.options=void 0;var e=$p(),n=O1t();t.options={loadMissingEntities:!0},t.entities={ApplyFunction:"⁡",Backslash:"∖",Because:"∵",Breve:"˘",Cap:"⋒",CenterDot:"·",CircleDot:"⊙",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",Congruent:"≡",ContourIntegral:"∮",Coproduct:"∐",Cross:"⨯",Cup:"⋓",CupCap:"≍",Dagger:"‡",Del:"∇",Delta:"Δ",Diamond:"⋄",DifferentialD:"ⅆ",DotEqual:"≐",DoubleDot:"¨",DoubleRightTee:"⊨",DoubleVerticalBar:"∥",DownArrow:"↓",DownLeftVector:"↽",DownRightVector:"⇁",DownTee:"⊤",Downarrow:"⇓",Element:"∈",EqualTilde:"≂",Equilibrium:"⇌",Exists:"∃",ExponentialE:"ⅇ",FilledVerySmallSquare:"▪",ForAll:"∀",Gamma:"Γ",Gg:"⋙",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Hacek:"ˇ",Hat:"^",HumpDownHump:"≎",HumpEqual:"≏",Im:"ℑ",ImaginaryI:"ⅈ",Integral:"∫",Intersection:"⋂",InvisibleComma:"⁣",InvisibleTimes:"⁢",Lambda:"Λ",Larr:"↞",LeftAngleBracket:"⟨",LeftArrow:"←",LeftArrowRightArrow:"⇆",LeftCeiling:"⌈",LeftDownVector:"⇃",LeftFloor:"⌊",LeftRightArrow:"↔",LeftTee:"⊣",LeftTriangle:"⊲",LeftTriangleEqual:"⊴",LeftUpVector:"↿",LeftVector:"↼",Leftarrow:"⇐",Leftrightarrow:"⇔",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",LessSlantEqual:"⩽",LessTilde:"≲",Ll:"⋘",Lleftarrow:"⇚",LongLeftArrow:"⟵",LongLeftRightArrow:"⟷",LongRightArrow:"⟶",Longleftarrow:"⟸",Longleftrightarrow:"⟺",Longrightarrow:"⟹",Lsh:"↰",MinusPlus:"∓",NestedGreaterGreater:"≫",NestedLessLess:"≪",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotLeftTriangle:"⋪",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotPrecedes:"⊀",NotPrecedesSlantEqual:"⋠",NotRightTriangle:"⋫",NotRightTriangleEqual:"⋭",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsSlantEqual:"⋡",NotSupersetEqual:"⊉",NotTilde:"≁",NotVerticalBar:"∤",Omega:"Ω",OverBar:"‾",OverBrace:"⏞",PartialD:"∂",Phi:"Φ",Pi:"Π",PlusMinus:"±",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",Product:"∏",Proportional:"∝",Psi:"Ψ",Rarr:"↠",Re:"ℜ",ReverseEquilibrium:"⇋",RightAngleBracket:"⟩",RightArrow:"→",RightArrowLeftArrow:"⇄",RightCeiling:"⌉",RightDownVector:"⇂",RightFloor:"⌋",RightTee:"⊢",RightTeeArrow:"↦",RightTriangle:"⊳",RightTriangleEqual:"⊵",RightUpVector:"↾",RightVector:"⇀",Rightarrow:"⇒",Rrightarrow:"⇛",Rsh:"↱",Sigma:"Σ",SmallCircle:"∘",Sqrt:"√",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",Star:"⋆",Subset:"⋐",SubsetEqual:"⊆",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",SuchThat:"∋",Sum:"∑",Superset:"⊃",SupersetEqual:"⊇",Supset:"⋑",Therefore:"∴",Theta:"Θ",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",UnderBar:"_",UnderBrace:"⏟",Union:"⋃",UnionPlus:"⊎",UpArrow:"↑",UpDownArrow:"↕",UpTee:"⊥",Uparrow:"⇑",Updownarrow:"⇕",Upsilon:"Υ",Vdash:"⊩",Vee:"⋁",VerticalBar:"∣",VerticalTilde:"≀",Vvdash:"⊪",Wedge:"⋀",Xi:"Ξ",amp:"&",acute:"´",aleph:"ℵ",alpha:"α",amalg:"⨿",and:"∧",ang:"∠",angmsd:"∡",angsph:"∢",ape:"≊",backprime:"‵",backsim:"∽",backsimeq:"⋍",beta:"β",beth:"ℶ",between:"≬",bigcirc:"◯",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",blacklozenge:"⧫",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",bowtie:"⋈",boxdl:"┐",boxdr:"┌",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxul:"┘",boxur:"└",bsol:"\\",bull:"•",cap:"∩",check:"✓",chi:"χ",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledR:"®",circledS:"Ⓢ",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",clubs:"♣",colon:":",comp:"∁",ctdot:"⋯",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cup:"∪",curarr:"↷",curlyvee:"⋎",curlywedge:"⋏",dagger:"†",daleth:"ℸ",ddarr:"⇊",deg:"°",delta:"δ",digamma:"ϝ",div:"÷",divideontimes:"⋇",dot:"˙",doteqdot:"≑",dotplus:"∔",dotsquare:"⊡",dtdot:"⋱",ecir:"≖",efDot:"≒",egs:"⪖",ell:"ℓ",els:"⪕",empty:"∅",epsi:"ε",epsiv:"ϵ",erDot:"≓",eta:"η",eth:"ð",flat:"♭",fork:"⋔",frown:"⌢",gEl:"⪌",gamma:"γ",gap:"⪆",gimel:"ℷ",gnE:"≩",gnap:"⪊",gne:"⪈",gnsim:"⋧",gt:">",gtdot:"⋗",harrw:"↭",hbar:"ℏ",hellip:"…",hookleftarrow:"↩",hookrightarrow:"↪",imath:"ı",infin:"∞",intcal:"⊺",iota:"ι",jmath:"ȷ",kappa:"κ",kappav:"ϰ",lEg:"⪋",lambda:"λ",lap:"⪅",larrlp:"↫",larrtl:"↢",lbrace:"{",lbrack:"[",le:"≤",leftleftarrows:"⇇",leftthreetimes:"⋋",lessdot:"⋖",lmoust:"⎰",lnE:"≨",lnap:"⪉",lne:"⪇",lnsim:"⋦",longmapsto:"⟼",looparrowright:"↬",lowast:"∗",loz:"◊",lt:"<",ltimes:"⋉",ltri:"◃",macr:"¯",malt:"✠",mho:"℧",mu:"μ",multimap:"⊸",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nRightarrow:"⇏",nVDash:"⊯",nVdash:"⊮",natur:"♮",nearr:"↗",nharr:"↮",nlarr:"↚",not:"¬",nrarr:"↛",nu:"ν",nvDash:"⊭",nvdash:"⊬",nwarr:"↖",omega:"ω",omicron:"ο",or:"∨",osol:"⊘",period:".",phi:"φ",phiv:"ϕ",pi:"π",piv:"ϖ",prap:"⪷",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",prime:"′",psi:"ψ",quot:'"',rarrtl:"↣",rbrace:"}",rbrack:"]",rho:"ρ",rhov:"ϱ",rightrightarrows:"⇉",rightthreetimes:"⋌",ring:"˚",rmoust:"⎱",rtimes:"⋊",rtri:"▹",scap:"⪸",scnE:"⪶",scnap:"⪺",scnsim:"⋩",sdot:"⋅",searr:"↘",sect:"§",sharp:"♯",sigma:"σ",sigmav:"ς",simne:"≆",smile:"⌣",spades:"♠",sub:"⊂",subE:"⫅",subnE:"⫋",subne:"⊊",supE:"⫆",supnE:"⫌",supne:"⊋",swarr:"↙",tau:"τ",theta:"θ",thetav:"ϑ",tilde:"˜",times:"×",triangle:"▵",triangleq:"≜",upsi:"υ",upuparrows:"⇈",veebar:"⊻",vellip:"⋮",weierp:"℘",xi:"ξ",yen:"¥",zeta:"ζ",zigrarr:"⇝",nbsp:" ",rsquo:"’",lsquo:"‘"};var o={};function r(c,u){Object.assign(t.entities,c),o[u]=!0}t.add=r;function i(c){delete t.entities[c]}t.remove=i;function s(c){return c.replace(/&([a-z][a-z0-9]*|#(?:[0-9]+|x[0-9a-f]+));/ig,a)}t.translate=s;function a(c,u){if(u.charAt(0)==="#")return l(u.slice(1));if(t.entities[u])return t.entities[u];if(t.options.loadMissingEntities){var d=u.match(/^[a-zA-Z](fr|scr|opf)$/)?RegExp.$1:u.charAt(0).toLowerCase();o[d]||(o[d]=!0,(0,e.retryAfter)((0,n.asyncLoad)("./util/entities/"+d+".js")))}return c}function l(c){var u=c.charAt(0)==="x"?parseInt(c.slice(1),16):parseInt(c);return String.fromCodePoint(u)}t.numeric=l}(J9)),J9}var gE;function on(){if(gE)return Yo;gE=1;var t=Yo&&Yo.__read||function(c,u){var d=typeof Symbol=="function"&&c[Symbol.iterator];if(!d)return c;var f=d.call(c),T,h=[],g;try{for(;(u===void 0||u-- >0)&&!(T=f.next()).done;)h.push(T.value)}catch(Q){g={error:Q}}finally{try{T&&!T.done&&(d=f.return)&&d.call(f)}finally{if(g)throw g.error}}return h},e=Yo&&Yo.__values||function(c){var u=typeof Symbol=="function"&&Symbol.iterator,d=u&&c[u],f=0;if(d)return d.call(c);if(c&&typeof c.length=="number")return{next:function(){return c&&f>=c.length&&(c=void 0),{value:c&&c[f++],done:!c}}};throw new TypeError(u?"Object is not iterable.":"Symbol.iterator is not defined.")},n=Yo&&Yo.__importDefault||function(c){return c&&c.__esModule?c:{default:c}};Object.defineProperty(Yo,"__esModule",{value:!0});var o=rt(),r=n(ln()),i=n(pr()),s=n(Yt()),a=Wc(),l;return function(c){var u=7.2,d=72,f={em:function(z){return z},ex:function(z){return z*.43},pt:function(z){return z/10},pc:function(z){return z*1.2},px:function(z){return z*u/d},in:function(z){return z*u},cm:function(z){return z*u/2.54},mm:function(z){return z*u/25.4},mu:function(z){return z/18}},T="([-+]?([.,]\\d+|\\d+([.,]\\d*)?))",h="(pt|em|ex|mu|px|mm|cm|in|pc)",g=RegExp("^\\s*"+T+"\\s*"+h+"\\s*$"),Q=RegExp("^\\s*"+T+"\\s*"+h+" ?");function m(z,te){te===void 0&&(te=!1);var ae=z.match(te?Q:g);return ae?_([ae[1].replace(/,/,"."),ae[4],ae[0].length]):[null,null,0]}c.matchDimen=m;function _(z){var te=t(z,3),ae=te[0],fe=te[1],Qe=te[2];if(fe!=="mu")return[ae,fe,Qe];var Y=b(f[fe](parseFloat(ae||"1")));return[Y.slice(0,-2),"em",Qe]}function v(z){var te=t(m(z),2),ae=te[0],fe=te[1],Qe=parseFloat(ae||"1"),Y=f[fe];return Y?Y(Qe):0}c.dimen2em=v;function b(z){return Math.abs(z)<6e-4?"0em":z.toFixed(3).replace(/\.?0+$/,"")+"em"}c.Em=b;function y(){for(var z=[],te=0;te1&&(W=[z.create("node","mrow",W)]),W}c.internalMath=A;function O(z,te,ae){te=te.replace(/^\s+/,a.entities.nbsp).replace(/\s+$/,a.entities.nbsp);var fe=z.create("text",te);return z.create("node","mtext",[],ae,fe)}c.internalText=O;function R(z,te,ae,fe,Qe){if(c.checkMovableLimits(te),r.default.isType(te,"munderover")&&r.default.isEmbellished(te)){r.default.setProperties(r.default.getCoreMO(te),{lspace:0,rspace:0});var Y=z.create("node","mo",[],{rspace:0});te=z.create("node","mrow",[Y,te])}var W=z.create("node","munderover",[te]);r.default.setChild(W,fe==="over"?W.over:W.under,ae);var X=W;return Qe&&(X=z.create("node","TeXAtom",[W],{texClass:o.TEXCLASS.OP,movesupsub:!0})),r.default.setProperty(X,"subsupOK",!0),X}c.underOver=R;function I(z){var te=r.default.isType(z,"mo")?r.default.getForm(z):null;(r.default.getProperty(z,"movablelimits")||te&&te[3]&&te[3].movablelimits)&&r.default.setProperties(z,{movablelimits:!1})}c.checkMovableLimits=I;function M(z){if(typeof z!="string")return z;var te=z.trim();return te.match(/\\$/)&&z.match(/ $/)&&(te+=" "),te}c.trimSpaces=M;function $(z,te){return te=c.trimSpaces(te||""),te==="t"?z.arraydef.align="baseline 1":te==="b"?z.arraydef.align="baseline -1":te==="c"?z.arraydef.align="axis":te&&(z.arraydef.align=te),z}c.setArrayAlign=$;function U(z,te,ae){for(var fe="",Qe="",Y=0;Yte.length)throw new s.default("IllegalMacroParam","Illegal macro parameter reference");Qe=G(z,G(z,Qe,fe),te[parseInt(W,10)-1]),fe=""}else fe+=W}return G(z,Qe,fe)}c.substituteArgs=U;function G(z,te,ae){if(ae.match(/^[a-z]/i)&&te.match(/(^|[^\\])(\\\\)*\\[a-z]+$/i)&&(te+=" "),te.length+ae.length>z.configuration.options.maxBuffer)throw new s.default("MaxBufferSize","MathJax internal buffer size exceeded; is there a recursive macro call?");return te+ae}c.addArgs=G;function P(z,te){if(te===void 0&&(te=!0),!(++z.macroCount<=z.configuration.options.maxMacros))throw te?new s.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is here a recursive macro call?"):new s.default("MaxMacroSub2","MathJax maximum substitution count exceeded; is there a recursive latex environment?")}c.checkMaxMacros=P;function F(z){if(z.stack.global.eqnenv)throw new s.default("ErroneousNestingEq","Erroneous nesting of equation structures");z.stack.global.eqnenv=!0}c.checkEqnEnv=F;function B(z,te){var ae=z.copy(),fe=te.configuration;return ae.walkTree(function(Qe){var Y,W;fe.addNode(Qe.kind,Qe);var X=(Qe.getProperty("in-lists")||"").split(/,/);try{for(var se=e(X),le=se.next();!le.done;le=se.next()){var de=le.value;de&&fe.addNode(de,Qe)}}catch(Te){Y={error:Te}}finally{try{le&&!le.done&&(W=se.return)&&W.call(se)}finally{if(Y)throw Y.error}}}),ae}c.copyNode=B;function q(z,te,ae){return ae}c.MmlFilterAttribute=q;function ee(z){var te=z.stack.env.font;return te?{mathvariant:te}:{}}c.getFontDef=ee;function K(z,te,ae){var fe,Qe;te===void 0&&(te=null),ae===void 0&&(ae=!1);var Y=j(z);if(te)try{for(var W=e(Object.keys(Y)),X=W.next();!X.done;X=W.next()){var se=X.value;if(!te.hasOwnProperty(se)){if(ae)throw new s.default("InvalidOption","Invalid option: %1",se);delete Y[se]}}}catch(le){fe={error:le}}finally{try{X&&!X.done&&(Qe=W.return)&&Qe.call(W)}finally{if(fe)throw fe.error}}return Y}c.keyvalOptions=K;function j(z){for(var te,ae,fe={},Qe=z,Y,W,X;Qe;)te=t(pe(Qe,["=",","]),3),W=te[0],Y=te[1],Qe=te[2],Y==="="?(ae=t(pe(Qe,[","]),3),X=ae[0],Y=ae[1],Qe=ae[2],X=X==="false"||X==="true"?JSON.parse(X):X,fe[W]=X):W&&(fe[W]=!0);return fe}function ue(z,te){for(;te>0;)z=z.trim().slice(1,-1),te--;return z.trim()}function pe(z,te){for(var ae=z.length,fe=0,Qe="",Y=0,W=0,X=!0,se=!1;Yfe&&(W=fe)),fe++;break;case"}":fe&&fe--,(X||se)&&(W--,se=!0),X=!1;break;default:if(!fe&&te.indexOf(le)!==-1)return[se?"true":ue(Qe,W),le,z.slice(Y)];X=!1,se=!1}Qe+=le}if(fe)throw new s.default("ExtraOpenMissingClose","Extra open brace or missing close brace");return[se?"true":ue(Qe,W),"",z.slice(Y)]}}(l||(l={})),Yo.default=l,Yo}var Ni={},_E;function dD(){if(_E)return Ni;_E=1;var t=Ni&&Ni.__values||function(s){var a=typeof Symbol=="function"&&Symbol.iterator,l=a&&s[a],c=0;if(l)return l.call(s);if(s&&typeof s.length=="number")return{next:function(){return s&&c>=s.length&&(s=void 0),{value:s&&s[c++],done:!s}}};throw new TypeError(a?"Object is not iterable.":"Symbol.iterator is not defined.")},e=Ni&&Ni.__read||function(s,a){var l=typeof Symbol=="function"&&s[Symbol.iterator];if(!l)return s;var c=l.call(s),u,d=[],f;try{for(;(a===void 0||a-- >0)&&!(u=c.next()).done;)d.push(u.value)}catch(T){f={error:T}}finally{try{u&&!u.done&&(l=c.return)&&l.call(c)}finally{if(f)throw f.error}}return d},n=Ni&&Ni.__spreadArray||function(s,a,l){if(l||arguments.length===2)for(var c=0,u=a.length,d;c=c.length&&(c=void 0),{value:c&&c[f++],done:!c}}};throw new TypeError(u?"Object is not iterable.":"Symbol.iterator is not defined.")},e=Ri&&Ri.__read||function(c,u){var d=typeof Symbol=="function"&&c[Symbol.iterator];if(!d)return c;var f=d.call(c),T,h=[],g;try{for(;(u===void 0||u-- >0)&&!(T=f.next()).done;)h.push(T.value)}catch(Q){g={error:Q}}finally{try{T&&!T.done&&(d=f.return)&&d.call(f)}finally{if(g)throw g.error}}return h},n=Ri&&Ri.__spreadArray||function(c,u,d){if(d||arguments.length===2)for(var f=0,T=u.length,h;f",TQn=">",fQn="Í",pQn="í",hQn="Î",mQn="î",gQn="¡",_Qn="Ì",QQn="ì",vQn="¿",yQn="Ï",bQn="ï",EQn="«",SQn="<",xQn="<",LQn="¯",CQn="µ",AQn="·",wQn=" ",OQn="¬",MQn="Ñ",RQn="ñ",NQn="Ó",DQn="ó",IQn="Ô",kQn="ô",HQn="Ò",PQn="ò",$Qn="ª",VQn="º",BQn="Ø",FQn="ø",UQn="Õ",qQn="õ",GQn="Ö",jQn="ö",zQn="¶",YQn="±",WQn="£",KQn='"',ZQn='"',XQn="»",JQn="®",evn="®",tvn="§",nvn="­",rvn="¹",ivn="²",ovn="³",svn="ß",avn="Þ",lvn="þ",cvn="×",uvn="Ú",dvn="ú",Tvn="Û",fvn="û",pvn="Ù",hvn="ù",mvn="¨",gvn="Ü",_vn="ü",Qvn="Ý",vvn="ý",yvn="¥",bvn="ÿ",Evn={Aacute:x_n,aacute:L_n,Acirc:C_n,acirc:A_n,acute:w_n,AElig:O_n,aelig:M_n,Agrave:R_n,agrave:N_n,amp:D_n,AMP:I_n,Aring:k_n,aring:H_n,Atilde:P_n,atilde:$_n,Auml:V_n,auml:B_n,brvbar:F_n,Ccedil:U_n,ccedil:q_n,cedil:G_n,cent:j_n,copy:z_n,COPY:Y_n,curren:W_n,deg:K_n,divide:Z_n,Eacute:X_n,eacute:J_n,Ecirc:eQn,ecirc:tQn,Egrave:nQn,egrave:rQn,ETH:iQn,eth:oQn,Euml:sQn,euml:aQn,frac12:lQn,frac14:cQn,frac34:uQn,gt:dQn,GT:TQn,Iacute:fQn,iacute:pQn,Icirc:hQn,icirc:mQn,iexcl:gQn,Igrave:_Qn,igrave:QQn,iquest:vQn,Iuml:yQn,iuml:bQn,laquo:EQn,lt:SQn,LT:xQn,macr:LQn,micro:CQn,middot:AQn,nbsp:wQn,not:OQn,Ntilde:MQn,ntilde:RQn,Oacute:NQn,oacute:DQn,Ocirc:IQn,ocirc:kQn,Ograve:HQn,ograve:PQn,ordf:$Qn,ordm:VQn,Oslash:BQn,oslash:FQn,Otilde:UQn,otilde:qQn,Ouml:GQn,ouml:jQn,para:zQn,plusmn:YQn,pound:WQn,quot:KQn,QUOT:ZQn,raquo:XQn,reg:JQn,REG:evn,sect:tvn,shy:nvn,sup1:rvn,sup2:ivn,sup3:ovn,szlig:svn,THORN:avn,thorn:lvn,times:cvn,Uacute:uvn,uacute:dvn,Ucirc:Tvn,ucirc:fvn,Ugrave:pvn,ugrave:hvn,uml:mvn,Uuml:gvn,uuml:_vn,Yacute:Qvn,yacute:vvn,yen:yvn,yuml:bvn},Svn="&",xvn="'",Lvn=">",Cvn="<",Avn='"',wvn={amp:Svn,apos:xvn,gt:Lvn,lt:Cvn,quot:Avn};var uw;function UI(){if(uw)return X2;uw=1;var t=X2&&X2.__importDefault||function(K){return K&&K.__esModule?K:{default:K}};Object.defineProperty(X2,"__esModule",{value:!0});var e=t(sUt()),n=t(S_n),o=t(Evn),r=t(wvn);function i(K){return K===" "||K===` `||K===" "||K==="\f"||K==="\r"}function s(K){return K>="a"&&K<="z"||K>="A"&&K<="Z"}function a(K,j,ue){var pe=K.toLowerCase();return K===pe?function(z,te){te===pe?z._state=j:(z._state=ue,z._index--)}:function(z,te){te===pe||te===K?z._state=j:(z._state=ue,z._index--)}}function l(K,j){var ue=K.toLowerCase();return function(pe,z){z===ue||z===K?pe._state=j:(pe._state=3,pe._index--)}}var c=a("C",24,16),u=a("D",25,16),d=a("A",26,16),f=a("T",27,16),T=a("A",28,16),h=l("R",35),g=l("I",36),Q=l("P",37),m=l("T",38),_=a("R",40,1),v=a("I",41,1),b=a("P",42,1),y=a("T",43,1),E=l("Y",45),x=l("L",46),L=l("E",47),C=a("Y",49,1),A=a("L",50,1),O=a("E",51,1),R=l("I",54),I=l("T",55),M=l("L",56),$=l("E",57),U=a("I",58,1),G=a("T",59,1),P=a("L",60,1),F=a("E",61,1),B=a("#",63,64),q=a("X",66,65),ee=function(){function K(j,ue){var pe;this._state=1,this.buffer="",this.sectionStart=0,this._index=0,this.bufferOffset=0,this.baseState=1,this.special=1,this.running=!0,this.ended=!1,this.cbs=ue,this.xmlMode=!!(j!=null&&j.xmlMode),this.decodeEntities=(pe=j==null?void 0:j.decodeEntities)!==null&&pe!==void 0?pe:!0}return K.prototype.reset=function(){this._state=1,this.buffer="",this.sectionStart=0,this._index=0,this.bufferOffset=0,this.baseState=1,this.special=1,this.running=!0,this.ended=!1},K.prototype.write=function(j){this.ended&&this.cbs.onerror(Error(".write() after done!")),this.buffer+=j,this.parse()},K.prototype.end=function(j){this.ended&&this.cbs.onerror(Error(".end() after done!")),j&&this.write(j),this.ended=!0,this.running&&this.finish()},K.prototype.pause=function(){this.running=!1},K.prototype.resume=function(){this.running=!0,this._indexthis.sectionStart&&this.cbs.ontext(this.getSection()),this._state=2,this.sectionStart=this._index):this.decodeEntities&&j==="&"&&(this.special===1||this.special===4)&&(this._index>this.sectionStart&&this.cbs.ontext(this.getSection()),this.baseState=1,this._state=62,this.sectionStart=this._index)},K.prototype.isTagStartChar=function(j){return s(j)||this.xmlMode&&!i(j)&&j!=="/"&&j!==">"},K.prototype.stateBeforeTagName=function(j){j==="/"?this._state=5:j==="<"?(this.cbs.ontext(this.getSection()),this.sectionStart=this._index):j===">"||this.special!==1||i(j)?this._state=1:j==="!"?(this._state=15,this.sectionStart=this._index+1):j==="?"?(this._state=17,this.sectionStart=this._index+1):this.isTagStartChar(j)?(this._state=!this.xmlMode&&(j==="s"||j==="S")?32:!this.xmlMode&&(j==="t"||j==="T")?52:3,this.sectionStart=this._index):this._state=1},K.prototype.stateInTagName=function(j){(j==="/"||j===">"||i(j))&&(this.emitToken("onopentagname"),this._state=8,this._index--)},K.prototype.stateBeforeClosingTagName=function(j){i(j)||(j===">"?this._state=1:this.special!==1?this.special!==4&&(j==="s"||j==="S")?this._state=33:this.special===4&&(j==="t"||j==="T")?this._state=53:(this._state=1,this._index--):this.isTagStartChar(j)?(this._state=6,this.sectionStart=this._index):(this._state=20,this.sectionStart=this._index))},K.prototype.stateInClosingTagName=function(j){(j===">"||i(j))&&(this.emitToken("onclosetag"),this._state=7,this._index--)},K.prototype.stateAfterClosingTagName=function(j){j===">"&&(this._state=1,this.sectionStart=this._index+1)},K.prototype.stateBeforeAttributeName=function(j){j===">"?(this.cbs.onopentagend(),this._state=1,this.sectionStart=this._index+1):j==="/"?this._state=4:i(j)||(this._state=9,this.sectionStart=this._index)},K.prototype.stateInSelfClosingTag=function(j){j===">"?(this.cbs.onselfclosingtag(),this._state=1,this.sectionStart=this._index+1,this.special=1):i(j)||(this._state=8,this._index--)},K.prototype.stateInAttributeName=function(j){(j==="="||j==="/"||j===">"||i(j))&&(this.cbs.onattribname(this.getSection()),this.sectionStart=-1,this._state=10,this._index--)},K.prototype.stateAfterAttributeName=function(j){j==="="?this._state=11:j==="/"||j===">"?(this.cbs.onattribend(void 0),this._state=8,this._index--):i(j)||(this.cbs.onattribend(void 0),this._state=9,this.sectionStart=this._index)},K.prototype.stateBeforeAttributeValue=function(j){j==='"'?(this._state=12,this.sectionStart=this._index+1):j==="'"?(this._state=13,this.sectionStart=this._index+1):i(j)||(this._state=14,this.sectionStart=this._index,this._index--)},K.prototype.handleInAttributeValue=function(j,ue){j===ue?(this.emitToken("onattribdata"),this.cbs.onattribend(ue),this._state=8):this.decodeEntities&&j==="&"&&(this.emitToken("onattribdata"),this.baseState=this._state,this._state=62,this.sectionStart=this._index)},K.prototype.stateInAttributeValueDoubleQuotes=function(j){this.handleInAttributeValue(j,'"')},K.prototype.stateInAttributeValueSingleQuotes=function(j){this.handleInAttributeValue(j,"'")},K.prototype.stateInAttributeValueNoQuotes=function(j){i(j)||j===">"?(this.emitToken("onattribdata"),this.cbs.onattribend(null),this._state=8,this._index--):this.decodeEntities&&j==="&"&&(this.emitToken("onattribdata"),this.baseState=this._state,this._state=62,this.sectionStart=this._index)},K.prototype.stateBeforeDeclaration=function(j){this._state=j==="["?23:j==="-"?18:16},K.prototype.stateInDeclaration=function(j){j===">"&&(this.cbs.ondeclaration(this.getSection()),this._state=1,this.sectionStart=this._index+1)},K.prototype.stateInProcessingInstruction=function(j){j===">"&&(this.cbs.onprocessinginstruction(this.getSection()),this._state=1,this.sectionStart=this._index+1)},K.prototype.stateBeforeComment=function(j){j==="-"?(this._state=19,this.sectionStart=this._index+1):this._state=16},K.prototype.stateInComment=function(j){j==="-"&&(this._state=21)},K.prototype.stateInSpecialComment=function(j){j===">"&&(this.cbs.oncomment(this.buffer.substring(this.sectionStart,this._index)),this._state=1,this.sectionStart=this._index+1)},K.prototype.stateAfterComment1=function(j){j==="-"?this._state=22:this._state=19},K.prototype.stateAfterComment2=function(j){j===">"?(this.cbs.oncomment(this.buffer.substring(this.sectionStart,this._index-2)),this._state=1,this.sectionStart=this._index+1):j!=="-"&&(this._state=19)},K.prototype.stateBeforeCdata6=function(j){j==="["?(this._state=29,this.sectionStart=this._index+1):(this._state=16,this._index--)},K.prototype.stateInCdata=function(j){j==="]"&&(this._state=30)},K.prototype.stateAfterCdata1=function(j){j==="]"?this._state=31:this._state=29},K.prototype.stateAfterCdata2=function(j){j===">"?(this.cbs.oncdata(this.buffer.substring(this.sectionStart,this._index-2)),this._state=1,this.sectionStart=this._index+1):j!=="]"&&(this._state=29)},K.prototype.stateBeforeSpecialS=function(j){j==="c"||j==="C"?this._state=34:j==="t"||j==="T"?this._state=44:(this._state=3,this._index--)},K.prototype.stateBeforeSpecialSEnd=function(j){this.special===2&&(j==="c"||j==="C")?this._state=39:this.special===3&&(j==="t"||j==="T")?this._state=48:this._state=1},K.prototype.stateBeforeSpecialLast=function(j,ue){(j==="/"||j===">"||i(j))&&(this.special=ue),this._state=3,this._index--},K.prototype.stateAfterSpecialLast=function(j,ue){j===">"||i(j)?(this.special=1,this._state=6,this.sectionStart=this._index-ue,this._index--):this._state=1},K.prototype.parseFixedEntity=function(j){if(j===void 0&&(j=this.xmlMode?r.default:n.default),this.sectionStart+1=2;){var pe=this.buffer.substr(j,ue);if(Object.prototype.hasOwnProperty.call(o.default,pe)){this.emitPartial(o.default[pe]),this.sectionStart+=ue+1;return}ue--}},K.prototype.stateInNamedEntity=function(j){j===";"?(this.parseFixedEntity(),this.baseState===1&&this.sectionStart+1"9")&&!s(j)&&(this.xmlMode||this.sectionStart+1===this._index||(this.baseState!==1?j!=="="&&this.parseFixedEntity(o.default):this.parseLegacyEntity()),this._state=this.baseState,this._index--)},K.prototype.decodeNumericEntity=function(j,ue,pe){var z=this.sectionStart+j;if(z!==this._index){var te=this.buffer.substring(z,this._index),ae=parseInt(te,ue);this.emitPartial(e.default(ae)),this.sectionStart=pe?this._index+1:this._index}this._state=this.baseState},K.prototype.stateInNumericEntity=function(j){j===";"?this.decodeNumericEntity(2,10,!0):(j<"0"||j>"9")&&(this.xmlMode?this._state=this.baseState:this.decodeNumericEntity(2,10,!1),this._index--)},K.prototype.stateInHexEntity=function(j){j===";"?this.decodeNumericEntity(3,16,!0):(j<"a"||j>"f")&&(j<"A"||j>"F")&&(j<"0"||j>"9")&&(this.xmlMode?this._state=this.baseState:this.decodeNumericEntity(3,16,!1),this._index--)},K.prototype.cleanup=function(){this.sectionStart<0?(this.buffer="",this.bufferOffset+=this._index,this._index=0):this.running&&(this._state===1?(this.sectionStart!==this._index&&this.cbs.ontext(this.buffer.substr(this.sectionStart)),this.buffer="",this.bufferOffset+=this._index,this._index=0):this.sectionStart===this._index?(this.buffer="",this.bufferOffset+=this._index,this._index=0):(this.buffer=this.buffer.substr(this.sectionStart),this._index-=this.sectionStart,this.bufferOffset+=this.sectionStart),this.sectionStart=0)},K.prototype.parse=function(){for(;this._index0&&r[d].has(h=this.stack[this.stack.length-1]);)this.onclosetag(h);(this.options.xmlMode||!i.has(d))&&(this.stack.push(d),s.has(d)?this.foreignContext.push(!0):a.has(d)&&this.foreignContext.push(!1)),(T=(f=this.cbs).onopentagname)===null||T===void 0||T.call(f,d),this.cbs.onopentag&&(this.attribs={})},u.prototype.onopentagend=function(){var d,f;this.updatePosition(1),this.attribs&&((f=(d=this.cbs).onopentag)===null||f===void 0||f.call(d,this.tagname,this.attribs),this.attribs=null),!this.options.xmlMode&&this.cbs.onclosetag&&i.has(this.tagname)&&this.cbs.onclosetag(this.tagname),this.tagname=""},u.prototype.onclosetag=function(d){if(this.updatePosition(1),this.lowerCaseTagNames&&(d=d.toLowerCase()),(s.has(d)||a.has(d))&&this.foreignContext.pop(),this.stack.length&&(this.options.xmlMode||!i.has(d))){var f=this.stack.lastIndexOf(d);if(f!==-1)if(this.cbs.onclosetag)for(f=this.stack.length-f;f--;)this.cbs.onclosetag(this.stack.pop());else this.stack.length=f;else d==="p"&&!this.options.xmlMode&&(this.onopentagname(d),this.closeCurrentTag())}else!this.options.xmlMode&&(d==="br"||d==="p")&&(this.onopentagname(d),this.closeCurrentTag())},u.prototype.onselfclosingtag=function(){this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?this.closeCurrentTag():this.onopentagend()},u.prototype.closeCurrentTag=function(){var d,f,T=this.tagname;this.onopentagend(),this.stack[this.stack.length-1]===T&&((f=(d=this.cbs).onclosetag)===null||f===void 0||f.call(d,T),this.stack.pop())},u.prototype.onattribname=function(d){this.lowerCaseAttributeNames&&(d=d.toLowerCase()),this.attribname=d},u.prototype.onattribdata=function(d){this.attribvalue+=d},u.prototype.onattribend=function(d){var f,T;(T=(f=this.cbs).onattribute)===null||T===void 0||T.call(f,this.attribname,this.attribvalue,d),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribname="",this.attribvalue=""},u.prototype.getInstructionName=function(d){var f=d.search(l),T=f<0?d:d.substr(0,f);return this.lowerCaseTagNames&&(T=T.toLowerCase()),T},u.prototype.ondeclaration=function(d){if(this.cbs.onprocessinginstruction){var f=this.getInstructionName(d);this.cbs.onprocessinginstruction("!"+f,"!"+d)}},u.prototype.onprocessinginstruction=function(d){if(this.cbs.onprocessinginstruction){var f=this.getInstructionName(d);this.cbs.onprocessinginstruction("?"+f,"?"+d)}},u.prototype.oncomment=function(d){var f,T,h,g;this.updatePosition(4),(T=(f=this.cbs).oncomment)===null||T===void 0||T.call(f,d),(g=(h=this.cbs).oncommentend)===null||g===void 0||g.call(h)},u.prototype.oncdata=function(d){var f,T,h,g,Q,m;this.updatePosition(1),this.options.xmlMode||this.options.recognizeCDATA?((T=(f=this.cbs).oncdatastart)===null||T===void 0||T.call(f),(g=(h=this.cbs).ontext)===null||g===void 0||g.call(h,d),(m=(Q=this.cbs).oncdataend)===null||m===void 0||m.call(Q)):this.oncomment("[CDATA["+d+"]]")},u.prototype.onerror=function(d){var f,T;(T=(f=this.cbs).onerror)===null||T===void 0||T.call(f,d)},u.prototype.onend=function(){var d,f;if(this.cbs.onclosetag)for(var T=this.stack.length;T>0;this.cbs.onclosetag(this.stack[--T]));(f=(d=this.cbs).onend)===null||f===void 0||f.call(d)},u.prototype.reset=function(){var d,f,T,h;(f=(d=this.cbs).onreset)===null||f===void 0||f.call(d),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack=[],(h=(T=this.cbs).onparserinit)===null||h===void 0||h.call(T,this)},u.prototype.parseComplete=function(d){this.reset(),this.end(d)},u.prototype.write=function(d){this.tokenizer.write(d)},u.prototype.end=function(d){this.tokenizer.end(d)},u.prototype.pause=function(){this.tokenizer.pause()},u.prototype.resume=function(){this.tokenizer.resume()},u.prototype.parseChunk=function(d){this.write(d)},u.prototype.done=function(d){this.end(d)},u}();return f2.Parser=c,f2}var Zn={},Tw;function fw(){if(Tw)return Zn;Tw=1;var t=Zn&&Zn.__extends||function(){var v=function(b,y){return v=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(E,x){E.__proto__=x}||function(E,x){for(var L in x)Object.prototype.hasOwnProperty.call(x,L)&&(E[L]=x[L])},v(b,y)};return function(b,y){if(typeof y!="function"&&y!==null)throw new TypeError("Class extends value "+String(y)+" is not a constructor or null");v(b,y);function E(){this.constructor=b}b.prototype=y===null?Object.create(y):(E.prototype=y.prototype,new E)}}(),e=Zn&&Zn.__createBinding||(Object.create?function(v,b,y,E){E===void 0&&(E=y),Object.defineProperty(v,E,{enumerable:!0,get:function(){return b[y]}})}:function(v,b,y,E){E===void 0&&(E=y),v[E]=b[y]}),n=Zn&&Zn.__setModuleDefault||(Object.create?function(v,b){Object.defineProperty(v,"default",{enumerable:!0,value:b})}:function(v,b){v.default=b}),o=Zn&&Zn.__importStar||function(v){if(v&&v.__esModule)return v;var b={};if(v!=null)for(var y in v)y!=="default"&&Object.prototype.hasOwnProperty.call(v,y)&&e(b,v,y);return n(b,v),b},r=Zn&&Zn.__importDefault||function(v){return v&&v.__esModule?v:{default:v}};Object.defineProperty(Zn,"__esModule",{value:!0}),Zn.parseFeed=Zn.FeedHandler=void 0;var i=r(jr()),s=o(g0()),a=qI(),l;(function(v){v[v.image=0]="image",v[v.audio=1]="audio",v[v.video=2]="video",v[v.document=3]="document",v[v.executable=4]="executable"})(l||(l={}));var c;(function(v){v[v.sample=0]="sample",v[v.full=1]="full",v[v.nonstop=2]="nonstop"})(c||(c={}));var u=function(v){t(b,v);function b(y,E){var x=this;return typeof y=="object"&&(y=void 0,E=y),x=v.call(this,y,E)||this,x}return b.prototype.onend=function(){var y,E,x=T(m,this.dom);if(!x){this.handleCallback(new Error("couldn't find root of feed"));return}var L={};if(x.name==="feed"){var C=x.children;L.type="atom",Q(L,"id","id",C),Q(L,"title","title",C);var A=g("href",T("link",C));A&&(L.link=A),Q(L,"description","subtitle",C);var O=h("updated",C);O&&(L.updated=new Date(O)),Q(L,"author","email",C,!0),L.items=f("entry",C).map(function(R){var I={},M=R.children;Q(I,"id","id",M),Q(I,"title","title",M);var $=g("href",T("link",M));$&&(I.link=$);var U=h("summary",M)||h("content",M);U&&(I.description=U);var G=h("updated",M);return G&&(I.pubDate=new Date(G)),I.media=d(M),I})}else{var C=(E=(y=T("channel",x.children))===null||y===void 0?void 0:y.children)!==null&&E!==void 0?E:[];L.type=x.name.substr(0,3),L.id="",Q(L,"title","title",C),Q(L,"link","link",C),Q(L,"description","description",C);var O=h("lastBuildDate",C);O&&(L.updated=new Date(O)),Q(L,"author","managingEditor",C,!0),L.items=f("item",x.children).map(function(M){var $={},U=M.children;Q($,"id","guid",U),Q($,"title","title",U),Q($,"link","link",U),Q($,"description","description",U);var G=h("pubDate",U);return G&&($.pubDate=new Date(G)),$.media=d(U),$})}this.feed=L,this.handleCallback(null)},b}(i.default);Zn.FeedHandler=u;function d(v){return f("media:content",v).map(function(b){var y={medium:b.attribs.medium,isDefault:!!b.attribs.isDefault};return b.attribs.url&&(y.url=b.attribs.url),b.attribs.fileSize&&(y.fileSize=parseInt(b.attribs.fileSize,10)),b.attribs.type&&(y.type=b.attribs.type),b.attribs.expression&&(y.expression=b.attribs.expression),b.attribs.bitrate&&(y.bitrate=parseInt(b.attribs.bitrate,10)),b.attribs.framerate&&(y.framerate=parseInt(b.attribs.framerate,10)),b.attribs.samplingrate&&(y.samplingrate=parseInt(b.attribs.samplingrate,10)),b.attribs.channels&&(y.channels=parseInt(b.attribs.channels,10)),b.attribs.duration&&(y.duration=parseInt(b.attribs.duration,10)),b.attribs.height&&(y.height=parseInt(b.attribs.height,10)),b.attribs.width&&(y.width=parseInt(b.attribs.width,10)),b.attribs.lang&&(y.lang=b.attribs.lang),y})}function f(v,b){return s.getElementsByTagName(v,b,!0)}function T(v,b){return s.getElementsByTagName(v,b,!0,1)[0]}function h(v,b,y){return y===void 0&&(y=!1),s.getText(s.getElementsByTagName(v,b,y,1)).trim()}function g(v,b){if(!b)return null;var y=b.attribs;return y[v]}function Q(v,b,y,E,x){x===void 0&&(x=!1);var L=h(y,E,x);L&&(v[b]=L)}function m(v){return v==="rss"||v==="feed"||v==="rdf:RDF"}function _(v,b){b===void 0&&(b={xmlMode:!0});var y=new u(b);return new a.Parser(y,b).end(v),y.feed}return Zn.parseFeed=_,Zn}var pw;function Fl(){return pw||(pw=1,function(t){var e=Ei&&Ei.__createBinding||(Object.create?function(h,g,Q,m){m===void 0&&(m=Q),Object.defineProperty(h,m,{enumerable:!0,get:function(){return g[Q]}})}:function(h,g,Q,m){m===void 0&&(m=Q),h[m]=g[Q]}),n=Ei&&Ei.__setModuleDefault||(Object.create?function(h,g){Object.defineProperty(h,"default",{enumerable:!0,value:g})}:function(h,g){h.default=g}),o=Ei&&Ei.__importStar||function(h){if(h&&h.__esModule)return h;var g={};if(h!=null)for(var Q in h)Q!=="default"&&Object.prototype.hasOwnProperty.call(h,Q)&&e(g,h,Q);return n(g,h),g},r=Ei&&Ei.__exportStar||function(h,g){for(var Q in h)Q!=="default"&&!Object.prototype.hasOwnProperty.call(g,Q)&&e(g,h,Q)},i=Ei&&Ei.__importDefault||function(h){return h&&h.__esModule?h:{default:h}};Object.defineProperty(t,"__esModule",{value:!0}),t.RssHandler=t.DefaultHandler=t.DomUtils=t.ElementType=t.Tokenizer=t.createDomStream=t.parseDOM=t.parseDocument=t.DomHandler=t.Parser=void 0;var s=qI();Object.defineProperty(t,"Parser",{enumerable:!0,get:function(){return s.Parser}});var a=jr();Object.defineProperty(t,"DomHandler",{enumerable:!0,get:function(){return a.DomHandler}}),Object.defineProperty(t,"DefaultHandler",{enumerable:!0,get:function(){return a.DomHandler}});function l(h,g){var Q=new a.DomHandler(void 0,g);return new s.Parser(Q,g).end(h),Q.root}t.parseDocument=l;function c(h,g){return l(h,g).children}t.parseDOM=c;function u(h,g,Q){var m=new a.DomHandler(h,g,Q);return new s.Parser(m,g)}t.createDomStream=u;var d=UI();Object.defineProperty(t,"Tokenizer",{enumerable:!0,get:function(){return i(d).default}});var f=o(Xc());t.ElementType=f,r(fw(),t),t.DomUtils=o(g0());var T=fw();Object.defineProperty(t,"RssHandler",{enumerable:!0,get:function(){return T.FeedHandler}})}(Ei)),Ei}var p2={},X4={},Ko={},hw;function th(){if(hw)return Ko;hw=1;const t=[65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111];return Ko.REPLACEMENT_CHARACTER="�",Ko.CODE_POINTS={EOF:-1,NULL:0,TABULATION:9,CARRIAGE_RETURN:13,LINE_FEED:10,FORM_FEED:12,SPACE:32,EXCLAMATION_MARK:33,QUOTATION_MARK:34,NUMBER_SIGN:35,AMPERSAND:38,APOSTROPHE:39,HYPHEN_MINUS:45,SOLIDUS:47,DIGIT_0:48,DIGIT_9:57,SEMICOLON:59,LESS_THAN_SIGN:60,EQUALS_SIGN:61,GREATER_THAN_SIGN:62,QUESTION_MARK:63,LATIN_CAPITAL_A:65,LATIN_CAPITAL_F:70,LATIN_CAPITAL_X:88,LATIN_CAPITAL_Z:90,RIGHT_SQUARE_BRACKET:93,GRAVE_ACCENT:96,LATIN_SMALL_A:97,LATIN_SMALL_F:102,LATIN_SMALL_X:120,LATIN_SMALL_Z:122,REPLACEMENT_CHARACTER:65533},Ko.CODE_POINT_SEQUENCES={DASH_DASH_STRING:[45,45],DOCTYPE_STRING:[68,79,67,84,89,80,69],CDATA_START_STRING:[91,67,68,65,84,65,91],SCRIPT_STRING:[115,99,114,105,112,116],PUBLIC_STRING:[80,85,66,76,73,67],SYSTEM_STRING:[83,89,83,84,69,77]},Ko.isSurrogate=function(e){return e>=55296&&e<=57343},Ko.isSurrogatePair=function(e){return e>=56320&&e<=57343},Ko.getSurrogatePairCodePoint=function(e,n){return(e-55296)*1024+9216+n},Ko.isControlCodePoint=function(e){return e!==32&&e!==10&&e!==13&&e!==9&&e!==12&&e>=1&&e<=31||e>=127&&e<=159},Ko.isUndefinedCodePoint=function(e){return e>=64976&&e<=65007||t.indexOf(e)>-1},Ko}var yT,mw;function nh(){return mw||(mw=1,yT={controlCharacterInInputStream:"control-character-in-input-stream",noncharacterInInputStream:"noncharacter-in-input-stream",surrogateInInputStream:"surrogate-in-input-stream",nonVoidHtmlElementStartTagWithTrailingSolidus:"non-void-html-element-start-tag-with-trailing-solidus",endTagWithAttributes:"end-tag-with-attributes",endTagWithTrailingSolidus:"end-tag-with-trailing-solidus",unexpectedSolidusInTag:"unexpected-solidus-in-tag",unexpectedNullCharacter:"unexpected-null-character",unexpectedQuestionMarkInsteadOfTagName:"unexpected-question-mark-instead-of-tag-name",invalidFirstCharacterOfTagName:"invalid-first-character-of-tag-name",unexpectedEqualsSignBeforeAttributeName:"unexpected-equals-sign-before-attribute-name",missingEndTagName:"missing-end-tag-name",unexpectedCharacterInAttributeName:"unexpected-character-in-attribute-name",unknownNamedCharacterReference:"unknown-named-character-reference",missingSemicolonAfterCharacterReference:"missing-semicolon-after-character-reference",unexpectedCharacterAfterDoctypeSystemIdentifier:"unexpected-character-after-doctype-system-identifier",unexpectedCharacterInUnquotedAttributeValue:"unexpected-character-in-unquoted-attribute-value",eofBeforeTagName:"eof-before-tag-name",eofInTag:"eof-in-tag",missingAttributeValue:"missing-attribute-value",missingWhitespaceBetweenAttributes:"missing-whitespace-between-attributes",missingWhitespaceAfterDoctypePublicKeyword:"missing-whitespace-after-doctype-public-keyword",missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers:"missing-whitespace-between-doctype-public-and-system-identifiers",missingWhitespaceAfterDoctypeSystemKeyword:"missing-whitespace-after-doctype-system-keyword",missingQuoteBeforeDoctypePublicIdentifier:"missing-quote-before-doctype-public-identifier",missingQuoteBeforeDoctypeSystemIdentifier:"missing-quote-before-doctype-system-identifier",missingDoctypePublicIdentifier:"missing-doctype-public-identifier",missingDoctypeSystemIdentifier:"missing-doctype-system-identifier",abruptDoctypePublicIdentifier:"abrupt-doctype-public-identifier",abruptDoctypeSystemIdentifier:"abrupt-doctype-system-identifier",cdataInHtmlContent:"cdata-in-html-content",incorrectlyOpenedComment:"incorrectly-opened-comment",eofInScriptHtmlCommentLikeText:"eof-in-script-html-comment-like-text",eofInDoctype:"eof-in-doctype",nestedComment:"nested-comment",abruptClosingOfEmptyComment:"abrupt-closing-of-empty-comment",eofInComment:"eof-in-comment",incorrectlyClosedComment:"incorrectly-closed-comment",eofInCdata:"eof-in-cdata",absenceOfDigitsInNumericCharacterReference:"absence-of-digits-in-numeric-character-reference",nullCharacterReference:"null-character-reference",surrogateCharacterReference:"surrogate-character-reference",characterReferenceOutsideUnicodeRange:"character-reference-outside-unicode-range",controlCharacterReference:"control-character-reference",noncharacterCharacterReference:"noncharacter-character-reference",missingWhitespaceBeforeDoctypeName:"missing-whitespace-before-doctype-name",missingDoctypeName:"missing-doctype-name",invalidCharacterSequenceAfterDoctypeName:"invalid-character-sequence-after-doctype-name",duplicateAttribute:"duplicate-attribute",nonConformingDoctype:"non-conforming-doctype",missingDoctype:"missing-doctype",misplacedDoctype:"misplaced-doctype",endTagWithoutMatchingOpenElement:"end-tag-without-matching-open-element",closingOfElementWithOpenChildElements:"closing-of-element-with-open-child-elements",disallowedContentInNoscriptInHead:"disallowed-content-in-noscript-in-head",openElementsLeftAfterEof:"open-elements-left-after-eof",abandonedHeadElementChild:"abandoned-head-element-child",misplacedStartTagForHeadElement:"misplaced-start-tag-for-head-element",nestedNoscriptInHead:"nested-noscript-in-head",eofInElementThatCanContainOnlyText:"eof-in-element-that-can-contain-only-text"}),yT}var bT,gw;function Ovn(){if(gw)return bT;gw=1;const t=th(),e=nh(),n=t.CODE_POINTS,o=65536;class r{constructor(){this.html=null,this.pos=-1,this.lastGapPos=-1,this.lastCharPos=-1,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=o}_err(){}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(s){if(this.pos!==this.lastCharPos){const a=this.html.charCodeAt(this.pos+1);if(t.isSurrogatePair(a))return this.pos++,this._addGap(),t.getSurrogatePairCodePoint(s,a)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,n.EOF;return this._err(e.surrogateInInputStream),s}dropParsedChunk(){this.pos>this.bufferWaterline&&(this.lastCharPos-=this.pos,this.html=this.html.substring(this.pos),this.pos=0,this.lastGapPos=-1,this.gapStack=[])}write(s,a){this.html?this.html+=s:this.html=s,this.lastCharPos=this.html.length-1,this.endOfChunkHit=!1,this.lastChunkWritten=a}insertHtmlAtCurrentPos(s){this.html=this.html.substring(0,this.pos+1)+s+this.html.substring(this.pos+1,this.html.length),this.lastCharPos=this.html.length-1,this.endOfChunkHit=!1}advance(){if(this.pos++,this.pos>this.lastCharPos)return this.endOfChunkHit=!this.lastChunkWritten,n.EOF;let s=this.html.charCodeAt(this.pos);return this.skipNextNewLine&&s===n.LINE_FEED?(this.skipNextNewLine=!1,this._addGap(),this.advance()):s===n.CARRIAGE_RETURN?(this.skipNextNewLine=!0,n.LINE_FEED):(this.skipNextNewLine=!1,t.isSurrogate(s)&&(s=this._processSurrogate(s)),s>31&&s<127||s===n.LINE_FEED||s===n.CARRIAGE_RETURN||s>159&&s<64976||this._checkForProblematicCharacters(s),s)}_checkForProblematicCharacters(s){t.isControlCodePoint(s)?this._err(e.controlCharacterInInputStream):t.isUndefinedCodePoint(s)&&this._err(e.noncharacterInInputStream)}retreat(){this.pos===this.lastGapPos&&(this.lastGapPos=this.gapStack.pop(),this.pos--),this.pos--}}return bT=r,bT}var ET,_w;function Mvn(){return _w||(_w=1,ET=new Uint16Array([4,52,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,106,303,412,810,1432,1701,1796,1987,2114,2360,2420,2484,3170,3251,4140,4393,4575,4610,5106,5512,5728,6117,6274,6315,6345,6427,6516,7002,7910,8733,9323,9870,10170,10631,10893,11318,11386,11467,12773,13092,14474,14922,15448,15542,16419,17666,18166,18611,19004,19095,19298,19397,4,16,69,77,97,98,99,102,103,108,109,110,111,112,114,115,116,117,140,150,158,169,176,194,199,210,216,222,226,242,256,266,283,294,108,105,103,5,198,1,59,148,1,198,80,5,38,1,59,156,1,38,99,117,116,101,5,193,1,59,167,1,193,114,101,118,101,59,1,258,4,2,105,121,182,191,114,99,5,194,1,59,189,1,194,59,1,1040,114,59,3,55349,56580,114,97,118,101,5,192,1,59,208,1,192,112,104,97,59,1,913,97,99,114,59,1,256,100,59,1,10835,4,2,103,112,232,237,111,110,59,1,260,102,59,3,55349,56632,112,108,121,70,117,110,99,116,105,111,110,59,1,8289,105,110,103,5,197,1,59,264,1,197,4,2,99,115,272,277,114,59,3,55349,56476,105,103,110,59,1,8788,105,108,100,101,5,195,1,59,292,1,195,109,108,5,196,1,59,301,1,196,4,8,97,99,101,102,111,114,115,117,321,350,354,383,388,394,400,405,4,2,99,114,327,336,107,115,108,97,115,104,59,1,8726,4,2,118,119,342,345,59,1,10983,101,100,59,1,8966,121,59,1,1041,4,3,99,114,116,362,369,379,97,117,115,101,59,1,8757,110,111,117,108,108,105,115,59,1,8492,97,59,1,914,114,59,3,55349,56581,112,102,59,3,55349,56633,101,118,101,59,1,728,99,114,59,1,8492,109,112,101,113,59,1,8782,4,14,72,79,97,99,100,101,102,104,105,108,111,114,115,117,442,447,456,504,542,547,569,573,577,616,678,784,790,796,99,121,59,1,1063,80,89,5,169,1,59,454,1,169,4,3,99,112,121,464,470,497,117,116,101,59,1,262,4,2,59,105,476,478,1,8914,116,97,108,68,105,102,102,101,114,101,110,116,105,97,108,68,59,1,8517,108,101,121,115,59,1,8493,4,4,97,101,105,111,514,520,530,535,114,111,110,59,1,268,100,105,108,5,199,1,59,528,1,199,114,99,59,1,264,110,105,110,116,59,1,8752,111,116,59,1,266,4,2,100,110,553,560,105,108,108,97,59,1,184,116,101,114,68,111,116,59,1,183,114,59,1,8493,105,59,1,935,114,99,108,101,4,4,68,77,80,84,591,596,603,609,111,116,59,1,8857,105,110,117,115,59,1,8854,108,117,115,59,1,8853,105,109,101,115,59,1,8855,111,4,2,99,115,623,646,107,119,105,115,101,67,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8754,101,67,117,114,108,121,4,2,68,81,658,671,111,117,98,108,101,81,117,111,116,101,59,1,8221,117,111,116,101,59,1,8217,4,4,108,110,112,117,688,701,736,753,111,110,4,2,59,101,696,698,1,8759,59,1,10868,4,3,103,105,116,709,717,722,114,117,101,110,116,59,1,8801,110,116,59,1,8751,111,117,114,73,110,116,101,103,114,97,108,59,1,8750,4,2,102,114,742,745,59,1,8450,111,100,117,99,116,59,1,8720,110,116,101,114,67,108,111,99,107,119,105,115,101,67,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8755,111,115,115,59,1,10799,99,114,59,3,55349,56478,112,4,2,59,67,803,805,1,8915,97,112,59,1,8781,4,11,68,74,83,90,97,99,101,102,105,111,115,834,850,855,860,865,888,903,916,921,1011,1415,4,2,59,111,840,842,1,8517,116,114,97,104,100,59,1,10513,99,121,59,1,1026,99,121,59,1,1029,99,121,59,1,1039,4,3,103,114,115,873,879,883,103,101,114,59,1,8225,114,59,1,8609,104,118,59,1,10980,4,2,97,121,894,900,114,111,110,59,1,270,59,1,1044,108,4,2,59,116,910,912,1,8711,97,59,1,916,114,59,3,55349,56583,4,2,97,102,927,998,4,2,99,109,933,992,114,105,116,105,99,97,108,4,4,65,68,71,84,950,957,978,985,99,117,116,101,59,1,180,111,4,2,116,117,964,967,59,1,729,98,108,101,65,99,117,116,101,59,1,733,114,97,118,101,59,1,96,105,108,100,101,59,1,732,111,110,100,59,1,8900,102,101,114,101,110,116,105,97,108,68,59,1,8518,4,4,112,116,117,119,1021,1026,1048,1249,102,59,3,55349,56635,4,3,59,68,69,1034,1036,1041,1,168,111,116,59,1,8412,113,117,97,108,59,1,8784,98,108,101,4,6,67,68,76,82,85,86,1065,1082,1101,1189,1211,1236,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8751,111,4,2,116,119,1089,1092,59,1,168,110,65,114,114,111,119,59,1,8659,4,2,101,111,1107,1141,102,116,4,3,65,82,84,1117,1124,1136,114,114,111,119,59,1,8656,105,103,104,116,65,114,114,111,119,59,1,8660,101,101,59,1,10980,110,103,4,2,76,82,1149,1177,101,102,116,4,2,65,82,1158,1165,114,114,111,119,59,1,10232,105,103,104,116,65,114,114,111,119,59,1,10234,105,103,104,116,65,114,114,111,119,59,1,10233,105,103,104,116,4,2,65,84,1199,1206,114,114,111,119,59,1,8658,101,101,59,1,8872,112,4,2,65,68,1218,1225,114,114,111,119,59,1,8657,111,119,110,65,114,114,111,119,59,1,8661,101,114,116,105,99,97,108,66,97,114,59,1,8741,110,4,6,65,66,76,82,84,97,1264,1292,1299,1352,1391,1408,114,114,111,119,4,3,59,66,85,1276,1278,1283,1,8595,97,114,59,1,10515,112,65,114,114,111,119,59,1,8693,114,101,118,101,59,1,785,101,102,116,4,3,82,84,86,1310,1323,1334,105,103,104,116,86,101,99,116,111,114,59,1,10576,101,101,86,101,99,116,111,114,59,1,10590,101,99,116,111,114,4,2,59,66,1345,1347,1,8637,97,114,59,1,10582,105,103,104,116,4,2,84,86,1362,1373,101,101,86,101,99,116,111,114,59,1,10591,101,99,116,111,114,4,2,59,66,1384,1386,1,8641,97,114,59,1,10583,101,101,4,2,59,65,1399,1401,1,8868,114,114,111,119,59,1,8615,114,114,111,119,59,1,8659,4,2,99,116,1421,1426,114,59,3,55349,56479,114,111,107,59,1,272,4,16,78,84,97,99,100,102,103,108,109,111,112,113,115,116,117,120,1466,1470,1478,1489,1515,1520,1525,1536,1544,1593,1609,1617,1650,1664,1668,1677,71,59,1,330,72,5,208,1,59,1476,1,208,99,117,116,101,5,201,1,59,1487,1,201,4,3,97,105,121,1497,1503,1512,114,111,110,59,1,282,114,99,5,202,1,59,1510,1,202,59,1,1069,111,116,59,1,278,114,59,3,55349,56584,114,97,118,101,5,200,1,59,1534,1,200,101,109,101,110,116,59,1,8712,4,2,97,112,1550,1555,99,114,59,1,274,116,121,4,2,83,86,1563,1576,109,97,108,108,83,113,117,97,114,101,59,1,9723,101,114,121,83,109,97,108,108,83,113,117,97,114,101,59,1,9643,4,2,103,112,1599,1604,111,110,59,1,280,102,59,3,55349,56636,115,105,108,111,110,59,1,917,117,4,2,97,105,1624,1640,108,4,2,59,84,1631,1633,1,10869,105,108,100,101,59,1,8770,108,105,98,114,105,117,109,59,1,8652,4,2,99,105,1656,1660,114,59,1,8496,109,59,1,10867,97,59,1,919,109,108,5,203,1,59,1675,1,203,4,2,105,112,1683,1689,115,116,115,59,1,8707,111,110,101,110,116,105,97,108,69,59,1,8519,4,5,99,102,105,111,115,1713,1717,1722,1762,1791,121,59,1,1060,114,59,3,55349,56585,108,108,101,100,4,2,83,86,1732,1745,109,97,108,108,83,113,117,97,114,101,59,1,9724,101,114,121,83,109,97,108,108,83,113,117,97,114,101,59,1,9642,4,3,112,114,117,1770,1775,1781,102,59,3,55349,56637,65,108,108,59,1,8704,114,105,101,114,116,114,102,59,1,8497,99,114,59,1,8497,4,12,74,84,97,98,99,100,102,103,111,114,115,116,1822,1827,1834,1848,1855,1877,1882,1887,1890,1896,1978,1984,99,121,59,1,1027,5,62,1,59,1832,1,62,109,109,97,4,2,59,100,1843,1845,1,915,59,1,988,114,101,118,101,59,1,286,4,3,101,105,121,1863,1869,1874,100,105,108,59,1,290,114,99,59,1,284,59,1,1043,111,116,59,1,288,114,59,3,55349,56586,59,1,8921,112,102,59,3,55349,56638,101,97,116,101,114,4,6,69,70,71,76,83,84,1915,1933,1944,1953,1959,1971,113,117,97,108,4,2,59,76,1925,1927,1,8805,101,115,115,59,1,8923,117,108,108,69,113,117,97,108,59,1,8807,114,101,97,116,101,114,59,1,10914,101,115,115,59,1,8823,108,97,110,116,69,113,117,97,108,59,1,10878,105,108,100,101,59,1,8819,99,114,59,3,55349,56482,59,1,8811,4,8,65,97,99,102,105,111,115,117,2005,2012,2026,2032,2036,2049,2073,2089,82,68,99,121,59,1,1066,4,2,99,116,2018,2023,101,107,59,1,711,59,1,94,105,114,99,59,1,292,114,59,1,8460,108,98,101,114,116,83,112,97,99,101,59,1,8459,4,2,112,114,2055,2059,102,59,1,8461,105,122,111,110,116,97,108,76,105,110,101,59,1,9472,4,2,99,116,2079,2083,114,59,1,8459,114,111,107,59,1,294,109,112,4,2,68,69,2097,2107,111,119,110,72,117,109,112,59,1,8782,113,117,97,108,59,1,8783,4,14,69,74,79,97,99,100,102,103,109,110,111,115,116,117,2144,2149,2155,2160,2171,2189,2194,2198,2209,2245,2307,2329,2334,2341,99,121,59,1,1045,108,105,103,59,1,306,99,121,59,1,1025,99,117,116,101,5,205,1,59,2169,1,205,4,2,105,121,2177,2186,114,99,5,206,1,59,2184,1,206,59,1,1048,111,116,59,1,304,114,59,1,8465,114,97,118,101,5,204,1,59,2207,1,204,4,3,59,97,112,2217,2219,2238,1,8465,4,2,99,103,2225,2229,114,59,1,298,105,110,97,114,121,73,59,1,8520,108,105,101,115,59,1,8658,4,2,116,118,2251,2281,4,2,59,101,2257,2259,1,8748,4,2,103,114,2265,2271,114,97,108,59,1,8747,115,101,99,116,105,111,110,59,1,8898,105,115,105,98,108,101,4,2,67,84,2293,2300,111,109,109,97,59,1,8291,105,109,101,115,59,1,8290,4,3,103,112,116,2315,2320,2325,111,110,59,1,302,102,59,3,55349,56640,97,59,1,921,99,114,59,1,8464,105,108,100,101,59,1,296,4,2,107,109,2347,2352,99,121,59,1,1030,108,5,207,1,59,2358,1,207,4,5,99,102,111,115,117,2372,2386,2391,2397,2414,4,2,105,121,2378,2383,114,99,59,1,308,59,1,1049,114,59,3,55349,56589,112,102,59,3,55349,56641,4,2,99,101,2403,2408,114,59,3,55349,56485,114,99,121,59,1,1032,107,99,121,59,1,1028,4,7,72,74,97,99,102,111,115,2436,2441,2446,2452,2467,2472,2478,99,121,59,1,1061,99,121,59,1,1036,112,112,97,59,1,922,4,2,101,121,2458,2464,100,105,108,59,1,310,59,1,1050,114,59,3,55349,56590,112,102,59,3,55349,56642,99,114,59,3,55349,56486,4,11,74,84,97,99,101,102,108,109,111,115,116,2508,2513,2520,2562,2585,2981,2986,3004,3011,3146,3167,99,121,59,1,1033,5,60,1,59,2518,1,60,4,5,99,109,110,112,114,2532,2538,2544,2548,2558,117,116,101,59,1,313,98,100,97,59,1,923,103,59,1,10218,108,97,99,101,116,114,102,59,1,8466,114,59,1,8606,4,3,97,101,121,2570,2576,2582,114,111,110,59,1,317,100,105,108,59,1,315,59,1,1051,4,2,102,115,2591,2907,116,4,10,65,67,68,70,82,84,85,86,97,114,2614,2663,2672,2728,2735,2760,2820,2870,2888,2895,4,2,110,114,2620,2633,103,108,101,66,114,97,99,107,101,116,59,1,10216,114,111,119,4,3,59,66,82,2644,2646,2651,1,8592,97,114,59,1,8676,105,103,104,116,65,114,114,111,119,59,1,8646,101,105,108,105,110,103,59,1,8968,111,4,2,117,119,2679,2692,98,108,101,66,114,97,99,107,101,116,59,1,10214,110,4,2,84,86,2699,2710,101,101,86,101,99,116,111,114,59,1,10593,101,99,116,111,114,4,2,59,66,2721,2723,1,8643,97,114,59,1,10585,108,111,111,114,59,1,8970,105,103,104,116,4,2,65,86,2745,2752,114,114,111,119,59,1,8596,101,99,116,111,114,59,1,10574,4,2,101,114,2766,2792,101,4,3,59,65,86,2775,2777,2784,1,8867,114,114,111,119,59,1,8612,101,99,116,111,114,59,1,10586,105,97,110,103,108,101,4,3,59,66,69,2806,2808,2813,1,8882,97,114,59,1,10703,113,117,97,108,59,1,8884,112,4,3,68,84,86,2829,2841,2852,111,119,110,86,101,99,116,111,114,59,1,10577,101,101,86,101,99,116,111,114,59,1,10592,101,99,116,111,114,4,2,59,66,2863,2865,1,8639,97,114,59,1,10584,101,99,116,111,114,4,2,59,66,2881,2883,1,8636,97,114,59,1,10578,114,114,111,119,59,1,8656,105,103,104,116,97,114,114,111,119,59,1,8660,115,4,6,69,70,71,76,83,84,2922,2936,2947,2956,2962,2974,113,117,97,108,71,114,101,97,116,101,114,59,1,8922,117,108,108,69,113,117,97,108,59,1,8806,114,101,97,116,101,114,59,1,8822,101,115,115,59,1,10913,108,97,110,116,69,113,117,97,108,59,1,10877,105,108,100,101,59,1,8818,114,59,3,55349,56591,4,2,59,101,2992,2994,1,8920,102,116,97,114,114,111,119,59,1,8666,105,100,111,116,59,1,319,4,3,110,112,119,3019,3110,3115,103,4,4,76,82,108,114,3030,3058,3070,3098,101,102,116,4,2,65,82,3039,3046,114,114,111,119,59,1,10229,105,103,104,116,65,114,114,111,119,59,1,10231,105,103,104,116,65,114,114,111,119,59,1,10230,101,102,116,4,2,97,114,3079,3086,114,114,111,119,59,1,10232,105,103,104,116,97,114,114,111,119,59,1,10234,105,103,104,116,97,114,114,111,119,59,1,10233,102,59,3,55349,56643,101,114,4,2,76,82,3123,3134,101,102,116,65,114,114,111,119,59,1,8601,105,103,104,116,65,114,114,111,119,59,1,8600,4,3,99,104,116,3154,3158,3161,114,59,1,8466,59,1,8624,114,111,107,59,1,321,59,1,8810,4,8,97,99,101,102,105,111,115,117,3188,3192,3196,3222,3227,3237,3243,3248,112,59,1,10501,121,59,1,1052,4,2,100,108,3202,3213,105,117,109,83,112,97,99,101,59,1,8287,108,105,110,116,114,102,59,1,8499,114,59,3,55349,56592,110,117,115,80,108,117,115,59,1,8723,112,102,59,3,55349,56644,99,114,59,1,8499,59,1,924,4,9,74,97,99,101,102,111,115,116,117,3271,3276,3283,3306,3422,3427,4120,4126,4137,99,121,59,1,1034,99,117,116,101,59,1,323,4,3,97,101,121,3291,3297,3303,114,111,110,59,1,327,100,105,108,59,1,325,59,1,1053,4,3,103,115,119,3314,3380,3415,97,116,105,118,101,4,3,77,84,86,3327,3340,3365,101,100,105,117,109,83,112,97,99,101,59,1,8203,104,105,4,2,99,110,3348,3357,107,83,112,97,99,101,59,1,8203,83,112,97,99,101,59,1,8203,101,114,121,84,104,105,110,83,112,97,99,101,59,1,8203,116,101,100,4,2,71,76,3389,3405,114,101,97,116,101,114,71,114,101,97,116,101,114,59,1,8811,101,115,115,76,101,115,115,59,1,8810,76,105,110,101,59,1,10,114,59,3,55349,56593,4,4,66,110,112,116,3437,3444,3460,3464,114,101,97,107,59,1,8288,66,114,101,97,107,105,110,103,83,112,97,99,101,59,1,160,102,59,1,8469,4,13,59,67,68,69,71,72,76,78,80,82,83,84,86,3492,3494,3517,3536,3578,3657,3685,3784,3823,3860,3915,4066,4107,1,10988,4,2,111,117,3500,3510,110,103,114,117,101,110,116,59,1,8802,112,67,97,112,59,1,8813,111,117,98,108,101,86,101,114,116,105,99,97,108,66,97,114,59,1,8742,4,3,108,113,120,3544,3552,3571,101,109,101,110,116,59,1,8713,117,97,108,4,2,59,84,3561,3563,1,8800,105,108,100,101,59,3,8770,824,105,115,116,115,59,1,8708,114,101,97,116,101,114,4,7,59,69,70,71,76,83,84,3600,3602,3609,3621,3631,3637,3650,1,8815,113,117,97,108,59,1,8817,117,108,108,69,113,117,97,108,59,3,8807,824,114,101,97,116,101,114,59,3,8811,824,101,115,115,59,1,8825,108,97,110,116,69,113,117,97,108,59,3,10878,824,105,108,100,101,59,1,8821,117,109,112,4,2,68,69,3666,3677,111,119,110,72,117,109,112,59,3,8782,824,113,117,97,108,59,3,8783,824,101,4,2,102,115,3692,3724,116,84,114,105,97,110,103,108,101,4,3,59,66,69,3709,3711,3717,1,8938,97,114,59,3,10703,824,113,117,97,108,59,1,8940,115,4,6,59,69,71,76,83,84,3739,3741,3748,3757,3764,3777,1,8814,113,117,97,108,59,1,8816,114,101,97,116,101,114,59,1,8824,101,115,115,59,3,8810,824,108,97,110,116,69,113,117,97,108,59,3,10877,824,105,108,100,101,59,1,8820,101,115,116,101,100,4,2,71,76,3795,3812,114,101,97,116,101,114,71,114,101,97,116,101,114,59,3,10914,824,101,115,115,76,101,115,115,59,3,10913,824,114,101,99,101,100,101,115,4,3,59,69,83,3838,3840,3848,1,8832,113,117,97,108,59,3,10927,824,108,97,110,116,69,113,117,97,108,59,1,8928,4,2,101,105,3866,3881,118,101,114,115,101,69,108,101,109,101,110,116,59,1,8716,103,104,116,84,114,105,97,110,103,108,101,4,3,59,66,69,3900,3902,3908,1,8939,97,114,59,3,10704,824,113,117,97,108,59,1,8941,4,2,113,117,3921,3973,117,97,114,101,83,117,4,2,98,112,3933,3952,115,101,116,4,2,59,69,3942,3945,3,8847,824,113,117,97,108,59,1,8930,101,114,115,101,116,4,2,59,69,3963,3966,3,8848,824,113,117,97,108,59,1,8931,4,3,98,99,112,3981,4e3,4045,115,101,116,4,2,59,69,3990,3993,3,8834,8402,113,117,97,108,59,1,8840,99,101,101,100,115,4,4,59,69,83,84,4015,4017,4025,4037,1,8833,113,117,97,108,59,3,10928,824,108,97,110,116,69,113,117,97,108,59,1,8929,105,108,100,101,59,3,8831,824,101,114,115,101,116,4,2,59,69,4056,4059,3,8835,8402,113,117,97,108,59,1,8841,105,108,100,101,4,4,59,69,70,84,4080,4082,4089,4100,1,8769,113,117,97,108,59,1,8772,117,108,108,69,113,117,97,108,59,1,8775,105,108,100,101,59,1,8777,101,114,116,105,99,97,108,66,97,114,59,1,8740,99,114,59,3,55349,56489,105,108,100,101,5,209,1,59,4135,1,209,59,1,925,4,14,69,97,99,100,102,103,109,111,112,114,115,116,117,118,4170,4176,4187,4205,4212,4217,4228,4253,4259,4292,4295,4316,4337,4346,108,105,103,59,1,338,99,117,116,101,5,211,1,59,4185,1,211,4,2,105,121,4193,4202,114,99,5,212,1,59,4200,1,212,59,1,1054,98,108,97,99,59,1,336,114,59,3,55349,56594,114,97,118,101,5,210,1,59,4226,1,210,4,3,97,101,105,4236,4241,4246,99,114,59,1,332,103,97,59,1,937,99,114,111,110,59,1,927,112,102,59,3,55349,56646,101,110,67,117,114,108,121,4,2,68,81,4272,4285,111,117,98,108,101,81,117,111,116,101,59,1,8220,117,111,116,101,59,1,8216,59,1,10836,4,2,99,108,4301,4306,114,59,3,55349,56490,97,115,104,5,216,1,59,4314,1,216,105,4,2,108,109,4323,4332,100,101,5,213,1,59,4330,1,213,101,115,59,1,10807,109,108,5,214,1,59,4344,1,214,101,114,4,2,66,80,4354,4380,4,2,97,114,4360,4364,114,59,1,8254,97,99,4,2,101,107,4372,4375,59,1,9182,101,116,59,1,9140,97,114,101,110,116,104,101,115,105,115,59,1,9180,4,9,97,99,102,104,105,108,111,114,115,4413,4422,4426,4431,4435,4438,4448,4471,4561,114,116,105,97,108,68,59,1,8706,121,59,1,1055,114,59,3,55349,56595,105,59,1,934,59,1,928,117,115,77,105,110,117,115,59,1,177,4,2,105,112,4454,4467,110,99,97,114,101,112,108,97,110,101,59,1,8460,102,59,1,8473,4,4,59,101,105,111,4481,4483,4526,4531,1,10939,99,101,100,101,115,4,4,59,69,83,84,4498,4500,4507,4519,1,8826,113,117,97,108,59,1,10927,108,97,110,116,69,113,117,97,108,59,1,8828,105,108,100,101,59,1,8830,109,101,59,1,8243,4,2,100,112,4537,4543,117,99,116,59,1,8719,111,114,116,105,111,110,4,2,59,97,4555,4557,1,8759,108,59,1,8733,4,2,99,105,4567,4572,114,59,3,55349,56491,59,1,936,4,4,85,102,111,115,4585,4594,4599,4604,79,84,5,34,1,59,4592,1,34,114,59,3,55349,56596,112,102,59,1,8474,99,114,59,3,55349,56492,4,12,66,69,97,99,101,102,104,105,111,114,115,117,4636,4642,4650,4681,4704,4763,4767,4771,5047,5069,5081,5094,97,114,114,59,1,10512,71,5,174,1,59,4648,1,174,4,3,99,110,114,4658,4664,4668,117,116,101,59,1,340,103,59,1,10219,114,4,2,59,116,4675,4677,1,8608,108,59,1,10518,4,3,97,101,121,4689,4695,4701,114,111,110,59,1,344,100,105,108,59,1,342,59,1,1056,4,2,59,118,4710,4712,1,8476,101,114,115,101,4,2,69,85,4722,4748,4,2,108,113,4728,4736,101,109,101,110,116,59,1,8715,117,105,108,105,98,114,105,117,109,59,1,8651,112,69,113,117,105,108,105,98,114,105,117,109,59,1,10607,114,59,1,8476,111,59,1,929,103,104,116,4,8,65,67,68,70,84,85,86,97,4792,4840,4849,4905,4912,4972,5022,5040,4,2,110,114,4798,4811,103,108,101,66,114,97,99,107,101,116,59,1,10217,114,111,119,4,3,59,66,76,4822,4824,4829,1,8594,97,114,59,1,8677,101,102,116,65,114,114,111,119,59,1,8644,101,105,108,105,110,103,59,1,8969,111,4,2,117,119,4856,4869,98,108,101,66,114,97,99,107,101,116,59,1,10215,110,4,2,84,86,4876,4887,101,101,86,101,99,116,111,114,59,1,10589,101,99,116,111,114,4,2,59,66,4898,4900,1,8642,97,114,59,1,10581,108,111,111,114,59,1,8971,4,2,101,114,4918,4944,101,4,3,59,65,86,4927,4929,4936,1,8866,114,114,111,119,59,1,8614,101,99,116,111,114,59,1,10587,105,97,110,103,108,101,4,3,59,66,69,4958,4960,4965,1,8883,97,114,59,1,10704,113,117,97,108,59,1,8885,112,4,3,68,84,86,4981,4993,5004,111,119,110,86,101,99,116,111,114,59,1,10575,101,101,86,101,99,116,111,114,59,1,10588,101,99,116,111,114,4,2,59,66,5015,5017,1,8638,97,114,59,1,10580,101,99,116,111,114,4,2,59,66,5033,5035,1,8640,97,114,59,1,10579,114,114,111,119,59,1,8658,4,2,112,117,5053,5057,102,59,1,8477,110,100,73,109,112,108,105,101,115,59,1,10608,105,103,104,116,97,114,114,111,119,59,1,8667,4,2,99,104,5087,5091,114,59,1,8475,59,1,8625,108,101,68,101,108,97,121,101,100,59,1,10740,4,13,72,79,97,99,102,104,105,109,111,113,115,116,117,5134,5150,5157,5164,5198,5203,5259,5265,5277,5283,5374,5380,5385,4,2,67,99,5140,5146,72,99,121,59,1,1065,121,59,1,1064,70,84,99,121,59,1,1068,99,117,116,101,59,1,346,4,5,59,97,101,105,121,5176,5178,5184,5190,5195,1,10940,114,111,110,59,1,352,100,105,108,59,1,350,114,99,59,1,348,59,1,1057,114,59,3,55349,56598,111,114,116,4,4,68,76,82,85,5216,5227,5238,5250,111,119,110,65,114,114,111,119,59,1,8595,101,102,116,65,114,114,111,119,59,1,8592,105,103,104,116,65,114,114,111,119,59,1,8594,112,65,114,114,111,119,59,1,8593,103,109,97,59,1,931,97,108,108,67,105,114,99,108,101,59,1,8728,112,102,59,3,55349,56650,4,2,114,117,5289,5293,116,59,1,8730,97,114,101,4,4,59,73,83,85,5306,5308,5322,5367,1,9633,110,116,101,114,115,101,99,116,105,111,110,59,1,8851,117,4,2,98,112,5329,5347,115,101,116,4,2,59,69,5338,5340,1,8847,113,117,97,108,59,1,8849,101,114,115,101,116,4,2,59,69,5358,5360,1,8848,113,117,97,108,59,1,8850,110,105,111,110,59,1,8852,99,114,59,3,55349,56494,97,114,59,1,8902,4,4,98,99,109,112,5395,5420,5475,5478,4,2,59,115,5401,5403,1,8912,101,116,4,2,59,69,5411,5413,1,8912,113,117,97,108,59,1,8838,4,2,99,104,5426,5468,101,101,100,115,4,4,59,69,83,84,5440,5442,5449,5461,1,8827,113,117,97,108,59,1,10928,108,97,110,116,69,113,117,97,108,59,1,8829,105,108,100,101,59,1,8831,84,104,97,116,59,1,8715,59,1,8721,4,3,59,101,115,5486,5488,5507,1,8913,114,115,101,116,4,2,59,69,5498,5500,1,8835,113,117,97,108,59,1,8839,101,116,59,1,8913,4,11,72,82,83,97,99,102,104,105,111,114,115,5536,5546,5552,5567,5579,5602,5607,5655,5695,5701,5711,79,82,78,5,222,1,59,5544,1,222,65,68,69,59,1,8482,4,2,72,99,5558,5563,99,121,59,1,1035,121,59,1,1062,4,2,98,117,5573,5576,59,1,9,59,1,932,4,3,97,101,121,5587,5593,5599,114,111,110,59,1,356,100,105,108,59,1,354,59,1,1058,114,59,3,55349,56599,4,2,101,105,5613,5631,4,2,114,116,5619,5627,101,102,111,114,101,59,1,8756,97,59,1,920,4,2,99,110,5637,5647,107,83,112,97,99,101,59,3,8287,8202,83,112,97,99,101,59,1,8201,108,100,101,4,4,59,69,70,84,5668,5670,5677,5688,1,8764,113,117,97,108,59,1,8771,117,108,108,69,113,117,97,108,59,1,8773,105,108,100,101,59,1,8776,112,102,59,3,55349,56651,105,112,108,101,68,111,116,59,1,8411,4,2,99,116,5717,5722,114,59,3,55349,56495,114,111,107,59,1,358,4,14,97,98,99,100,102,103,109,110,111,112,114,115,116,117,5758,5789,5805,5823,5830,5835,5846,5852,5921,5937,6089,6095,6101,6108,4,2,99,114,5764,5774,117,116,101,5,218,1,59,5772,1,218,114,4,2,59,111,5781,5783,1,8607,99,105,114,59,1,10569,114,4,2,99,101,5796,5800,121,59,1,1038,118,101,59,1,364,4,2,105,121,5811,5820,114,99,5,219,1,59,5818,1,219,59,1,1059,98,108,97,99,59,1,368,114,59,3,55349,56600,114,97,118,101,5,217,1,59,5844,1,217,97,99,114,59,1,362,4,2,100,105,5858,5905,101,114,4,2,66,80,5866,5892,4,2,97,114,5872,5876,114,59,1,95,97,99,4,2,101,107,5884,5887,59,1,9183,101,116,59,1,9141,97,114,101,110,116,104,101,115,105,115,59,1,9181,111,110,4,2,59,80,5913,5915,1,8899,108,117,115,59,1,8846,4,2,103,112,5927,5932,111,110,59,1,370,102,59,3,55349,56652,4,8,65,68,69,84,97,100,112,115,5955,5985,5996,6009,6026,6033,6044,6075,114,114,111,119,4,3,59,66,68,5967,5969,5974,1,8593,97,114,59,1,10514,111,119,110,65,114,114,111,119,59,1,8645,111,119,110,65,114,114,111,119,59,1,8597,113,117,105,108,105,98,114,105,117,109,59,1,10606,101,101,4,2,59,65,6017,6019,1,8869,114,114,111,119,59,1,8613,114,114,111,119,59,1,8657,111,119,110,97,114,114,111,119,59,1,8661,101,114,4,2,76,82,6052,6063,101,102,116,65,114,114,111,119,59,1,8598,105,103,104,116,65,114,114,111,119,59,1,8599,105,4,2,59,108,6082,6084,1,978,111,110,59,1,933,105,110,103,59,1,366,99,114,59,3,55349,56496,105,108,100,101,59,1,360,109,108,5,220,1,59,6115,1,220,4,9,68,98,99,100,101,102,111,115,118,6137,6143,6148,6152,6166,6250,6255,6261,6267,97,115,104,59,1,8875,97,114,59,1,10987,121,59,1,1042,97,115,104,4,2,59,108,6161,6163,1,8873,59,1,10982,4,2,101,114,6172,6175,59,1,8897,4,3,98,116,121,6183,6188,6238,97,114,59,1,8214,4,2,59,105,6194,6196,1,8214,99,97,108,4,4,66,76,83,84,6209,6214,6220,6231,97,114,59,1,8739,105,110,101,59,1,124,101,112,97,114,97,116,111,114,59,1,10072,105,108,100,101,59,1,8768,84,104,105,110,83,112,97,99,101,59,1,8202,114,59,3,55349,56601,112,102,59,3,55349,56653,99,114,59,3,55349,56497,100,97,115,104,59,1,8874,4,5,99,101,102,111,115,6286,6292,6298,6303,6309,105,114,99,59,1,372,100,103,101,59,1,8896,114,59,3,55349,56602,112,102,59,3,55349,56654,99,114,59,3,55349,56498,4,4,102,105,111,115,6325,6330,6333,6339,114,59,3,55349,56603,59,1,926,112,102,59,3,55349,56655,99,114,59,3,55349,56499,4,9,65,73,85,97,99,102,111,115,117,6365,6370,6375,6380,6391,6405,6410,6416,6422,99,121,59,1,1071,99,121,59,1,1031,99,121,59,1,1070,99,117,116,101,5,221,1,59,6389,1,221,4,2,105,121,6397,6402,114,99,59,1,374,59,1,1067,114,59,3,55349,56604,112,102,59,3,55349,56656,99,114,59,3,55349,56500,109,108,59,1,376,4,8,72,97,99,100,101,102,111,115,6445,6450,6457,6472,6477,6501,6505,6510,99,121,59,1,1046,99,117,116,101,59,1,377,4,2,97,121,6463,6469,114,111,110,59,1,381,59,1,1047,111,116,59,1,379,4,2,114,116,6483,6497,111,87,105,100,116,104,83,112,97,99,101,59,1,8203,97,59,1,918,114,59,1,8488,112,102,59,1,8484,99,114,59,3,55349,56501,4,16,97,98,99,101,102,103,108,109,110,111,112,114,115,116,117,119,6550,6561,6568,6612,6622,6634,6645,6672,6699,6854,6870,6923,6933,6963,6974,6983,99,117,116,101,5,225,1,59,6559,1,225,114,101,118,101,59,1,259,4,6,59,69,100,105,117,121,6582,6584,6588,6591,6600,6609,1,8766,59,3,8766,819,59,1,8767,114,99,5,226,1,59,6598,1,226,116,101,5,180,1,59,6607,1,180,59,1,1072,108,105,103,5,230,1,59,6620,1,230,4,2,59,114,6628,6630,1,8289,59,3,55349,56606,114,97,118,101,5,224,1,59,6643,1,224,4,2,101,112,6651,6667,4,2,102,112,6657,6663,115,121,109,59,1,8501,104,59,1,8501,104,97,59,1,945,4,2,97,112,6678,6692,4,2,99,108,6684,6688,114,59,1,257,103,59,1,10815,5,38,1,59,6697,1,38,4,2,100,103,6705,6737,4,5,59,97,100,115,118,6717,6719,6724,6727,6734,1,8743,110,100,59,1,10837,59,1,10844,108,111,112,101,59,1,10840,59,1,10842,4,7,59,101,108,109,114,115,122,6753,6755,6758,6762,6814,6835,6848,1,8736,59,1,10660,101,59,1,8736,115,100,4,2,59,97,6770,6772,1,8737,4,8,97,98,99,100,101,102,103,104,6790,6793,6796,6799,6802,6805,6808,6811,59,1,10664,59,1,10665,59,1,10666,59,1,10667,59,1,10668,59,1,10669,59,1,10670,59,1,10671,116,4,2,59,118,6821,6823,1,8735,98,4,2,59,100,6830,6832,1,8894,59,1,10653,4,2,112,116,6841,6845,104,59,1,8738,59,1,197,97,114,114,59,1,9084,4,2,103,112,6860,6865,111,110,59,1,261,102,59,3,55349,56658,4,7,59,69,97,101,105,111,112,6886,6888,6891,6897,6900,6904,6908,1,8776,59,1,10864,99,105,114,59,1,10863,59,1,8778,100,59,1,8779,115,59,1,39,114,111,120,4,2,59,101,6917,6919,1,8776,113,59,1,8778,105,110,103,5,229,1,59,6931,1,229,4,3,99,116,121,6941,6946,6949,114,59,3,55349,56502,59,1,42,109,112,4,2,59,101,6957,6959,1,8776,113,59,1,8781,105,108,100,101,5,227,1,59,6972,1,227,109,108,5,228,1,59,6981,1,228,4,2,99,105,6989,6997,111,110,105,110,116,59,1,8755,110,116,59,1,10769,4,16,78,97,98,99,100,101,102,105,107,108,110,111,112,114,115,117,7036,7041,7119,7135,7149,7155,7219,7224,7347,7354,7463,7489,7786,7793,7814,7866,111,116,59,1,10989,4,2,99,114,7047,7094,107,4,4,99,101,112,115,7058,7064,7073,7080,111,110,103,59,1,8780,112,115,105,108,111,110,59,1,1014,114,105,109,101,59,1,8245,105,109,4,2,59,101,7088,7090,1,8765,113,59,1,8909,4,2,118,119,7100,7105,101,101,59,1,8893,101,100,4,2,59,103,7113,7115,1,8965,101,59,1,8965,114,107,4,2,59,116,7127,7129,1,9141,98,114,107,59,1,9142,4,2,111,121,7141,7146,110,103,59,1,8780,59,1,1073,113,117,111,59,1,8222,4,5,99,109,112,114,116,7167,7181,7188,7193,7199,97,117,115,4,2,59,101,7176,7178,1,8757,59,1,8757,112,116,121,118,59,1,10672,115,105,59,1,1014,110,111,117,59,1,8492,4,3,97,104,119,7207,7210,7213,59,1,946,59,1,8502,101,101,110,59,1,8812,114,59,3,55349,56607,103,4,7,99,111,115,116,117,118,119,7241,7262,7288,7305,7328,7335,7340,4,3,97,105,117,7249,7253,7258,112,59,1,8898,114,99,59,1,9711,112,59,1,8899,4,3,100,112,116,7270,7275,7281,111,116,59,1,10752,108,117,115,59,1,10753,105,109,101,115,59,1,10754,4,2,113,116,7294,7300,99,117,112,59,1,10758,97,114,59,1,9733,114,105,97,110,103,108,101,4,2,100,117,7318,7324,111,119,110,59,1,9661,112,59,1,9651,112,108,117,115,59,1,10756,101,101,59,1,8897,101,100,103,101,59,1,8896,97,114,111,119,59,1,10509,4,3,97,107,111,7362,7436,7458,4,2,99,110,7368,7432,107,4,3,108,115,116,7377,7386,7394,111,122,101,110,103,101,59,1,10731,113,117,97,114,101,59,1,9642,114,105,97,110,103,108,101,4,4,59,100,108,114,7411,7413,7419,7425,1,9652,111,119,110,59,1,9662,101,102,116,59,1,9666,105,103,104,116,59,1,9656,107,59,1,9251,4,2,49,51,7442,7454,4,2,50,52,7448,7451,59,1,9618,59,1,9617,52,59,1,9619,99,107,59,1,9608,4,2,101,111,7469,7485,4,2,59,113,7475,7478,3,61,8421,117,105,118,59,3,8801,8421,116,59,1,8976,4,4,112,116,119,120,7499,7504,7517,7523,102,59,3,55349,56659,4,2,59,116,7510,7512,1,8869,111,109,59,1,8869,116,105,101,59,1,8904,4,12,68,72,85,86,98,100,104,109,112,116,117,118,7549,7571,7597,7619,7655,7660,7682,7708,7715,7721,7728,7750,4,4,76,82,108,114,7559,7562,7565,7568,59,1,9559,59,1,9556,59,1,9558,59,1,9555,4,5,59,68,85,100,117,7583,7585,7588,7591,7594,1,9552,59,1,9574,59,1,9577,59,1,9572,59,1,9575,4,4,76,82,108,114,7607,7610,7613,7616,59,1,9565,59,1,9562,59,1,9564,59,1,9561,4,7,59,72,76,82,104,108,114,7635,7637,7640,7643,7646,7649,7652,1,9553,59,1,9580,59,1,9571,59,1,9568,59,1,9579,59,1,9570,59,1,9567,111,120,59,1,10697,4,4,76,82,108,114,7670,7673,7676,7679,59,1,9557,59,1,9554,59,1,9488,59,1,9484,4,5,59,68,85,100,117,7694,7696,7699,7702,7705,1,9472,59,1,9573,59,1,9576,59,1,9516,59,1,9524,105,110,117,115,59,1,8863,108,117,115,59,1,8862,105,109,101,115,59,1,8864,4,4,76,82,108,114,7738,7741,7744,7747,59,1,9563,59,1,9560,59,1,9496,59,1,9492,4,7,59,72,76,82,104,108,114,7766,7768,7771,7774,7777,7780,7783,1,9474,59,1,9578,59,1,9569,59,1,9566,59,1,9532,59,1,9508,59,1,9500,114,105,109,101,59,1,8245,4,2,101,118,7799,7804,118,101,59,1,728,98,97,114,5,166,1,59,7812,1,166,4,4,99,101,105,111,7824,7829,7834,7846,114,59,3,55349,56503,109,105,59,1,8271,109,4,2,59,101,7841,7843,1,8765,59,1,8909,108,4,3,59,98,104,7855,7857,7860,1,92,59,1,10693,115,117,98,59,1,10184,4,2,108,109,7872,7885,108,4,2,59,101,7879,7881,1,8226,116,59,1,8226,112,4,3,59,69,101,7894,7896,7899,1,8782,59,1,10926,4,2,59,113,7905,7907,1,8783,59,1,8783,4,15,97,99,100,101,102,104,105,108,111,114,115,116,117,119,121,7942,8021,8075,8080,8121,8126,8157,8279,8295,8430,8446,8485,8491,8707,8726,4,3,99,112,114,7950,7956,8007,117,116,101,59,1,263,4,6,59,97,98,99,100,115,7970,7972,7977,7984,7998,8003,1,8745,110,100,59,1,10820,114,99,117,112,59,1,10825,4,2,97,117,7990,7994,112,59,1,10827,112,59,1,10823,111,116,59,1,10816,59,3,8745,65024,4,2,101,111,8013,8017,116,59,1,8257,110,59,1,711,4,4,97,101,105,117,8031,8046,8056,8061,4,2,112,114,8037,8041,115,59,1,10829,111,110,59,1,269,100,105,108,5,231,1,59,8054,1,231,114,99,59,1,265,112,115,4,2,59,115,8069,8071,1,10828,109,59,1,10832,111,116,59,1,267,4,3,100,109,110,8088,8097,8104,105,108,5,184,1,59,8095,1,184,112,116,121,118,59,1,10674,116,5,162,2,59,101,8112,8114,1,162,114,100,111,116,59,1,183,114,59,3,55349,56608,4,3,99,101,105,8134,8138,8154,121,59,1,1095,99,107,4,2,59,109,8146,8148,1,10003,97,114,107,59,1,10003,59,1,967,114,4,7,59,69,99,101,102,109,115,8174,8176,8179,8258,8261,8268,8273,1,9675,59,1,10691,4,3,59,101,108,8187,8189,8193,1,710,113,59,1,8791,101,4,2,97,100,8200,8223,114,114,111,119,4,2,108,114,8210,8216,101,102,116,59,1,8634,105,103,104,116,59,1,8635,4,5,82,83,97,99,100,8235,8238,8241,8246,8252,59,1,174,59,1,9416,115,116,59,1,8859,105,114,99,59,1,8858,97,115,104,59,1,8861,59,1,8791,110,105,110,116,59,1,10768,105,100,59,1,10991,99,105,114,59,1,10690,117,98,115,4,2,59,117,8288,8290,1,9827,105,116,59,1,9827,4,4,108,109,110,112,8305,8326,8376,8400,111,110,4,2,59,101,8313,8315,1,58,4,2,59,113,8321,8323,1,8788,59,1,8788,4,2,109,112,8332,8344,97,4,2,59,116,8339,8341,1,44,59,1,64,4,3,59,102,108,8352,8354,8358,1,8705,110,59,1,8728,101,4,2,109,120,8365,8371,101,110,116,59,1,8705,101,115,59,1,8450,4,2,103,105,8382,8395,4,2,59,100,8388,8390,1,8773,111,116,59,1,10861,110,116,59,1,8750,4,3,102,114,121,8408,8412,8417,59,3,55349,56660,111,100,59,1,8720,5,169,2,59,115,8424,8426,1,169,114,59,1,8471,4,2,97,111,8436,8441,114,114,59,1,8629,115,115,59,1,10007,4,2,99,117,8452,8457,114,59,3,55349,56504,4,2,98,112,8463,8474,4,2,59,101,8469,8471,1,10959,59,1,10961,4,2,59,101,8480,8482,1,10960,59,1,10962,100,111,116,59,1,8943,4,7,100,101,108,112,114,118,119,8507,8522,8536,8550,8600,8697,8702,97,114,114,4,2,108,114,8516,8519,59,1,10552,59,1,10549,4,2,112,115,8528,8532,114,59,1,8926,99,59,1,8927,97,114,114,4,2,59,112,8545,8547,1,8630,59,1,10557,4,6,59,98,99,100,111,115,8564,8566,8573,8587,8592,8596,1,8746,114,99,97,112,59,1,10824,4,2,97,117,8579,8583,112,59,1,10822,112,59,1,10826,111,116,59,1,8845,114,59,1,10821,59,3,8746,65024,4,4,97,108,114,118,8610,8623,8663,8672,114,114,4,2,59,109,8618,8620,1,8631,59,1,10556,121,4,3,101,118,119,8632,8651,8656,113,4,2,112,115,8639,8645,114,101,99,59,1,8926,117,99,99,59,1,8927,101,101,59,1,8910,101,100,103,101,59,1,8911,101,110,5,164,1,59,8670,1,164,101,97,114,114,111,119,4,2,108,114,8684,8690,101,102,116,59,1,8630,105,103,104,116,59,1,8631,101,101,59,1,8910,101,100,59,1,8911,4,2,99,105,8713,8721,111,110,105,110,116,59,1,8754,110,116,59,1,8753,108,99,116,121,59,1,9005,4,19,65,72,97,98,99,100,101,102,104,105,106,108,111,114,115,116,117,119,122,8773,8778,8783,8821,8839,8854,8887,8914,8930,8944,9036,9041,9058,9197,9227,9258,9281,9297,9305,114,114,59,1,8659,97,114,59,1,10597,4,4,103,108,114,115,8793,8799,8805,8809,103,101,114,59,1,8224,101,116,104,59,1,8504,114,59,1,8595,104,4,2,59,118,8816,8818,1,8208,59,1,8867,4,2,107,108,8827,8834,97,114,111,119,59,1,10511,97,99,59,1,733,4,2,97,121,8845,8851,114,111,110,59,1,271,59,1,1076,4,3,59,97,111,8862,8864,8880,1,8518,4,2,103,114,8870,8876,103,101,114,59,1,8225,114,59,1,8650,116,115,101,113,59,1,10871,4,3,103,108,109,8895,8902,8907,5,176,1,59,8900,1,176,116,97,59,1,948,112,116,121,118,59,1,10673,4,2,105,114,8920,8926,115,104,116,59,1,10623,59,3,55349,56609,97,114,4,2,108,114,8938,8941,59,1,8643,59,1,8642,4,5,97,101,103,115,118,8956,8986,8989,8996,9001,109,4,3,59,111,115,8965,8967,8983,1,8900,110,100,4,2,59,115,8975,8977,1,8900,117,105,116,59,1,9830,59,1,9830,59,1,168,97,109,109,97,59,1,989,105,110,59,1,8946,4,3,59,105,111,9009,9011,9031,1,247,100,101,5,247,2,59,111,9020,9022,1,247,110,116,105,109,101,115,59,1,8903,110,120,59,1,8903,99,121,59,1,1106,99,4,2,111,114,9048,9053,114,110,59,1,8990,111,112,59,1,8973,4,5,108,112,116,117,119,9070,9076,9081,9130,9144,108,97,114,59,1,36,102,59,3,55349,56661,4,5,59,101,109,112,115,9093,9095,9109,9116,9122,1,729,113,4,2,59,100,9102,9104,1,8784,111,116,59,1,8785,105,110,117,115,59,1,8760,108,117,115,59,1,8724,113,117,97,114,101,59,1,8865,98,108,101,98,97,114,119,101,100,103,101,59,1,8966,110,4,3,97,100,104,9153,9160,9172,114,114,111,119,59,1,8595,111,119,110,97,114,114,111,119,115,59,1,8650,97,114,112,111,111,110,4,2,108,114,9184,9190,101,102,116,59,1,8643,105,103,104,116,59,1,8642,4,2,98,99,9203,9211,107,97,114,111,119,59,1,10512,4,2,111,114,9217,9222,114,110,59,1,8991,111,112,59,1,8972,4,3,99,111,116,9235,9248,9252,4,2,114,121,9241,9245,59,3,55349,56505,59,1,1109,108,59,1,10742,114,111,107,59,1,273,4,2,100,114,9264,9269,111,116,59,1,8945,105,4,2,59,102,9276,9278,1,9663,59,1,9662,4,2,97,104,9287,9292,114,114,59,1,8693,97,114,59,1,10607,97,110,103,108,101,59,1,10662,4,2,99,105,9311,9315,121,59,1,1119,103,114,97,114,114,59,1,10239,4,18,68,97,99,100,101,102,103,108,109,110,111,112,113,114,115,116,117,120,9361,9376,9398,9439,9444,9447,9462,9495,9531,9585,9598,9614,9659,9755,9771,9792,9808,9826,4,2,68,111,9367,9372,111,116,59,1,10871,116,59,1,8785,4,2,99,115,9382,9392,117,116,101,5,233,1,59,9390,1,233,116,101,114,59,1,10862,4,4,97,105,111,121,9408,9414,9430,9436,114,111,110,59,1,283,114,4,2,59,99,9421,9423,1,8790,5,234,1,59,9428,1,234,108,111,110,59,1,8789,59,1,1101,111,116,59,1,279,59,1,8519,4,2,68,114,9453,9458,111,116,59,1,8786,59,3,55349,56610,4,3,59,114,115,9470,9472,9482,1,10906,97,118,101,5,232,1,59,9480,1,232,4,2,59,100,9488,9490,1,10902,111,116,59,1,10904,4,4,59,105,108,115,9505,9507,9515,9518,1,10905,110,116,101,114,115,59,1,9191,59,1,8467,4,2,59,100,9524,9526,1,10901,111,116,59,1,10903,4,3,97,112,115,9539,9544,9564,99,114,59,1,275,116,121,4,3,59,115,118,9554,9556,9561,1,8709,101,116,59,1,8709,59,1,8709,112,4,2,49,59,9571,9583,4,2,51,52,9577,9580,59,1,8196,59,1,8197,1,8195,4,2,103,115,9591,9594,59,1,331,112,59,1,8194,4,2,103,112,9604,9609,111,110,59,1,281,102,59,3,55349,56662,4,3,97,108,115,9622,9635,9640,114,4,2,59,115,9629,9631,1,8917,108,59,1,10723,117,115,59,1,10865,105,4,3,59,108,118,9649,9651,9656,1,949,111,110,59,1,949,59,1,1013,4,4,99,115,117,118,9669,9686,9716,9747,4,2,105,111,9675,9680,114,99,59,1,8790,108,111,110,59,1,8789,4,2,105,108,9692,9696,109,59,1,8770,97,110,116,4,2,103,108,9705,9710,116,114,59,1,10902,101,115,115,59,1,10901,4,3,97,101,105,9724,9729,9734,108,115,59,1,61,115,116,59,1,8799,118,4,2,59,68,9741,9743,1,8801,68,59,1,10872,112,97,114,115,108,59,1,10725,4,2,68,97,9761,9766,111,116,59,1,8787,114,114,59,1,10609,4,3,99,100,105,9779,9783,9788,114,59,1,8495,111,116,59,1,8784,109,59,1,8770,4,2,97,104,9798,9801,59,1,951,5,240,1,59,9806,1,240,4,2,109,114,9814,9822,108,5,235,1,59,9820,1,235,111,59,1,8364,4,3,99,105,112,9834,9838,9843,108,59,1,33,115,116,59,1,8707,4,2,101,111,9849,9859,99,116,97,116,105,111,110,59,1,8496,110,101,110,116,105,97,108,101,59,1,8519,4,12,97,99,101,102,105,106,108,110,111,112,114,115,9896,9910,9914,9921,9954,9960,9967,9989,9994,10027,10036,10164,108,108,105,110,103,100,111,116,115,101,113,59,1,8786,121,59,1,1092,109,97,108,101,59,1,9792,4,3,105,108,114,9929,9935,9950,108,105,103,59,1,64259,4,2,105,108,9941,9945,103,59,1,64256,105,103,59,1,64260,59,3,55349,56611,108,105,103,59,1,64257,108,105,103,59,3,102,106,4,3,97,108,116,9975,9979,9984,116,59,1,9837,105,103,59,1,64258,110,115,59,1,9649,111,102,59,1,402,4,2,112,114,1e4,10005,102,59,3,55349,56663,4,2,97,107,10011,10016,108,108,59,1,8704,4,2,59,118,10022,10024,1,8916,59,1,10969,97,114,116,105,110,116,59,1,10765,4,2,97,111,10042,10159,4,2,99,115,10048,10155,4,6,49,50,51,52,53,55,10062,10102,10114,10135,10139,10151,4,6,50,51,52,53,54,56,10076,10083,10086,10093,10096,10099,5,189,1,59,10081,1,189,59,1,8531,5,188,1,59,10091,1,188,59,1,8533,59,1,8537,59,1,8539,4,2,51,53,10108,10111,59,1,8532,59,1,8534,4,3,52,53,56,10122,10129,10132,5,190,1,59,10127,1,190,59,1,8535,59,1,8540,53,59,1,8536,4,2,54,56,10145,10148,59,1,8538,59,1,8541,56,59,1,8542,108,59,1,8260,119,110,59,1,8994,99,114,59,3,55349,56507,4,17,69,97,98,99,100,101,102,103,105,106,108,110,111,114,115,116,118,10206,10217,10247,10254,10268,10273,10358,10363,10374,10380,10385,10406,10458,10464,10470,10497,10610,4,2,59,108,10212,10214,1,8807,59,1,10892,4,3,99,109,112,10225,10231,10244,117,116,101,59,1,501,109,97,4,2,59,100,10239,10241,1,947,59,1,989,59,1,10886,114,101,118,101,59,1,287,4,2,105,121,10260,10265,114,99,59,1,285,59,1,1075,111,116,59,1,289,4,4,59,108,113,115,10283,10285,10288,10308,1,8805,59,1,8923,4,3,59,113,115,10296,10298,10301,1,8805,59,1,8807,108,97,110,116,59,1,10878,4,4,59,99,100,108,10318,10320,10324,10345,1,10878,99,59,1,10921,111,116,4,2,59,111,10332,10334,1,10880,4,2,59,108,10340,10342,1,10882,59,1,10884,4,2,59,101,10351,10354,3,8923,65024,115,59,1,10900,114,59,3,55349,56612,4,2,59,103,10369,10371,1,8811,59,1,8921,109,101,108,59,1,8503,99,121,59,1,1107,4,4,59,69,97,106,10395,10397,10400,10403,1,8823,59,1,10898,59,1,10917,59,1,10916,4,4,69,97,101,115,10416,10419,10434,10453,59,1,8809,112,4,2,59,112,10426,10428,1,10890,114,111,120,59,1,10890,4,2,59,113,10440,10442,1,10888,4,2,59,113,10448,10450,1,10888,59,1,8809,105,109,59,1,8935,112,102,59,3,55349,56664,97,118,101,59,1,96,4,2,99,105,10476,10480,114,59,1,8458,109,4,3,59,101,108,10489,10491,10494,1,8819,59,1,10894,59,1,10896,5,62,6,59,99,100,108,113,114,10512,10514,10527,10532,10538,10545,1,62,4,2,99,105,10520,10523,59,1,10919,114,59,1,10874,111,116,59,1,8919,80,97,114,59,1,10645,117,101,115,116,59,1,10876,4,5,97,100,101,108,115,10557,10574,10579,10599,10605,4,2,112,114,10563,10570,112,114,111,120,59,1,10886,114,59,1,10616,111,116,59,1,8919,113,4,2,108,113,10586,10592,101,115,115,59,1,8923,108,101,115,115,59,1,10892,101,115,115,59,1,8823,105,109,59,1,8819,4,2,101,110,10616,10626,114,116,110,101,113,113,59,3,8809,65024,69,59,3,8809,65024,4,10,65,97,98,99,101,102,107,111,115,121,10653,10658,10713,10718,10724,10760,10765,10786,10850,10875,114,114,59,1,8660,4,4,105,108,109,114,10668,10674,10678,10684,114,115,112,59,1,8202,102,59,1,189,105,108,116,59,1,8459,4,2,100,114,10690,10695,99,121,59,1,1098,4,3,59,99,119,10703,10705,10710,1,8596,105,114,59,1,10568,59,1,8621,97,114,59,1,8463,105,114,99,59,1,293,4,3,97,108,114,10732,10748,10754,114,116,115,4,2,59,117,10741,10743,1,9829,105,116,59,1,9829,108,105,112,59,1,8230,99,111,110,59,1,8889,114,59,3,55349,56613,115,4,2,101,119,10772,10779,97,114,111,119,59,1,10533,97,114,111,119,59,1,10534,4,5,97,109,111,112,114,10798,10803,10809,10839,10844,114,114,59,1,8703,116,104,116,59,1,8763,107,4,2,108,114,10816,10827,101,102,116,97,114,114,111,119,59,1,8617,105,103,104,116,97,114,114,111,119,59,1,8618,102,59,3,55349,56665,98,97,114,59,1,8213,4,3,99,108,116,10858,10863,10869,114,59,3,55349,56509,97,115,104,59,1,8463,114,111,107,59,1,295,4,2,98,112,10881,10887,117,108,108,59,1,8259,104,101,110,59,1,8208,4,15,97,99,101,102,103,105,106,109,110,111,112,113,115,116,117,10925,10936,10958,10977,10990,11001,11039,11045,11101,11192,11220,11226,11237,11285,11299,99,117,116,101,5,237,1,59,10934,1,237,4,3,59,105,121,10944,10946,10955,1,8291,114,99,5,238,1,59,10953,1,238,59,1,1080,4,2,99,120,10964,10968,121,59,1,1077,99,108,5,161,1,59,10975,1,161,4,2,102,114,10983,10986,59,1,8660,59,3,55349,56614,114,97,118,101,5,236,1,59,10999,1,236,4,4,59,105,110,111,11011,11013,11028,11034,1,8520,4,2,105,110,11019,11024,110,116,59,1,10764,116,59,1,8749,102,105,110,59,1,10716,116,97,59,1,8489,108,105,103,59,1,307,4,3,97,111,112,11053,11092,11096,4,3,99,103,116,11061,11065,11088,114,59,1,299,4,3,101,108,112,11073,11076,11082,59,1,8465,105,110,101,59,1,8464,97,114,116,59,1,8465,104,59,1,305,102,59,1,8887,101,100,59,1,437,4,5,59,99,102,111,116,11113,11115,11121,11136,11142,1,8712,97,114,101,59,1,8453,105,110,4,2,59,116,11129,11131,1,8734,105,101,59,1,10717,100,111,116,59,1,305,4,5,59,99,101,108,112,11154,11156,11161,11179,11186,1,8747,97,108,59,1,8890,4,2,103,114,11167,11173,101,114,115,59,1,8484,99,97,108,59,1,8890,97,114,104,107,59,1,10775,114,111,100,59,1,10812,4,4,99,103,112,116,11202,11206,11211,11216,121,59,1,1105,111,110,59,1,303,102,59,3,55349,56666,97,59,1,953,114,111,100,59,1,10812,117,101,115,116,5,191,1,59,11235,1,191,4,2,99,105,11243,11248,114,59,3,55349,56510,110,4,5,59,69,100,115,118,11261,11263,11266,11271,11282,1,8712,59,1,8953,111,116,59,1,8949,4,2,59,118,11277,11279,1,8948,59,1,8947,59,1,8712,4,2,59,105,11291,11293,1,8290,108,100,101,59,1,297,4,2,107,109,11305,11310,99,121,59,1,1110,108,5,239,1,59,11316,1,239,4,6,99,102,109,111,115,117,11332,11346,11351,11357,11363,11380,4,2,105,121,11338,11343,114,99,59,1,309,59,1,1081,114,59,3,55349,56615,97,116,104,59,1,567,112,102,59,3,55349,56667,4,2,99,101,11369,11374,114,59,3,55349,56511,114,99,121,59,1,1112,107,99,121,59,1,1108,4,8,97,99,102,103,104,106,111,115,11404,11418,11433,11438,11445,11450,11455,11461,112,112,97,4,2,59,118,11413,11415,1,954,59,1,1008,4,2,101,121,11424,11430,100,105,108,59,1,311,59,1,1082,114,59,3,55349,56616,114,101,101,110,59,1,312,99,121,59,1,1093,99,121,59,1,1116,112,102,59,3,55349,56668,99,114,59,3,55349,56512,4,23,65,66,69,72,97,98,99,100,101,102,103,104,106,108,109,110,111,112,114,115,116,117,118,11515,11538,11544,11555,11560,11721,11780,11818,11868,12136,12160,12171,12203,12208,12246,12275,12327,12509,12523,12569,12641,12732,12752,4,3,97,114,116,11523,11528,11532,114,114,59,1,8666,114,59,1,8656,97,105,108,59,1,10523,97,114,114,59,1,10510,4,2,59,103,11550,11552,1,8806,59,1,10891,97,114,59,1,10594,4,9,99,101,103,109,110,112,113,114,116,11580,11586,11594,11600,11606,11624,11627,11636,11694,117,116,101,59,1,314,109,112,116,121,118,59,1,10676,114,97,110,59,1,8466,98,100,97,59,1,955,103,4,3,59,100,108,11615,11617,11620,1,10216,59,1,10641,101,59,1,10216,59,1,10885,117,111,5,171,1,59,11634,1,171,114,4,8,59,98,102,104,108,112,115,116,11655,11657,11669,11673,11677,11681,11685,11690,1,8592,4,2,59,102,11663,11665,1,8676,115,59,1,10527,115,59,1,10525,107,59,1,8617,112,59,1,8619,108,59,1,10553,105,109,59,1,10611,108,59,1,8610,4,3,59,97,101,11702,11704,11709,1,10923,105,108,59,1,10521,4,2,59,115,11715,11717,1,10925,59,3,10925,65024,4,3,97,98,114,11729,11734,11739,114,114,59,1,10508,114,107,59,1,10098,4,2,97,107,11745,11758,99,4,2,101,107,11752,11755,59,1,123,59,1,91,4,2,101,115,11764,11767,59,1,10635,108,4,2,100,117,11774,11777,59,1,10639,59,1,10637,4,4,97,101,117,121,11790,11796,11811,11815,114,111,110,59,1,318,4,2,100,105,11802,11807,105,108,59,1,316,108,59,1,8968,98,59,1,123,59,1,1083,4,4,99,113,114,115,11828,11832,11845,11864,97,59,1,10550,117,111,4,2,59,114,11840,11842,1,8220,59,1,8222,4,2,100,117,11851,11857,104,97,114,59,1,10599,115,104,97,114,59,1,10571,104,59,1,8626,4,5,59,102,103,113,115,11880,11882,12008,12011,12031,1,8804,116,4,5,97,104,108,114,116,11895,11913,11935,11947,11996,114,114,111,119,4,2,59,116,11905,11907,1,8592,97,105,108,59,1,8610,97,114,112,111,111,110,4,2,100,117,11925,11931,111,119,110,59,1,8637,112,59,1,8636,101,102,116,97,114,114,111,119,115,59,1,8647,105,103,104,116,4,3,97,104,115,11959,11974,11984,114,114,111,119,4,2,59,115,11969,11971,1,8596,59,1,8646,97,114,112,111,111,110,115,59,1,8651,113,117,105,103,97,114,114,111,119,59,1,8621,104,114,101,101,116,105,109,101,115,59,1,8907,59,1,8922,4,3,59,113,115,12019,12021,12024,1,8804,59,1,8806,108,97,110,116,59,1,10877,4,5,59,99,100,103,115,12043,12045,12049,12070,12083,1,10877,99,59,1,10920,111,116,4,2,59,111,12057,12059,1,10879,4,2,59,114,12065,12067,1,10881,59,1,10883,4,2,59,101,12076,12079,3,8922,65024,115,59,1,10899,4,5,97,100,101,103,115,12095,12103,12108,12126,12131,112,112,114,111,120,59,1,10885,111,116,59,1,8918,113,4,2,103,113,12115,12120,116,114,59,1,8922,103,116,114,59,1,10891,116,114,59,1,8822,105,109,59,1,8818,4,3,105,108,114,12144,12150,12156,115,104,116,59,1,10620,111,111,114,59,1,8970,59,3,55349,56617,4,2,59,69,12166,12168,1,8822,59,1,10897,4,2,97,98,12177,12198,114,4,2,100,117,12184,12187,59,1,8637,4,2,59,108,12193,12195,1,8636,59,1,10602,108,107,59,1,9604,99,121,59,1,1113,4,5,59,97,99,104,116,12220,12222,12227,12235,12241,1,8810,114,114,59,1,8647,111,114,110,101,114,59,1,8990,97,114,100,59,1,10603,114,105,59,1,9722,4,2,105,111,12252,12258,100,111,116,59,1,320,117,115,116,4,2,59,97,12267,12269,1,9136,99,104,101,59,1,9136,4,4,69,97,101,115,12285,12288,12303,12322,59,1,8808,112,4,2,59,112,12295,12297,1,10889,114,111,120,59,1,10889,4,2,59,113,12309,12311,1,10887,4,2,59,113,12317,12319,1,10887,59,1,8808,105,109,59,1,8934,4,8,97,98,110,111,112,116,119,122,12345,12359,12364,12421,12446,12467,12474,12490,4,2,110,114,12351,12355,103,59,1,10220,114,59,1,8701,114,107,59,1,10214,103,4,3,108,109,114,12373,12401,12409,101,102,116,4,2,97,114,12382,12389,114,114,111,119,59,1,10229,105,103,104,116,97,114,114,111,119,59,1,10231,97,112,115,116,111,59,1,10236,105,103,104,116,97,114,114,111,119,59,1,10230,112,97,114,114,111,119,4,2,108,114,12433,12439,101,102,116,59,1,8619,105,103,104,116,59,1,8620,4,3,97,102,108,12454,12458,12462,114,59,1,10629,59,3,55349,56669,117,115,59,1,10797,105,109,101,115,59,1,10804,4,2,97,98,12480,12485,115,116,59,1,8727,97,114,59,1,95,4,3,59,101,102,12498,12500,12506,1,9674,110,103,101,59,1,9674,59,1,10731,97,114,4,2,59,108,12517,12519,1,40,116,59,1,10643,4,5,97,99,104,109,116,12535,12540,12548,12561,12564,114,114,59,1,8646,111,114,110,101,114,59,1,8991,97,114,4,2,59,100,12556,12558,1,8651,59,1,10605,59,1,8206,114,105,59,1,8895,4,6,97,99,104,105,113,116,12583,12589,12594,12597,12614,12635,113,117,111,59,1,8249,114,59,3,55349,56513,59,1,8624,109,4,3,59,101,103,12606,12608,12611,1,8818,59,1,10893,59,1,10895,4,2,98,117,12620,12623,59,1,91,111,4,2,59,114,12630,12632,1,8216,59,1,8218,114,111,107,59,1,322,5,60,8,59,99,100,104,105,108,113,114,12660,12662,12675,12680,12686,12692,12698,12705,1,60,4,2,99,105,12668,12671,59,1,10918,114,59,1,10873,111,116,59,1,8918,114,101,101,59,1,8907,109,101,115,59,1,8905,97,114,114,59,1,10614,117,101,115,116,59,1,10875,4,2,80,105,12711,12716,97,114,59,1,10646,4,3,59,101,102,12724,12726,12729,1,9667,59,1,8884,59,1,9666,114,4,2,100,117,12739,12746,115,104,97,114,59,1,10570,104,97,114,59,1,10598,4,2,101,110,12758,12768,114,116,110,101,113,113,59,3,8808,65024,69,59,3,8808,65024,4,14,68,97,99,100,101,102,104,105,108,110,111,112,115,117,12803,12809,12893,12908,12914,12928,12933,12937,13011,13025,13032,13049,13052,13069,68,111,116,59,1,8762,4,4,99,108,112,114,12819,12827,12849,12887,114,5,175,1,59,12825,1,175,4,2,101,116,12833,12836,59,1,9794,4,2,59,101,12842,12844,1,10016,115,101,59,1,10016,4,2,59,115,12855,12857,1,8614,116,111,4,4,59,100,108,117,12869,12871,12877,12883,1,8614,111,119,110,59,1,8615,101,102,116,59,1,8612,112,59,1,8613,107,101,114,59,1,9646,4,2,111,121,12899,12905,109,109,97,59,1,10793,59,1,1084,97,115,104,59,1,8212,97,115,117,114,101,100,97,110,103,108,101,59,1,8737,114,59,3,55349,56618,111,59,1,8487,4,3,99,100,110,12945,12954,12985,114,111,5,181,1,59,12952,1,181,4,4,59,97,99,100,12964,12966,12971,12976,1,8739,115,116,59,1,42,105,114,59,1,10992,111,116,5,183,1,59,12983,1,183,117,115,4,3,59,98,100,12995,12997,13e3,1,8722,59,1,8863,4,2,59,117,13006,13008,1,8760,59,1,10794,4,2,99,100,13017,13021,112,59,1,10971,114,59,1,8230,112,108,117,115,59,1,8723,4,2,100,112,13038,13044,101,108,115,59,1,8871,102,59,3,55349,56670,59,1,8723,4,2,99,116,13058,13063,114,59,3,55349,56514,112,111,115,59,1,8766,4,3,59,108,109,13077,13079,13087,1,956,116,105,109,97,112,59,1,8888,97,112,59,1,8888,4,24,71,76,82,86,97,98,99,100,101,102,103,104,105,106,108,109,111,112,114,115,116,117,118,119,13142,13165,13217,13229,13247,13330,13359,13414,13420,13508,13513,13579,13602,13626,13631,13762,13767,13855,13936,13995,14214,14285,14312,14432,4,2,103,116,13148,13152,59,3,8921,824,4,2,59,118,13158,13161,3,8811,8402,59,3,8811,824,4,3,101,108,116,13173,13200,13204,102,116,4,2,97,114,13181,13188,114,114,111,119,59,1,8653,105,103,104,116,97,114,114,111,119,59,1,8654,59,3,8920,824,4,2,59,118,13210,13213,3,8810,8402,59,3,8810,824,105,103,104,116,97,114,114,111,119,59,1,8655,4,2,68,100,13235,13241,97,115,104,59,1,8879,97,115,104,59,1,8878,4,5,98,99,110,112,116,13259,13264,13270,13275,13308,108,97,59,1,8711,117,116,101,59,1,324,103,59,3,8736,8402,4,5,59,69,105,111,112,13287,13289,13293,13298,13302,1,8777,59,3,10864,824,100,59,3,8779,824,115,59,1,329,114,111,120,59,1,8777,117,114,4,2,59,97,13316,13318,1,9838,108,4,2,59,115,13325,13327,1,9838,59,1,8469,4,2,115,117,13336,13344,112,5,160,1,59,13342,1,160,109,112,4,2,59,101,13352,13355,3,8782,824,59,3,8783,824,4,5,97,101,111,117,121,13371,13385,13391,13407,13411,4,2,112,114,13377,13380,59,1,10819,111,110,59,1,328,100,105,108,59,1,326,110,103,4,2,59,100,13399,13401,1,8775,111,116,59,3,10861,824,112,59,1,10818,59,1,1085,97,115,104,59,1,8211,4,7,59,65,97,100,113,115,120,13436,13438,13443,13466,13472,13478,13494,1,8800,114,114,59,1,8663,114,4,2,104,114,13450,13454,107,59,1,10532,4,2,59,111,13460,13462,1,8599,119,59,1,8599,111,116,59,3,8784,824,117,105,118,59,1,8802,4,2,101,105,13484,13489,97,114,59,1,10536,109,59,3,8770,824,105,115,116,4,2,59,115,13503,13505,1,8708,59,1,8708,114,59,3,55349,56619,4,4,69,101,115,116,13523,13527,13563,13568,59,3,8807,824,4,3,59,113,115,13535,13537,13559,1,8817,4,3,59,113,115,13545,13547,13551,1,8817,59,3,8807,824,108,97,110,116,59,3,10878,824,59,3,10878,824,105,109,59,1,8821,4,2,59,114,13574,13576,1,8815,59,1,8815,4,3,65,97,112,13587,13592,13597,114,114,59,1,8654,114,114,59,1,8622,97,114,59,1,10994,4,3,59,115,118,13610,13612,13623,1,8715,4,2,59,100,13618,13620,1,8956,59,1,8954,59,1,8715,99,121,59,1,1114,4,7,65,69,97,100,101,115,116,13647,13652,13656,13661,13665,13737,13742,114,114,59,1,8653,59,3,8806,824,114,114,59,1,8602,114,59,1,8229,4,4,59,102,113,115,13675,13677,13703,13725,1,8816,116,4,2,97,114,13684,13691,114,114,111,119,59,1,8602,105,103,104,116,97,114,114,111,119,59,1,8622,4,3,59,113,115,13711,13713,13717,1,8816,59,3,8806,824,108,97,110,116,59,3,10877,824,4,2,59,115,13731,13734,3,10877,824,59,1,8814,105,109,59,1,8820,4,2,59,114,13748,13750,1,8814,105,4,2,59,101,13757,13759,1,8938,59,1,8940,105,100,59,1,8740,4,2,112,116,13773,13778,102,59,3,55349,56671,5,172,3,59,105,110,13787,13789,13829,1,172,110,4,4,59,69,100,118,13800,13802,13806,13812,1,8713,59,3,8953,824,111,116,59,3,8949,824,4,3,97,98,99,13820,13823,13826,59,1,8713,59,1,8951,59,1,8950,105,4,2,59,118,13836,13838,1,8716,4,3,97,98,99,13846,13849,13852,59,1,8716,59,1,8958,59,1,8957,4,3,97,111,114,13863,13892,13899,114,4,4,59,97,115,116,13874,13876,13883,13888,1,8742,108,108,101,108,59,1,8742,108,59,3,11005,8421,59,3,8706,824,108,105,110,116,59,1,10772,4,3,59,99,101,13907,13909,13914,1,8832,117,101,59,1,8928,4,2,59,99,13920,13923,3,10927,824,4,2,59,101,13929,13931,1,8832,113,59,3,10927,824,4,4,65,97,105,116,13946,13951,13971,13982,114,114,59,1,8655,114,114,4,3,59,99,119,13961,13963,13967,1,8603,59,3,10547,824,59,3,8605,824,103,104,116,97,114,114,111,119,59,1,8603,114,105,4,2,59,101,13990,13992,1,8939,59,1,8941,4,7,99,104,105,109,112,113,117,14011,14036,14060,14080,14085,14090,14106,4,4,59,99,101,114,14021,14023,14028,14032,1,8833,117,101,59,1,8929,59,3,10928,824,59,3,55349,56515,111,114,116,4,2,109,112,14045,14050,105,100,59,1,8740,97,114,97,108,108,101,108,59,1,8742,109,4,2,59,101,14067,14069,1,8769,4,2,59,113,14075,14077,1,8772,59,1,8772,105,100,59,1,8740,97,114,59,1,8742,115,117,4,2,98,112,14098,14102,101,59,1,8930,101,59,1,8931,4,3,98,99,112,14114,14157,14171,4,4,59,69,101,115,14124,14126,14130,14133,1,8836,59,3,10949,824,59,1,8840,101,116,4,2,59,101,14141,14144,3,8834,8402,113,4,2,59,113,14151,14153,1,8840,59,3,10949,824,99,4,2,59,101,14164,14166,1,8833,113,59,3,10928,824,4,4,59,69,101,115,14181,14183,14187,14190,1,8837,59,3,10950,824,59,1,8841,101,116,4,2,59,101,14198,14201,3,8835,8402,113,4,2,59,113,14208,14210,1,8841,59,3,10950,824,4,4,103,105,108,114,14224,14228,14238,14242,108,59,1,8825,108,100,101,5,241,1,59,14236,1,241,103,59,1,8824,105,97,110,103,108,101,4,2,108,114,14254,14269,101,102,116,4,2,59,101,14263,14265,1,8938,113,59,1,8940,105,103,104,116,4,2,59,101,14279,14281,1,8939,113,59,1,8941,4,2,59,109,14291,14293,1,957,4,3,59,101,115,14301,14303,14308,1,35,114,111,59,1,8470,112,59,1,8199,4,9,68,72,97,100,103,105,108,114,115,14332,14338,14344,14349,14355,14369,14376,14408,14426,97,115,104,59,1,8877,97,114,114,59,1,10500,112,59,3,8781,8402,97,115,104,59,1,8876,4,2,101,116,14361,14365,59,3,8805,8402,59,3,62,8402,110,102,105,110,59,1,10718,4,3,65,101,116,14384,14389,14393,114,114,59,1,10498,59,3,8804,8402,4,2,59,114,14399,14402,3,60,8402,105,101,59,3,8884,8402,4,2,65,116,14414,14419,114,114,59,1,10499,114,105,101,59,3,8885,8402,105,109,59,3,8764,8402,4,3,65,97,110,14440,14445,14468,114,114,59,1,8662,114,4,2,104,114,14452,14456,107,59,1,10531,4,2,59,111,14462,14464,1,8598,119,59,1,8598,101,97,114,59,1,10535,4,18,83,97,99,100,101,102,103,104,105,108,109,111,112,114,115,116,117,118,14512,14515,14535,14560,14597,14603,14618,14643,14657,14662,14701,14741,14747,14769,14851,14877,14907,14916,59,1,9416,4,2,99,115,14521,14531,117,116,101,5,243,1,59,14529,1,243,116,59,1,8859,4,2,105,121,14541,14557,114,4,2,59,99,14548,14550,1,8858,5,244,1,59,14555,1,244,59,1,1086,4,5,97,98,105,111,115,14572,14577,14583,14587,14591,115,104,59,1,8861,108,97,99,59,1,337,118,59,1,10808,116,59,1,8857,111,108,100,59,1,10684,108,105,103,59,1,339,4,2,99,114,14609,14614,105,114,59,1,10687,59,3,55349,56620,4,3,111,114,116,14626,14630,14640,110,59,1,731,97,118,101,5,242,1,59,14638,1,242,59,1,10689,4,2,98,109,14649,14654,97,114,59,1,10677,59,1,937,110,116,59,1,8750,4,4,97,99,105,116,14672,14677,14693,14698,114,114,59,1,8634,4,2,105,114,14683,14687,114,59,1,10686,111,115,115,59,1,10683,110,101,59,1,8254,59,1,10688,4,3,97,101,105,14709,14714,14719,99,114,59,1,333,103,97,59,1,969,4,3,99,100,110,14727,14733,14736,114,111,110,59,1,959,59,1,10678,117,115,59,1,8854,112,102,59,3,55349,56672,4,3,97,101,108,14755,14759,14764,114,59,1,10679,114,112,59,1,10681,117,115,59,1,8853,4,7,59,97,100,105,111,115,118,14785,14787,14792,14831,14837,14841,14848,1,8744,114,114,59,1,8635,4,4,59,101,102,109,14802,14804,14817,14824,1,10845,114,4,2,59,111,14811,14813,1,8500,102,59,1,8500,5,170,1,59,14822,1,170,5,186,1,59,14829,1,186,103,111,102,59,1,8886,114,59,1,10838,108,111,112,101,59,1,10839,59,1,10843,4,3,99,108,111,14859,14863,14873,114,59,1,8500,97,115,104,5,248,1,59,14871,1,248,108,59,1,8856,105,4,2,108,109,14884,14893,100,101,5,245,1,59,14891,1,245,101,115,4,2,59,97,14901,14903,1,8855,115,59,1,10806,109,108,5,246,1,59,14914,1,246,98,97,114,59,1,9021,4,12,97,99,101,102,104,105,108,109,111,114,115,117,14948,14992,14996,15033,15038,15068,15090,15189,15192,15222,15427,15441,114,4,4,59,97,115,116,14959,14961,14976,14989,1,8741,5,182,2,59,108,14968,14970,1,182,108,101,108,59,1,8741,4,2,105,108,14982,14986,109,59,1,10995,59,1,11005,59,1,8706,121,59,1,1087,114,4,5,99,105,109,112,116,15009,15014,15019,15024,15027,110,116,59,1,37,111,100,59,1,46,105,108,59,1,8240,59,1,8869,101,110,107,59,1,8241,114,59,3,55349,56621,4,3,105,109,111,15046,15057,15063,4,2,59,118,15052,15054,1,966,59,1,981,109,97,116,59,1,8499,110,101,59,1,9742,4,3,59,116,118,15076,15078,15087,1,960,99,104,102,111,114,107,59,1,8916,59,1,982,4,2,97,117,15096,15119,110,4,2,99,107,15103,15115,107,4,2,59,104,15110,15112,1,8463,59,1,8462,118,59,1,8463,115,4,9,59,97,98,99,100,101,109,115,116,15140,15142,15148,15151,15156,15168,15171,15179,15184,1,43,99,105,114,59,1,10787,59,1,8862,105,114,59,1,10786,4,2,111,117,15162,15165,59,1,8724,59,1,10789,59,1,10866,110,5,177,1,59,15177,1,177,105,109,59,1,10790,119,111,59,1,10791,59,1,177,4,3,105,112,117,15200,15208,15213,110,116,105,110,116,59,1,10773,102,59,3,55349,56673,110,100,5,163,1,59,15220,1,163,4,10,59,69,97,99,101,105,110,111,115,117,15244,15246,15249,15253,15258,15334,15347,15367,15416,15421,1,8826,59,1,10931,112,59,1,10935,117,101,59,1,8828,4,2,59,99,15264,15266,1,10927,4,6,59,97,99,101,110,115,15280,15282,15290,15299,15303,15329,1,8826,112,112,114,111,120,59,1,10935,117,114,108,121,101,113,59,1,8828,113,59,1,10927,4,3,97,101,115,15311,15319,15324,112,112,114,111,120,59,1,10937,113,113,59,1,10933,105,109,59,1,8936,105,109,59,1,8830,109,101,4,2,59,115,15342,15344,1,8242,59,1,8473,4,3,69,97,115,15355,15358,15362,59,1,10933,112,59,1,10937,105,109,59,1,8936,4,3,100,102,112,15375,15378,15404,59,1,8719,4,3,97,108,115,15386,15392,15398,108,97,114,59,1,9006,105,110,101,59,1,8978,117,114,102,59,1,8979,4,2,59,116,15410,15412,1,8733,111,59,1,8733,105,109,59,1,8830,114,101,108,59,1,8880,4,2,99,105,15433,15438,114,59,3,55349,56517,59,1,968,110,99,115,112,59,1,8200,4,6,102,105,111,112,115,117,15462,15467,15472,15478,15485,15491,114,59,3,55349,56622,110,116,59,1,10764,112,102,59,3,55349,56674,114,105,109,101,59,1,8279,99,114,59,3,55349,56518,4,3,97,101,111,15499,15520,15534,116,4,2,101,105,15506,15515,114,110,105,111,110,115,59,1,8461,110,116,59,1,10774,115,116,4,2,59,101,15528,15530,1,63,113,59,1,8799,116,5,34,1,59,15540,1,34,4,21,65,66,72,97,98,99,100,101,102,104,105,108,109,110,111,112,114,115,116,117,120,15586,15609,15615,15620,15796,15855,15893,15931,15977,16001,16039,16183,16204,16222,16228,16285,16312,16318,16363,16408,16416,4,3,97,114,116,15594,15599,15603,114,114,59,1,8667,114,59,1,8658,97,105,108,59,1,10524,97,114,114,59,1,10511,97,114,59,1,10596,4,7,99,100,101,110,113,114,116,15636,15651,15656,15664,15687,15696,15770,4,2,101,117,15642,15646,59,3,8765,817,116,101,59,1,341,105,99,59,1,8730,109,112,116,121,118,59,1,10675,103,4,4,59,100,101,108,15675,15677,15680,15683,1,10217,59,1,10642,59,1,10661,101,59,1,10217,117,111,5,187,1,59,15694,1,187,114,4,11,59,97,98,99,102,104,108,112,115,116,119,15721,15723,15727,15739,15742,15746,15750,15754,15758,15763,15767,1,8594,112,59,1,10613,4,2,59,102,15733,15735,1,8677,115,59,1,10528,59,1,10547,115,59,1,10526,107,59,1,8618,112,59,1,8620,108,59,1,10565,105,109,59,1,10612,108,59,1,8611,59,1,8605,4,2,97,105,15776,15781,105,108,59,1,10522,111,4,2,59,110,15788,15790,1,8758,97,108,115,59,1,8474,4,3,97,98,114,15804,15809,15814,114,114,59,1,10509,114,107,59,1,10099,4,2,97,107,15820,15833,99,4,2,101,107,15827,15830,59,1,125,59,1,93,4,2,101,115,15839,15842,59,1,10636,108,4,2,100,117,15849,15852,59,1,10638,59,1,10640,4,4,97,101,117,121,15865,15871,15886,15890,114,111,110,59,1,345,4,2,100,105,15877,15882,105,108,59,1,343,108,59,1,8969,98,59,1,125,59,1,1088,4,4,99,108,113,115,15903,15907,15914,15927,97,59,1,10551,100,104,97,114,59,1,10601,117,111,4,2,59,114,15922,15924,1,8221,59,1,8221,104,59,1,8627,4,3,97,99,103,15939,15966,15970,108,4,4,59,105,112,115,15950,15952,15957,15963,1,8476,110,101,59,1,8475,97,114,116,59,1,8476,59,1,8477,116,59,1,9645,5,174,1,59,15975,1,174,4,3,105,108,114,15985,15991,15997,115,104,116,59,1,10621,111,111,114,59,1,8971,59,3,55349,56623,4,2,97,111,16007,16028,114,4,2,100,117,16014,16017,59,1,8641,4,2,59,108,16023,16025,1,8640,59,1,10604,4,2,59,118,16034,16036,1,961,59,1,1009,4,3,103,110,115,16047,16167,16171,104,116,4,6,97,104,108,114,115,116,16063,16081,16103,16130,16143,16155,114,114,111,119,4,2,59,116,16073,16075,1,8594,97,105,108,59,1,8611,97,114,112,111,111,110,4,2,100,117,16093,16099,111,119,110,59,1,8641,112,59,1,8640,101,102,116,4,2,97,104,16112,16120,114,114,111,119,115,59,1,8644,97,114,112,111,111,110,115,59,1,8652,105,103,104,116,97,114,114,111,119,115,59,1,8649,113,117,105,103,97,114,114,111,119,59,1,8605,104,114,101,101,116,105,109,101,115,59,1,8908,103,59,1,730,105,110,103,100,111,116,115,101,113,59,1,8787,4,3,97,104,109,16191,16196,16201,114,114,59,1,8644,97,114,59,1,8652,59,1,8207,111,117,115,116,4,2,59,97,16214,16216,1,9137,99,104,101,59,1,9137,109,105,100,59,1,10990,4,4,97,98,112,116,16238,16252,16257,16278,4,2,110,114,16244,16248,103,59,1,10221,114,59,1,8702,114,107,59,1,10215,4,3,97,102,108,16265,16269,16273,114,59,1,10630,59,3,55349,56675,117,115,59,1,10798,105,109,101,115,59,1,10805,4,2,97,112,16291,16304,114,4,2,59,103,16298,16300,1,41,116,59,1,10644,111,108,105,110,116,59,1,10770,97,114,114,59,1,8649,4,4,97,99,104,113,16328,16334,16339,16342,113,117,111,59,1,8250,114,59,3,55349,56519,59,1,8625,4,2,98,117,16348,16351,59,1,93,111,4,2,59,114,16358,16360,1,8217,59,1,8217,4,3,104,105,114,16371,16377,16383,114,101,101,59,1,8908,109,101,115,59,1,8906,105,4,4,59,101,102,108,16394,16396,16399,16402,1,9657,59,1,8885,59,1,9656,116,114,105,59,1,10702,108,117,104,97,114,59,1,10600,59,1,8478,4,19,97,98,99,100,101,102,104,105,108,109,111,112,113,114,115,116,117,119,122,16459,16466,16472,16572,16590,16672,16687,16746,16844,16850,16924,16963,16988,17115,17121,17154,17206,17614,17656,99,117,116,101,59,1,347,113,117,111,59,1,8218,4,10,59,69,97,99,101,105,110,112,115,121,16494,16496,16499,16513,16518,16531,16536,16556,16564,16569,1,8827,59,1,10932,4,2,112,114,16505,16508,59,1,10936,111,110,59,1,353,117,101,59,1,8829,4,2,59,100,16524,16526,1,10928,105,108,59,1,351,114,99,59,1,349,4,3,69,97,115,16544,16547,16551,59,1,10934,112,59,1,10938,105,109,59,1,8937,111,108,105,110,116,59,1,10771,105,109,59,1,8831,59,1,1089,111,116,4,3,59,98,101,16582,16584,16587,1,8901,59,1,8865,59,1,10854,4,7,65,97,99,109,115,116,120,16606,16611,16634,16642,16646,16652,16668,114,114,59,1,8664,114,4,2,104,114,16618,16622,107,59,1,10533,4,2,59,111,16628,16630,1,8600,119,59,1,8600,116,5,167,1,59,16640,1,167,105,59,1,59,119,97,114,59,1,10537,109,4,2,105,110,16659,16665,110,117,115,59,1,8726,59,1,8726,116,59,1,10038,114,4,2,59,111,16679,16682,3,55349,56624,119,110,59,1,8994,4,4,97,99,111,121,16697,16702,16716,16739,114,112,59,1,9839,4,2,104,121,16708,16713,99,121,59,1,1097,59,1,1096,114,116,4,2,109,112,16724,16729,105,100,59,1,8739,97,114,97,108,108,101,108,59,1,8741,5,173,1,59,16744,1,173,4,2,103,109,16752,16770,109,97,4,3,59,102,118,16762,16764,16767,1,963,59,1,962,59,1,962,4,8,59,100,101,103,108,110,112,114,16788,16790,16795,16806,16817,16828,16832,16838,1,8764,111,116,59,1,10858,4,2,59,113,16801,16803,1,8771,59,1,8771,4,2,59,69,16812,16814,1,10910,59,1,10912,4,2,59,69,16823,16825,1,10909,59,1,10911,101,59,1,8774,108,117,115,59,1,10788,97,114,114,59,1,10610,97,114,114,59,1,8592,4,4,97,101,105,116,16860,16883,16891,16904,4,2,108,115,16866,16878,108,115,101,116,109,105,110,117,115,59,1,8726,104,112,59,1,10803,112,97,114,115,108,59,1,10724,4,2,100,108,16897,16900,59,1,8739,101,59,1,8995,4,2,59,101,16910,16912,1,10922,4,2,59,115,16918,16920,1,10924,59,3,10924,65024,4,3,102,108,112,16932,16938,16958,116,99,121,59,1,1100,4,2,59,98,16944,16946,1,47,4,2,59,97,16952,16954,1,10692,114,59,1,9023,102,59,3,55349,56676,97,4,2,100,114,16970,16985,101,115,4,2,59,117,16978,16980,1,9824,105,116,59,1,9824,59,1,8741,4,3,99,115,117,16996,17028,17089,4,2,97,117,17002,17015,112,4,2,59,115,17009,17011,1,8851,59,3,8851,65024,112,4,2,59,115,17022,17024,1,8852,59,3,8852,65024,117,4,2,98,112,17035,17062,4,3,59,101,115,17043,17045,17048,1,8847,59,1,8849,101,116,4,2,59,101,17056,17058,1,8847,113,59,1,8849,4,3,59,101,115,17070,17072,17075,1,8848,59,1,8850,101,116,4,2,59,101,17083,17085,1,8848,113,59,1,8850,4,3,59,97,102,17097,17099,17112,1,9633,114,4,2,101,102,17106,17109,59,1,9633,59,1,9642,59,1,9642,97,114,114,59,1,8594,4,4,99,101,109,116,17131,17136,17142,17148,114,59,3,55349,56520,116,109,110,59,1,8726,105,108,101,59,1,8995,97,114,102,59,1,8902,4,2,97,114,17160,17172,114,4,2,59,102,17167,17169,1,9734,59,1,9733,4,2,97,110,17178,17202,105,103,104,116,4,2,101,112,17188,17197,112,115,105,108,111,110,59,1,1013,104,105,59,1,981,115,59,1,175,4,5,98,99,109,110,112,17218,17351,17420,17423,17427,4,9,59,69,100,101,109,110,112,114,115,17238,17240,17243,17248,17261,17267,17279,17285,17291,1,8834,59,1,10949,111,116,59,1,10941,4,2,59,100,17254,17256,1,8838,111,116,59,1,10947,117,108,116,59,1,10945,4,2,69,101,17273,17276,59,1,10955,59,1,8842,108,117,115,59,1,10943,97,114,114,59,1,10617,4,3,101,105,117,17299,17335,17339,116,4,3,59,101,110,17308,17310,17322,1,8834,113,4,2,59,113,17317,17319,1,8838,59,1,10949,101,113,4,2,59,113,17330,17332,1,8842,59,1,10955,109,59,1,10951,4,2,98,112,17345,17348,59,1,10965,59,1,10963,99,4,6,59,97,99,101,110,115,17366,17368,17376,17385,17389,17415,1,8827,112,112,114,111,120,59,1,10936,117,114,108,121,101,113,59,1,8829,113,59,1,10928,4,3,97,101,115,17397,17405,17410,112,112,114,111,120,59,1,10938,113,113,59,1,10934,105,109,59,1,8937,105,109,59,1,8831,59,1,8721,103,59,1,9834,4,13,49,50,51,59,69,100,101,104,108,109,110,112,115,17455,17462,17469,17476,17478,17481,17496,17509,17524,17530,17536,17548,17554,5,185,1,59,17460,1,185,5,178,1,59,17467,1,178,5,179,1,59,17474,1,179,1,8835,59,1,10950,4,2,111,115,17487,17491,116,59,1,10942,117,98,59,1,10968,4,2,59,100,17502,17504,1,8839,111,116,59,1,10948,115,4,2,111,117,17516,17520,108,59,1,10185,98,59,1,10967,97,114,114,59,1,10619,117,108,116,59,1,10946,4,2,69,101,17542,17545,59,1,10956,59,1,8843,108,117,115,59,1,10944,4,3,101,105,117,17562,17598,17602,116,4,3,59,101,110,17571,17573,17585,1,8835,113,4,2,59,113,17580,17582,1,8839,59,1,10950,101,113,4,2,59,113,17593,17595,1,8843,59,1,10956,109,59,1,10952,4,2,98,112,17608,17611,59,1,10964,59,1,10966,4,3,65,97,110,17622,17627,17650,114,114,59,1,8665,114,4,2,104,114,17634,17638,107,59,1,10534,4,2,59,111,17644,17646,1,8601,119,59,1,8601,119,97,114,59,1,10538,108,105,103,5,223,1,59,17664,1,223,4,13,97,98,99,100,101,102,104,105,111,112,114,115,119,17694,17709,17714,17737,17742,17749,17754,17860,17905,17957,17964,18090,18122,4,2,114,117,17700,17706,103,101,116,59,1,8982,59,1,964,114,107,59,1,9140,4,3,97,101,121,17722,17728,17734,114,111,110,59,1,357,100,105,108,59,1,355,59,1,1090,111,116,59,1,8411,108,114,101,99,59,1,8981,114,59,3,55349,56625,4,4,101,105,107,111,17764,17805,17836,17851,4,2,114,116,17770,17786,101,4,2,52,102,17777,17780,59,1,8756,111,114,101,59,1,8756,97,4,3,59,115,118,17795,17797,17802,1,952,121,109,59,1,977,59,1,977,4,2,99,110,17811,17831,107,4,2,97,115,17818,17826,112,112,114,111,120,59,1,8776,105,109,59,1,8764,115,112,59,1,8201,4,2,97,115,17842,17846,112,59,1,8776,105,109,59,1,8764,114,110,5,254,1,59,17858,1,254,4,3,108,109,110,17868,17873,17901,100,101,59,1,732,101,115,5,215,3,59,98,100,17884,17886,17898,1,215,4,2,59,97,17892,17894,1,8864,114,59,1,10801,59,1,10800,116,59,1,8749,4,3,101,112,115,17913,17917,17953,97,59,1,10536,4,4,59,98,99,102,17927,17929,17934,17939,1,8868,111,116,59,1,9014,105,114,59,1,10993,4,2,59,111,17945,17948,3,55349,56677,114,107,59,1,10970,97,59,1,10537,114,105,109,101,59,1,8244,4,3,97,105,112,17972,17977,18082,100,101,59,1,8482,4,7,97,100,101,109,112,115,116,17993,18051,18056,18059,18066,18072,18076,110,103,108,101,4,5,59,100,108,113,114,18009,18011,18017,18032,18035,1,9653,111,119,110,59,1,9663,101,102,116,4,2,59,101,18026,18028,1,9667,113,59,1,8884,59,1,8796,105,103,104,116,4,2,59,101,18045,18047,1,9657,113,59,1,8885,111,116,59,1,9708,59,1,8796,105,110,117,115,59,1,10810,108,117,115,59,1,10809,98,59,1,10701,105,109,101,59,1,10811,101,122,105,117,109,59,1,9186,4,3,99,104,116,18098,18111,18116,4,2,114,121,18104,18108,59,3,55349,56521,59,1,1094,99,121,59,1,1115,114,111,107,59,1,359,4,2,105,111,18128,18133,120,116,59,1,8812,104,101,97,100,4,2,108,114,18143,18154,101,102,116,97,114,114,111,119,59,1,8606,105,103,104,116,97,114,114,111,119,59,1,8608,4,18,65,72,97,98,99,100,102,103,104,108,109,111,112,114,115,116,117,119,18204,18209,18214,18234,18250,18268,18292,18308,18319,18343,18379,18397,18413,18504,18547,18553,18584,18603,114,114,59,1,8657,97,114,59,1,10595,4,2,99,114,18220,18230,117,116,101,5,250,1,59,18228,1,250,114,59,1,8593,114,4,2,99,101,18241,18245,121,59,1,1118,118,101,59,1,365,4,2,105,121,18256,18265,114,99,5,251,1,59,18263,1,251,59,1,1091,4,3,97,98,104,18276,18281,18287,114,114,59,1,8645,108,97,99,59,1,369,97,114,59,1,10606,4,2,105,114,18298,18304,115,104,116,59,1,10622,59,3,55349,56626,114,97,118,101,5,249,1,59,18317,1,249,4,2,97,98,18325,18338,114,4,2,108,114,18332,18335,59,1,8639,59,1,8638,108,107,59,1,9600,4,2,99,116,18349,18374,4,2,111,114,18355,18369,114,110,4,2,59,101,18363,18365,1,8988,114,59,1,8988,111,112,59,1,8975,114,105,59,1,9720,4,2,97,108,18385,18390,99,114,59,1,363,5,168,1,59,18395,1,168,4,2,103,112,18403,18408,111,110,59,1,371,102,59,3,55349,56678,4,6,97,100,104,108,115,117,18427,18434,18445,18470,18475,18494,114,114,111,119,59,1,8593,111,119,110,97,114,114,111,119,59,1,8597,97,114,112,111,111,110,4,2,108,114,18457,18463,101,102,116,59,1,8639,105,103,104,116,59,1,8638,117,115,59,1,8846,105,4,3,59,104,108,18484,18486,18489,1,965,59,1,978,111,110,59,1,965,112,97,114,114,111,119,115,59,1,8648,4,3,99,105,116,18512,18537,18542,4,2,111,114,18518,18532,114,110,4,2,59,101,18526,18528,1,8989,114,59,1,8989,111,112,59,1,8974,110,103,59,1,367,114,105,59,1,9721,99,114,59,3,55349,56522,4,3,100,105,114,18561,18566,18572,111,116,59,1,8944,108,100,101,59,1,361,105,4,2,59,102,18579,18581,1,9653,59,1,9652,4,2,97,109,18590,18595,114,114,59,1,8648,108,5,252,1,59,18601,1,252,97,110,103,108,101,59,1,10663,4,15,65,66,68,97,99,100,101,102,108,110,111,112,114,115,122,18643,18648,18661,18667,18847,18851,18857,18904,18909,18915,18931,18937,18943,18949,18996,114,114,59,1,8661,97,114,4,2,59,118,18656,18658,1,10984,59,1,10985,97,115,104,59,1,8872,4,2,110,114,18673,18679,103,114,116,59,1,10652,4,7,101,107,110,112,114,115,116,18695,18704,18711,18720,18742,18754,18810,112,115,105,108,111,110,59,1,1013,97,112,112,97,59,1,1008,111,116,104,105,110,103,59,1,8709,4,3,104,105,114,18728,18732,18735,105,59,1,981,59,1,982,111,112,116,111,59,1,8733,4,2,59,104,18748,18750,1,8597,111,59,1,1009,4,2,105,117,18760,18766,103,109,97,59,1,962,4,2,98,112,18772,18791,115,101,116,110,101,113,4,2,59,113,18784,18787,3,8842,65024,59,3,10955,65024,115,101,116,110,101,113,4,2,59,113,18803,18806,3,8843,65024,59,3,10956,65024,4,2,104,114,18816,18822,101,116,97,59,1,977,105,97,110,103,108,101,4,2,108,114,18834,18840,101,102,116,59,1,8882,105,103,104,116,59,1,8883,121,59,1,1074,97,115,104,59,1,8866,4,3,101,108,114,18865,18884,18890,4,3,59,98,101,18873,18875,18880,1,8744,97,114,59,1,8891,113,59,1,8794,108,105,112,59,1,8942,4,2,98,116,18896,18901,97,114,59,1,124,59,1,124,114,59,3,55349,56627,116,114,105,59,1,8882,115,117,4,2,98,112,18923,18927,59,3,8834,8402,59,3,8835,8402,112,102,59,3,55349,56679,114,111,112,59,1,8733,116,114,105,59,1,8883,4,2,99,117,18955,18960,114,59,3,55349,56523,4,2,98,112,18966,18981,110,4,2,69,101,18973,18977,59,3,10955,65024,59,3,8842,65024,110,4,2,69,101,18988,18992,59,3,10956,65024,59,3,8843,65024,105,103,122,97,103,59,1,10650,4,7,99,101,102,111,112,114,115,19020,19026,19061,19066,19072,19075,19089,105,114,99,59,1,373,4,2,100,105,19032,19055,4,2,98,103,19038,19043,97,114,59,1,10847,101,4,2,59,113,19050,19052,1,8743,59,1,8793,101,114,112,59,1,8472,114,59,3,55349,56628,112,102,59,3,55349,56680,59,1,8472,4,2,59,101,19081,19083,1,8768,97,116,104,59,1,8768,99,114,59,3,55349,56524,4,14,99,100,102,104,105,108,109,110,111,114,115,117,118,119,19125,19146,19152,19157,19173,19176,19192,19197,19202,19236,19252,19269,19286,19291,4,3,97,105,117,19133,19137,19142,112,59,1,8898,114,99,59,1,9711,112,59,1,8899,116,114,105,59,1,9661,114,59,3,55349,56629,4,2,65,97,19163,19168,114,114,59,1,10234,114,114,59,1,10231,59,1,958,4,2,65,97,19182,19187,114,114,59,1,10232,114,114,59,1,10229,97,112,59,1,10236,105,115,59,1,8955,4,3,100,112,116,19210,19215,19230,111,116,59,1,10752,4,2,102,108,19221,19225,59,3,55349,56681,117,115,59,1,10753,105,109,101,59,1,10754,4,2,65,97,19242,19247,114,114,59,1,10233,114,114,59,1,10230,4,2,99,113,19258,19263,114,59,3,55349,56525,99,117,112,59,1,10758,4,2,112,116,19275,19281,108,117,115,59,1,10756,114,105,59,1,9651,101,101,59,1,8897,101,100,103,101,59,1,8896,4,8,97,99,101,102,105,111,115,117,19316,19335,19349,19357,19362,19367,19373,19379,99,4,2,117,121,19323,19332,116,101,5,253,1,59,19330,1,253,59,1,1103,4,2,105,121,19341,19346,114,99,59,1,375,59,1,1099,110,5,165,1,59,19355,1,165,114,59,3,55349,56630,99,121,59,1,1111,112,102,59,3,55349,56682,99,114,59,3,55349,56526,4,2,99,109,19385,19389,121,59,1,1102,108,5,255,1,59,19395,1,255,4,10,97,99,100,101,102,104,105,111,115,119,19419,19426,19441,19446,19462,19467,19472,19480,19486,19492,99,117,116,101,59,1,378,4,2,97,121,19432,19438,114,111,110,59,1,382,59,1,1079,111,116,59,1,380,4,2,101,116,19452,19458,116,114,102,59,1,8488,97,59,1,950,114,59,3,55349,56631,99,121,59,1,1078,103,114,97,114,114,59,1,8669,112,102,59,3,55349,56683,99,114,59,3,55349,56527,4,2,106,110,19498,19501,59,1,8205,106,59,1,8204])),ET}var ST,Qw;function _0(){if(Qw)return ST;Qw=1;const t=Ovn(),e=th(),n=Mvn(),o=nh(),r=e.CODE_POINTS,i=e.CODE_POINT_SEQUENCES,s={128:8364,130:8218,131:402,132:8222,133:8230,134:8224,135:8225,136:710,137:8240,138:352,139:8249,140:338,142:381,145:8216,146:8217,147:8220,148:8221,149:8226,150:8211,151:8212,152:732,153:8482,154:353,155:8250,156:339,158:382,159:376},a=1,l=2,c=4,u=a|l|c,d="DATA_STATE",f="RCDATA_STATE",T="RAWTEXT_STATE",h="SCRIPT_DATA_STATE",g="PLAINTEXT_STATE",Q="TAG_OPEN_STATE",m="END_TAG_OPEN_STATE",_="TAG_NAME_STATE",v="RCDATA_LESS_THAN_SIGN_STATE",b="RCDATA_END_TAG_OPEN_STATE",y="RCDATA_END_TAG_NAME_STATE",E="RAWTEXT_LESS_THAN_SIGN_STATE",x="RAWTEXT_END_TAG_OPEN_STATE",L="RAWTEXT_END_TAG_NAME_STATE",C="SCRIPT_DATA_LESS_THAN_SIGN_STATE",A="SCRIPT_DATA_END_TAG_OPEN_STATE",O="SCRIPT_DATA_END_TAG_NAME_STATE",R="SCRIPT_DATA_ESCAPE_START_STATE",I="SCRIPT_DATA_ESCAPE_START_DASH_STATE",M="SCRIPT_DATA_ESCAPED_STATE",$="SCRIPT_DATA_ESCAPED_DASH_STATE",U="SCRIPT_DATA_ESCAPED_DASH_DASH_STATE",G="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE",P="SCRIPT_DATA_ESCAPED_END_TAG_OPEN_STATE",F="SCRIPT_DATA_ESCAPED_END_TAG_NAME_STATE",B="SCRIPT_DATA_DOUBLE_ESCAPE_START_STATE",q="SCRIPT_DATA_DOUBLE_ESCAPED_STATE",ee="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_STATE",K="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH_STATE",j="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE",ue="SCRIPT_DATA_DOUBLE_ESCAPE_END_STATE",pe="BEFORE_ATTRIBUTE_NAME_STATE",z="ATTRIBUTE_NAME_STATE",te="AFTER_ATTRIBUTE_NAME_STATE",ae="BEFORE_ATTRIBUTE_VALUE_STATE",fe="ATTRIBUTE_VALUE_DOUBLE_QUOTED_STATE",Qe="ATTRIBUTE_VALUE_SINGLE_QUOTED_STATE",Y="ATTRIBUTE_VALUE_UNQUOTED_STATE",W="AFTER_ATTRIBUTE_VALUE_QUOTED_STATE",X="SELF_CLOSING_START_TAG_STATE",se="BOGUS_COMMENT_STATE",le="MARKUP_DECLARATION_OPEN_STATE",de="COMMENT_START_STATE",Te="COMMENT_START_DASH_STATE",ge="COMMENT_STATE",_e="COMMENT_LESS_THAN_SIGN_STATE",ve="COMMENT_LESS_THAN_SIGN_BANG_STATE",$e="COMMENT_LESS_THAN_SIGN_BANG_DASH_STATE",be="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH_STATE",Ne="COMMENT_END_DASH_STATE",Be="COMMENT_END_STATE",Ue="COMMENT_END_BANG_STATE",ct="DOCTYPE_STATE",at="BEFORE_DOCTYPE_NAME_STATE",Dt="DOCTYPE_NAME_STATE",Bt="AFTER_DOCTYPE_NAME_STATE",fn="AFTER_DOCTYPE_PUBLIC_KEYWORD_STATE",Ft="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER_STATE",vt="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED_STATE",Ut="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED_STATE",St="AFTER_DOCTYPE_PUBLIC_IDENTIFIER_STATE",un="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS_STATE",rr="AFTER_DOCTYPE_SYSTEM_KEYWORD_STATE",Gn="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER_STATE",Bn="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE",Tt="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE",Mn="AFTER_DOCTYPE_SYSTEM_IDENTIFIER_STATE",It="BOGUS_DOCTYPE_STATE",bn="CDATA_SECTION_STATE",re="CDATA_SECTION_BRACKET_STATE",he="CDATA_SECTION_END_STATE",Oe="CHARACTER_REFERENCE_STATE",Xe="NAMED_CHARACTER_REFERENCE_STATE",qt="AMBIGUOS_AMPERSAND_STATE",$t="NUMERIC_CHARACTER_REFERENCE_STATE",qe="HEXADEMICAL_CHARACTER_REFERENCE_START_STATE",He="DECIMAL_CHARACTER_REFERENCE_START_STATE",it="HEXADEMICAL_CHARACTER_REFERENCE_STATE",xt="DECIMAL_CHARACTER_REFERENCE_STATE",Mt="NUMERIC_CHARACTER_REFERENCE_END_STATE";function pt(ke){return ke===r.SPACE||ke===r.LINE_FEED||ke===r.TABULATION||ke===r.FORM_FEED}function mr(ke){return ke>=r.DIGIT_0&&ke<=r.DIGIT_9}function pn(ke){return ke>=r.LATIN_CAPITAL_A&&ke<=r.LATIN_CAPITAL_Z}function gr(ke){return ke>=r.LATIN_SMALL_A&&ke<=r.LATIN_SMALL_Z}function Gt(ke){return gr(ke)||pn(ke)}function Xi(ke){return Gt(ke)||mr(ke)}function Ji(ke){return ke>=r.LATIN_CAPITAL_A&&ke<=r.LATIN_CAPITAL_F}function qo(ke){return ke>=r.LATIN_SMALL_A&&ke<=r.LATIN_SMALL_F}function Go(ke){return mr(ke)||Ji(ke)||qo(ke)}function Pr(ke){return ke+32}function De(ke){return ke<=65535?String.fromCharCode(ke):(ke-=65536,String.fromCharCode(ke>>>10&1023|55296)+String.fromCharCode(56320|ke&1023))}function ie(ke){return String.fromCharCode(Pr(ke))}function we(ke,V){const tt=n[++ke];let kt=++ke,Vt=kt+tt-1;for(;kt<=Vt;){const Wt=kt+Vt>>>1,_t=n[Wt];if(_tV)Vt=Wt-1;else return n[Wt+tt]}return-1}class Ae{constructor(){this.preprocessor=new t,this.tokenQueue=[],this.allowCDATA=!1,this.state=d,this.returnState="",this.charRefCode=-1,this.tempBuff=[],this.lastStartTagName="",this.consumedAfterSnapshot=-1,this.active=!1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr=null}_err(){}_errOnNextCodePoint(V){this._consume(),this._err(V),this._unconsume()}getNextToken(){for(;!this.tokenQueue.length&&this.active;){this.consumedAfterSnapshot=0;const V=this._consume();this._ensureHibernation()||this[this.state](V)}return this.tokenQueue.shift()}write(V,tt){this.active=!0,this.preprocessor.write(V,tt)}insertHtmlAtCurrentPos(V){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(V)}_ensureHibernation(){if(this.preprocessor.endOfChunkHit){for(;this.consumedAfterSnapshot>0;this.consumedAfterSnapshot--)this.preprocessor.retreat();return this.active=!1,this.tokenQueue.push({type:Ae.HIBERNATION_TOKEN}),!0}return!1}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_unconsume(){this.consumedAfterSnapshot--,this.preprocessor.retreat()}_reconsumeInState(V){this.state=V,this._unconsume()}_consumeSequenceIfMatch(V,tt,kt){let Vt=0,Wt=!0;const _t=V.length;let ye=0,Fe=tt,ht;for(;ye<_t;ye++){if(ye>0&&(Fe=this._consume(),Vt++),Fe===r.EOF){Wt=!1;break}if(ht=V[ye],Fe!==ht&&(kt||Fe!==Pr(ht))){Wt=!1;break}}if(!Wt)for(;Vt--;)this._unconsume();return Wt}_isTempBufferEqualToScriptString(){if(this.tempBuff.length!==i.SCRIPT_STRING.length)return!1;for(let V=0;V0&&this._err(o.endTagWithAttributes),V.selfClosing&&this._err(o.endTagWithTrailingSolidus)),this.tokenQueue.push(V)}_emitCurrentCharacterToken(){this.currentCharacterToken&&(this.tokenQueue.push(this.currentCharacterToken),this.currentCharacterToken=null)}_emitEOFToken(){this._createEOFToken(),this._emitCurrentToken()}_appendCharToCurrentCharacterToken(V,tt){this.currentCharacterToken&&this.currentCharacterToken.type!==V&&this._emitCurrentCharacterToken(),this.currentCharacterToken?this.currentCharacterToken.chars+=tt:this._createCharacterToken(V,tt)}_emitCodePoint(V){let tt=Ae.CHARACTER_TOKEN;pt(V)?tt=Ae.WHITESPACE_CHARACTER_TOKEN:V===r.NULL&&(tt=Ae.NULL_CHARACTER_TOKEN),this._appendCharToCurrentCharacterToken(tt,De(V))}_emitSeveralCodePoints(V){for(let tt=0;tt-1;){const Wt=n[Vt],_t=Wt")):V===r.NULL?(this._err(o.unexpectedNullCharacter),this.state=M,this._emitChars(e.REPLACEMENT_CHARACTER)):V===r.EOF?(this._err(o.eofInScriptHtmlCommentLikeText),this._emitEOFToken()):(this.state=M,this._emitCodePoint(V))}[G](V){V===r.SOLIDUS?(this.tempBuff=[],this.state=P):Gt(V)?(this.tempBuff=[],this._emitChars("<"),this._reconsumeInState(B)):(this._emitChars("<"),this._reconsumeInState(M))}[P](V){Gt(V)?(this._createEndTagToken(),this._reconsumeInState(F)):(this._emitChars("")):V===r.NULL?(this._err(o.unexpectedNullCharacter),this.state=q,this._emitChars(e.REPLACEMENT_CHARACTER)):V===r.EOF?(this._err(o.eofInScriptHtmlCommentLikeText),this._emitEOFToken()):(this.state=q,this._emitCodePoint(V))}[j](V){V===r.SOLIDUS?(this.tempBuff=[],this.state=ue,this._emitChars("/")):this._reconsumeInState(q)}[ue](V){pt(V)||V===r.SOLIDUS||V===r.GREATER_THAN_SIGN?(this.state=this._isTempBufferEqualToScriptString()?M:q,this._emitCodePoint(V)):pn(V)?(this.tempBuff.push(Pr(V)),this._emitCodePoint(V)):gr(V)?(this.tempBuff.push(V),this._emitCodePoint(V)):this._reconsumeInState(q)}[pe](V){pt(V)||(V===r.SOLIDUS||V===r.GREATER_THAN_SIGN||V===r.EOF?this._reconsumeInState(te):V===r.EQUALS_SIGN?(this._err(o.unexpectedEqualsSignBeforeAttributeName),this._createAttr("="),this.state=z):(this._createAttr(""),this._reconsumeInState(z)))}[z](V){pt(V)||V===r.SOLIDUS||V===r.GREATER_THAN_SIGN||V===r.EOF?(this._leaveAttrName(te),this._unconsume()):V===r.EQUALS_SIGN?this._leaveAttrName(ae):pn(V)?this.currentAttr.name+=ie(V):V===r.QUOTATION_MARK||V===r.APOSTROPHE||V===r.LESS_THAN_SIGN?(this._err(o.unexpectedCharacterInAttributeName),this.currentAttr.name+=De(V)):V===r.NULL?(this._err(o.unexpectedNullCharacter),this.currentAttr.name+=e.REPLACEMENT_CHARACTER):this.currentAttr.name+=De(V)}[te](V){pt(V)||(V===r.SOLIDUS?this.state=X:V===r.EQUALS_SIGN?this.state=ae:V===r.GREATER_THAN_SIGN?(this.state=d,this._emitCurrentToken()):V===r.EOF?(this._err(o.eofInTag),this._emitEOFToken()):(this._createAttr(""),this._reconsumeInState(z)))}[ae](V){pt(V)||(V===r.QUOTATION_MARK?this.state=fe:V===r.APOSTROPHE?this.state=Qe:V===r.GREATER_THAN_SIGN?(this._err(o.missingAttributeValue),this.state=d,this._emitCurrentToken()):this._reconsumeInState(Y))}[fe](V){V===r.QUOTATION_MARK?this.state=W:V===r.AMPERSAND?(this.returnState=fe,this.state=Oe):V===r.NULL?(this._err(o.unexpectedNullCharacter),this.currentAttr.value+=e.REPLACEMENT_CHARACTER):V===r.EOF?(this._err(o.eofInTag),this._emitEOFToken()):this.currentAttr.value+=De(V)}[Qe](V){V===r.APOSTROPHE?this.state=W:V===r.AMPERSAND?(this.returnState=Qe,this.state=Oe):V===r.NULL?(this._err(o.unexpectedNullCharacter),this.currentAttr.value+=e.REPLACEMENT_CHARACTER):V===r.EOF?(this._err(o.eofInTag),this._emitEOFToken()):this.currentAttr.value+=De(V)}[Y](V){pt(V)?this._leaveAttrValue(pe):V===r.AMPERSAND?(this.returnState=Y,this.state=Oe):V===r.GREATER_THAN_SIGN?(this._leaveAttrValue(d),this._emitCurrentToken()):V===r.NULL?(this._err(o.unexpectedNullCharacter),this.currentAttr.value+=e.REPLACEMENT_CHARACTER):V===r.QUOTATION_MARK||V===r.APOSTROPHE||V===r.LESS_THAN_SIGN||V===r.EQUALS_SIGN||V===r.GRAVE_ACCENT?(this._err(o.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=De(V)):V===r.EOF?(this._err(o.eofInTag),this._emitEOFToken()):this.currentAttr.value+=De(V)}[W](V){pt(V)?this._leaveAttrValue(pe):V===r.SOLIDUS?this._leaveAttrValue(X):V===r.GREATER_THAN_SIGN?(this._leaveAttrValue(d),this._emitCurrentToken()):V===r.EOF?(this._err(o.eofInTag),this._emitEOFToken()):(this._err(o.missingWhitespaceBetweenAttributes),this._reconsumeInState(pe))}[X](V){V===r.GREATER_THAN_SIGN?(this.currentToken.selfClosing=!0,this.state=d,this._emitCurrentToken()):V===r.EOF?(this._err(o.eofInTag),this._emitEOFToken()):(this._err(o.unexpectedSolidusInTag),this._reconsumeInState(pe))}[se](V){V===r.GREATER_THAN_SIGN?(this.state=d,this._emitCurrentToken()):V===r.EOF?(this._emitCurrentToken(),this._emitEOFToken()):V===r.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.data+=e.REPLACEMENT_CHARACTER):this.currentToken.data+=De(V)}[le](V){this._consumeSequenceIfMatch(i.DASH_DASH_STRING,V,!0)?(this._createCommentToken(),this.state=de):this._consumeSequenceIfMatch(i.DOCTYPE_STRING,V,!1)?this.state=ct:this._consumeSequenceIfMatch(i.CDATA_START_STRING,V,!0)?this.allowCDATA?this.state=bn:(this._err(o.cdataInHtmlContent),this._createCommentToken(),this.currentToken.data="[CDATA[",this.state=se):this._ensureHibernation()||(this._err(o.incorrectlyOpenedComment),this._createCommentToken(),this._reconsumeInState(se))}[de](V){V===r.HYPHEN_MINUS?this.state=Te:V===r.GREATER_THAN_SIGN?(this._err(o.abruptClosingOfEmptyComment),this.state=d,this._emitCurrentToken()):this._reconsumeInState(ge)}[Te](V){V===r.HYPHEN_MINUS?this.state=Be:V===r.GREATER_THAN_SIGN?(this._err(o.abruptClosingOfEmptyComment),this.state=d,this._emitCurrentToken()):V===r.EOF?(this._err(o.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="-",this._reconsumeInState(ge))}[ge](V){V===r.HYPHEN_MINUS?this.state=Ne:V===r.LESS_THAN_SIGN?(this.currentToken.data+="<",this.state=_e):V===r.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.data+=e.REPLACEMENT_CHARACTER):V===r.EOF?(this._err(o.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.data+=De(V)}[_e](V){V===r.EXCLAMATION_MARK?(this.currentToken.data+="!",this.state=ve):V===r.LESS_THAN_SIGN?this.currentToken.data+="!":this._reconsumeInState(ge)}[ve](V){V===r.HYPHEN_MINUS?this.state=$e:this._reconsumeInState(ge)}[$e](V){V===r.HYPHEN_MINUS?this.state=be:this._reconsumeInState(Ne)}[be](V){V!==r.GREATER_THAN_SIGN&&V!==r.EOF&&this._err(o.nestedComment),this._reconsumeInState(Be)}[Ne](V){V===r.HYPHEN_MINUS?this.state=Be:V===r.EOF?(this._err(o.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="-",this._reconsumeInState(ge))}[Be](V){V===r.GREATER_THAN_SIGN?(this.state=d,this._emitCurrentToken()):V===r.EXCLAMATION_MARK?this.state=Ue:V===r.HYPHEN_MINUS?this.currentToken.data+="-":V===r.EOF?(this._err(o.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="--",this._reconsumeInState(ge))}[Ue](V){V===r.HYPHEN_MINUS?(this.currentToken.data+="--!",this.state=Ne):V===r.GREATER_THAN_SIGN?(this._err(o.incorrectlyClosedComment),this.state=d,this._emitCurrentToken()):V===r.EOF?(this._err(o.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="--!",this._reconsumeInState(ge))}[ct](V){pt(V)?this.state=at:V===r.GREATER_THAN_SIGN?this._reconsumeInState(at):V===r.EOF?(this._err(o.eofInDoctype),this._createDoctypeToken(null),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingWhitespaceBeforeDoctypeName),this._reconsumeInState(at))}[at](V){pt(V)||(pn(V)?(this._createDoctypeToken(ie(V)),this.state=Dt):V===r.NULL?(this._err(o.unexpectedNullCharacter),this._createDoctypeToken(e.REPLACEMENT_CHARACTER),this.state=Dt):V===r.GREATER_THAN_SIGN?(this._err(o.missingDoctypeName),this._createDoctypeToken(null),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=d):V===r.EOF?(this._err(o.eofInDoctype),this._createDoctypeToken(null),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._createDoctypeToken(De(V)),this.state=Dt))}[Dt](V){pt(V)?this.state=Bt:V===r.GREATER_THAN_SIGN?(this.state=d,this._emitCurrentToken()):pn(V)?this.currentToken.name+=ie(V):V===r.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.name+=e.REPLACEMENT_CHARACTER):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.name+=De(V)}[Bt](V){pt(V)||(V===r.GREATER_THAN_SIGN?(this.state=d,this._emitCurrentToken()):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this._consumeSequenceIfMatch(i.PUBLIC_STRING,V,!1)?this.state=fn:this._consumeSequenceIfMatch(i.SYSTEM_STRING,V,!1)?this.state=rr:this._ensureHibernation()||(this._err(o.invalidCharacterSequenceAfterDoctypeName),this.currentToken.forceQuirks=!0,this._reconsumeInState(It)))}[fn](V){pt(V)?this.state=Ft:V===r.QUOTATION_MARK?(this._err(o.missingWhitespaceAfterDoctypePublicKeyword),this.currentToken.publicId="",this.state=vt):V===r.APOSTROPHE?(this._err(o.missingWhitespaceAfterDoctypePublicKeyword),this.currentToken.publicId="",this.state=Ut):V===r.GREATER_THAN_SIGN?(this._err(o.missingDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this.state=d,this._emitCurrentToken()):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(It))}[Ft](V){pt(V)||(V===r.QUOTATION_MARK?(this.currentToken.publicId="",this.state=vt):V===r.APOSTROPHE?(this.currentToken.publicId="",this.state=Ut):V===r.GREATER_THAN_SIGN?(this._err(o.missingDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this.state=d,this._emitCurrentToken()):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(It)))}[vt](V){V===r.QUOTATION_MARK?this.state=St:V===r.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.publicId+=e.REPLACEMENT_CHARACTER):V===r.GREATER_THAN_SIGN?(this._err(o.abruptDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=d):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.publicId+=De(V)}[Ut](V){V===r.APOSTROPHE?this.state=St:V===r.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.publicId+=e.REPLACEMENT_CHARACTER):V===r.GREATER_THAN_SIGN?(this._err(o.abruptDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=d):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.publicId+=De(V)}[St](V){pt(V)?this.state=un:V===r.GREATER_THAN_SIGN?(this.state=d,this._emitCurrentToken()):V===r.QUOTATION_MARK?(this._err(o.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),this.currentToken.systemId="",this.state=Bn):V===r.APOSTROPHE?(this._err(o.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),this.currentToken.systemId="",this.state=Tt):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(It))}[un](V){pt(V)||(V===r.GREATER_THAN_SIGN?(this._emitCurrentToken(),this.state=d):V===r.QUOTATION_MARK?(this.currentToken.systemId="",this.state=Bn):V===r.APOSTROPHE?(this.currentToken.systemId="",this.state=Tt):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(It)))}[rr](V){pt(V)?this.state=Gn:V===r.QUOTATION_MARK?(this._err(o.missingWhitespaceAfterDoctypeSystemKeyword),this.currentToken.systemId="",this.state=Bn):V===r.APOSTROPHE?(this._err(o.missingWhitespaceAfterDoctypeSystemKeyword),this.currentToken.systemId="",this.state=Tt):V===r.GREATER_THAN_SIGN?(this._err(o.missingDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this.state=d,this._emitCurrentToken()):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(It))}[Gn](V){pt(V)||(V===r.QUOTATION_MARK?(this.currentToken.systemId="",this.state=Bn):V===r.APOSTROPHE?(this.currentToken.systemId="",this.state=Tt):V===r.GREATER_THAN_SIGN?(this._err(o.missingDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this.state=d,this._emitCurrentToken()):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(It)))}[Bn](V){V===r.QUOTATION_MARK?this.state=Mn:V===r.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.systemId+=e.REPLACEMENT_CHARACTER):V===r.GREATER_THAN_SIGN?(this._err(o.abruptDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=d):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.systemId+=De(V)}[Tt](V){V===r.APOSTROPHE?this.state=Mn:V===r.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.systemId+=e.REPLACEMENT_CHARACTER):V===r.GREATER_THAN_SIGN?(this._err(o.abruptDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=d):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.systemId+=De(V)}[Mn](V){pt(V)||(V===r.GREATER_THAN_SIGN?(this._emitCurrentToken(),this.state=d):V===r.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.unexpectedCharacterAfterDoctypeSystemIdentifier),this._reconsumeInState(It)))}[It](V){V===r.GREATER_THAN_SIGN?(this._emitCurrentToken(),this.state=d):V===r.NULL?this._err(o.unexpectedNullCharacter):V===r.EOF&&(this._emitCurrentToken(),this._emitEOFToken())}[bn](V){V===r.RIGHT_SQUARE_BRACKET?this.state=re:V===r.EOF?(this._err(o.eofInCdata),this._emitEOFToken()):this._emitCodePoint(V)}[re](V){V===r.RIGHT_SQUARE_BRACKET?this.state=he:(this._emitChars("]"),this._reconsumeInState(bn))}[he](V){V===r.GREATER_THAN_SIGN?this.state=d:V===r.RIGHT_SQUARE_BRACKET?this._emitChars("]"):(this._emitChars("]]"),this._reconsumeInState(bn))}[Oe](V){this.tempBuff=[r.AMPERSAND],V===r.NUMBER_SIGN?(this.tempBuff.push(V),this.state=$t):Xi(V)?this._reconsumeInState(Xe):(this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState))}[Xe](V){const tt=this._matchNamedCharacterReference(V);if(this._ensureHibernation())this.tempBuff=[r.AMPERSAND];else if(tt){const kt=this.tempBuff[this.tempBuff.length-1]===r.SEMICOLON;this._isCharacterReferenceAttributeQuirk(kt)||(kt||this._errOnNextCodePoint(o.missingSemicolonAfterCharacterReference),this.tempBuff=tt),this._flushCodePointsConsumedAsCharacterReference(),this.state=this.returnState}else this._flushCodePointsConsumedAsCharacterReference(),this.state=qt}[qt](V){Xi(V)?this._isCharacterReferenceInAttribute()?this.currentAttr.value+=De(V):this._emitCodePoint(V):(V===r.SEMICOLON&&this._err(o.unknownNamedCharacterReference),this._reconsumeInState(this.returnState))}[$t](V){this.charRefCode=0,V===r.LATIN_SMALL_X||V===r.LATIN_CAPITAL_X?(this.tempBuff.push(V),this.state=qe):this._reconsumeInState(He)}[qe](V){Go(V)?this._reconsumeInState(it):(this._err(o.absenceOfDigitsInNumericCharacterReference),this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState))}[He](V){mr(V)?this._reconsumeInState(xt):(this._err(o.absenceOfDigitsInNumericCharacterReference),this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState))}[it](V){Ji(V)?this.charRefCode=this.charRefCode*16+V-55:qo(V)?this.charRefCode=this.charRefCode*16+V-87:mr(V)?this.charRefCode=this.charRefCode*16+V-48:V===r.SEMICOLON?this.state=Mt:(this._err(o.missingSemicolonAfterCharacterReference),this._reconsumeInState(Mt))}[xt](V){mr(V)?this.charRefCode=this.charRefCode*10+V-48:V===r.SEMICOLON?this.state=Mt:(this._err(o.missingSemicolonAfterCharacterReference),this._reconsumeInState(Mt))}[Mt](){if(this.charRefCode===r.NULL)this._err(o.nullCharacterReference),this.charRefCode=r.REPLACEMENT_CHARACTER;else if(this.charRefCode>1114111)this._err(o.characterReferenceOutsideUnicodeRange),this.charRefCode=r.REPLACEMENT_CHARACTER;else if(e.isSurrogate(this.charRefCode))this._err(o.surrogateCharacterReference),this.charRefCode=r.REPLACEMENT_CHARACTER;else if(e.isUndefinedCodePoint(this.charRefCode))this._err(o.noncharacterCharacterReference);else if(e.isControlCodePoint(this.charRefCode)||this.charRefCode===r.CARRIAGE_RETURN){this._err(o.controlCharacterReference);const V=s[this.charRefCode];V&&(this.charRefCode=V)}this.tempBuff=[this.charRefCode],this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState)}}return Ae.CHARACTER_TOKEN="CHARACTER_TOKEN",Ae.NULL_CHARACTER_TOKEN="NULL_CHARACTER_TOKEN",Ae.WHITESPACE_CHARACTER_TOKEN="WHITESPACE_CHARACTER_TOKEN",Ae.START_TAG_TOKEN="START_TAG_TOKEN",Ae.END_TAG_TOKEN="END_TAG_TOKEN",Ae.COMMENT_TOKEN="COMMENT_TOKEN",Ae.DOCTYPE_TOKEN="DOCTYPE_TOKEN",Ae.EOF_TOKEN="EOF_TOKEN",Ae.HIBERNATION_TOKEN="HIBERNATION_TOKEN",Ae.MODE={DATA:d,RCDATA:f,RAWTEXT:T,SCRIPT_DATA:h,PLAINTEXT:g},Ae.getTokenAttr=function(ke,V){for(let tt=ke.attrs.length-1;tt>=0;tt--)if(ke.attrs[tt].name===V)return ke.attrs[tt].value;return null},ST=Ae,ST}var h2={},vw;function na(){if(vw)return h2;vw=1;const t=h2.NAMESPACES={HTML:"http://www.w3.org/1999/xhtml",MATHML:"http://www.w3.org/1998/Math/MathML",SVG:"http://www.w3.org/2000/svg",XLINK:"http://www.w3.org/1999/xlink",XML:"http://www.w3.org/XML/1998/namespace",XMLNS:"http://www.w3.org/2000/xmlns/"};h2.ATTRS={TYPE:"type",ACTION:"action",ENCODING:"encoding",PROMPT:"prompt",NAME:"name",COLOR:"color",FACE:"face",SIZE:"size"},h2.DOCUMENT_MODE={NO_QUIRKS:"no-quirks",QUIRKS:"quirks",LIMITED_QUIRKS:"limited-quirks"};const e=h2.TAG_NAMES={A:"a",ADDRESS:"address",ANNOTATION_XML:"annotation-xml",APPLET:"applet",AREA:"area",ARTICLE:"article",ASIDE:"aside",B:"b",BASE:"base",BASEFONT:"basefont",BGSOUND:"bgsound",BIG:"big",BLOCKQUOTE:"blockquote",BODY:"body",BR:"br",BUTTON:"button",CAPTION:"caption",CENTER:"center",CODE:"code",COL:"col",COLGROUP:"colgroup",DD:"dd",DESC:"desc",DETAILS:"details",DIALOG:"dialog",DIR:"dir",DIV:"div",DL:"dl",DT:"dt",EM:"em",EMBED:"embed",FIELDSET:"fieldset",FIGCAPTION:"figcaption",FIGURE:"figure",FONT:"font",FOOTER:"footer",FOREIGN_OBJECT:"foreignObject",FORM:"form",FRAME:"frame",FRAMESET:"frameset",H1:"h1",H2:"h2",H3:"h3",H4:"h4",H5:"h5",H6:"h6",HEAD:"head",HEADER:"header",HGROUP:"hgroup",HR:"hr",HTML:"html",I:"i",IMG:"img",IMAGE:"image",INPUT:"input",IFRAME:"iframe",KEYGEN:"keygen",LABEL:"label",LI:"li",LINK:"link",LISTING:"listing",MAIN:"main",MALIGNMARK:"malignmark",MARQUEE:"marquee",MATH:"math",MENU:"menu",META:"meta",MGLYPH:"mglyph",MI:"mi",MO:"mo",MN:"mn",MS:"ms",MTEXT:"mtext",NAV:"nav",NOBR:"nobr",NOFRAMES:"noframes",NOEMBED:"noembed",NOSCRIPT:"noscript",OBJECT:"object",OL:"ol",OPTGROUP:"optgroup",OPTION:"option",P:"p",PARAM:"param",PLAINTEXT:"plaintext",PRE:"pre",RB:"rb",RP:"rp",RT:"rt",RTC:"rtc",RUBY:"ruby",S:"s",SCRIPT:"script",SECTION:"section",SELECT:"select",SOURCE:"source",SMALL:"small",SPAN:"span",STRIKE:"strike",STRONG:"strong",STYLE:"style",SUB:"sub",SUMMARY:"summary",SUP:"sup",TABLE:"table",TBODY:"tbody",TEMPLATE:"template",TEXTAREA:"textarea",TFOOT:"tfoot",TD:"td",TH:"th",THEAD:"thead",TITLE:"title",TR:"tr",TRACK:"track",TT:"tt",U:"u",UL:"ul",SVG:"svg",VAR:"var",WBR:"wbr",XMP:"xmp"};return h2.SPECIAL_ELEMENTS={[t.HTML]:{[e.ADDRESS]:!0,[e.APPLET]:!0,[e.AREA]:!0,[e.ARTICLE]:!0,[e.ASIDE]:!0,[e.BASE]:!0,[e.BASEFONT]:!0,[e.BGSOUND]:!0,[e.BLOCKQUOTE]:!0,[e.BODY]:!0,[e.BR]:!0,[e.BUTTON]:!0,[e.CAPTION]:!0,[e.CENTER]:!0,[e.COL]:!0,[e.COLGROUP]:!0,[e.DD]:!0,[e.DETAILS]:!0,[e.DIR]:!0,[e.DIV]:!0,[e.DL]:!0,[e.DT]:!0,[e.EMBED]:!0,[e.FIELDSET]:!0,[e.FIGCAPTION]:!0,[e.FIGURE]:!0,[e.FOOTER]:!0,[e.FORM]:!0,[e.FRAME]:!0,[e.FRAMESET]:!0,[e.H1]:!0,[e.H2]:!0,[e.H3]:!0,[e.H4]:!0,[e.H5]:!0,[e.H6]:!0,[e.HEAD]:!0,[e.HEADER]:!0,[e.HGROUP]:!0,[e.HR]:!0,[e.HTML]:!0,[e.IFRAME]:!0,[e.IMG]:!0,[e.INPUT]:!0,[e.LI]:!0,[e.LINK]:!0,[e.LISTING]:!0,[e.MAIN]:!0,[e.MARQUEE]:!0,[e.MENU]:!0,[e.META]:!0,[e.NAV]:!0,[e.NOEMBED]:!0,[e.NOFRAMES]:!0,[e.NOSCRIPT]:!0,[e.OBJECT]:!0,[e.OL]:!0,[e.P]:!0,[e.PARAM]:!0,[e.PLAINTEXT]:!0,[e.PRE]:!0,[e.SCRIPT]:!0,[e.SECTION]:!0,[e.SELECT]:!0,[e.SOURCE]:!0,[e.STYLE]:!0,[e.SUMMARY]:!0,[e.TABLE]:!0,[e.TBODY]:!0,[e.TD]:!0,[e.TEMPLATE]:!0,[e.TEXTAREA]:!0,[e.TFOOT]:!0,[e.TH]:!0,[e.THEAD]:!0,[e.TITLE]:!0,[e.TR]:!0,[e.TRACK]:!0,[e.UL]:!0,[e.WBR]:!0,[e.XMP]:!0},[t.MATHML]:{[e.MI]:!0,[e.MO]:!0,[e.MN]:!0,[e.MS]:!0,[e.MTEXT]:!0,[e.ANNOTATION_XML]:!0},[t.SVG]:{[e.TITLE]:!0,[e.FOREIGN_OBJECT]:!0,[e.DESC]:!0}},h2}var xT,yw;function Rvn(){if(yw)return xT;yw=1;const t=na(),e=t.TAG_NAMES,n=t.NAMESPACES;function o(a){switch(a.length){case 1:return a===e.P;case 2:return a===e.RB||a===e.RP||a===e.RT||a===e.DD||a===e.DT||a===e.LI;case 3:return a===e.RTC;case 6:return a===e.OPTION;case 8:return a===e.OPTGROUP}return!1}function r(a){switch(a.length){case 1:return a===e.P;case 2:return a===e.RB||a===e.RP||a===e.RT||a===e.DD||a===e.DT||a===e.LI||a===e.TD||a===e.TH||a===e.TR;case 3:return a===e.RTC;case 5:return a===e.TBODY||a===e.TFOOT||a===e.THEAD;case 6:return a===e.OPTION;case 7:return a===e.CAPTION;case 8:return a===e.OPTGROUP||a===e.COLGROUP}return!1}function i(a,l){switch(a.length){case 2:if(a===e.TD||a===e.TH)return l===n.HTML;if(a===e.MI||a===e.MO||a===e.MN||a===e.MS)return l===n.MATHML;break;case 4:if(a===e.HTML)return l===n.HTML;if(a===e.DESC)return l===n.SVG;break;case 5:if(a===e.TABLE)return l===n.HTML;if(a===e.MTEXT)return l===n.MATHML;if(a===e.TITLE)return l===n.SVG;break;case 6:return(a===e.APPLET||a===e.OBJECT)&&l===n.HTML;case 7:return(a===e.CAPTION||a===e.MARQUEE)&&l===n.HTML;case 8:return a===e.TEMPLATE&&l===n.HTML;case 13:return a===e.FOREIGN_OBJECT&&l===n.SVG;case 14:return a===e.ANNOTATION_XML&&l===n.MATHML}return!1}class s{constructor(l,c){this.stackTop=-1,this.items=[],this.current=l,this.currentTagName=null,this.currentTmplContent=null,this.tmplCount=0,this.treeAdapter=c}_indexOf(l){let c=-1;for(let u=this.stackTop;u>=0;u--)if(this.items[u]===l){c=u;break}return c}_isInTemplate(){return this.currentTagName===e.TEMPLATE&&this.treeAdapter.getNamespaceURI(this.current)===n.HTML}_updateCurrentElement(){this.current=this.items[this.stackTop],this.currentTagName=this.current&&this.treeAdapter.getTagName(this.current),this.currentTmplContent=this._isInTemplate()?this.treeAdapter.getTemplateContent(this.current):null}push(l){this.items[++this.stackTop]=l,this._updateCurrentElement(),this._isInTemplate()&&this.tmplCount++}pop(){this.stackTop--,this.tmplCount>0&&this._isInTemplate()&&this.tmplCount--,this._updateCurrentElement()}replace(l,c){const u=this._indexOf(l);this.items[u]=c,u===this.stackTop&&this._updateCurrentElement()}insertAfter(l,c){const u=this._indexOf(l)+1;this.items.splice(u,0,c),u===++this.stackTop&&this._updateCurrentElement()}popUntilTagNamePopped(l){for(;this.stackTop>-1;){const c=this.currentTagName,u=this.treeAdapter.getNamespaceURI(this.current);if(this.pop(),c===l&&u===n.HTML)break}}popUntilElementPopped(l){for(;this.stackTop>-1;){const c=this.current;if(this.pop(),c===l)break}}popUntilNumberedHeaderPopped(){for(;this.stackTop>-1;){const l=this.currentTagName,c=this.treeAdapter.getNamespaceURI(this.current);if(this.pop(),l===e.H1||l===e.H2||l===e.H3||l===e.H4||l===e.H5||l===e.H6&&c===n.HTML)break}}popUntilTableCellPopped(){for(;this.stackTop>-1;){const l=this.currentTagName,c=this.treeAdapter.getNamespaceURI(this.current);if(this.pop(),l===e.TD||l===e.TH&&c===n.HTML)break}}popAllUpToHtmlElement(){this.stackTop=0,this._updateCurrentElement()}clearBackToTableContext(){for(;this.currentTagName!==e.TABLE&&this.currentTagName!==e.TEMPLATE&&this.currentTagName!==e.HTML||this.treeAdapter.getNamespaceURI(this.current)!==n.HTML;)this.pop()}clearBackToTableBodyContext(){for(;this.currentTagName!==e.TBODY&&this.currentTagName!==e.TFOOT&&this.currentTagName!==e.THEAD&&this.currentTagName!==e.TEMPLATE&&this.currentTagName!==e.HTML||this.treeAdapter.getNamespaceURI(this.current)!==n.HTML;)this.pop()}clearBackToTableRowContext(){for(;this.currentTagName!==e.TR&&this.currentTagName!==e.TEMPLATE&&this.currentTagName!==e.HTML||this.treeAdapter.getNamespaceURI(this.current)!==n.HTML;)this.pop()}remove(l){for(let c=this.stackTop;c>=0;c--)if(this.items[c]===l){this.items.splice(c,1),this.stackTop--,this._updateCurrentElement();break}}tryPeekProperlyNestedBodyElement(){const l=this.items[1];return l&&this.treeAdapter.getTagName(l)===e.BODY?l:null}contains(l){return this._indexOf(l)>-1}getCommonAncestor(l){let c=this._indexOf(l);return--c>=0?this.items[c]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.currentTagName===e.HTML}hasInScope(l){for(let c=this.stackTop;c>=0;c--){const u=this.treeAdapter.getTagName(this.items[c]),d=this.treeAdapter.getNamespaceURI(this.items[c]);if(u===l&&d===n.HTML)return!0;if(i(u,d))return!1}return!0}hasNumberedHeaderInScope(){for(let l=this.stackTop;l>=0;l--){const c=this.treeAdapter.getTagName(this.items[l]),u=this.treeAdapter.getNamespaceURI(this.items[l]);if((c===e.H1||c===e.H2||c===e.H3||c===e.H4||c===e.H5||c===e.H6)&&u===n.HTML)return!0;if(i(c,u))return!1}return!0}hasInListItemScope(l){for(let c=this.stackTop;c>=0;c--){const u=this.treeAdapter.getTagName(this.items[c]),d=this.treeAdapter.getNamespaceURI(this.items[c]);if(u===l&&d===n.HTML)return!0;if((u===e.UL||u===e.OL)&&d===n.HTML||i(u,d))return!1}return!0}hasInButtonScope(l){for(let c=this.stackTop;c>=0;c--){const u=this.treeAdapter.getTagName(this.items[c]),d=this.treeAdapter.getNamespaceURI(this.items[c]);if(u===l&&d===n.HTML)return!0;if(u===e.BUTTON&&d===n.HTML||i(u,d))return!1}return!0}hasInTableScope(l){for(let c=this.stackTop;c>=0;c--){const u=this.treeAdapter.getTagName(this.items[c]);if(this.treeAdapter.getNamespaceURI(this.items[c])===n.HTML){if(u===l)return!0;if(u===e.TABLE||u===e.TEMPLATE||u===e.HTML)return!1}}return!0}hasTableBodyContextInTableScope(){for(let l=this.stackTop;l>=0;l--){const c=this.treeAdapter.getTagName(this.items[l]);if(this.treeAdapter.getNamespaceURI(this.items[l])===n.HTML){if(c===e.TBODY||c===e.THEAD||c===e.TFOOT)return!0;if(c===e.TABLE||c===e.HTML)return!1}}return!0}hasInSelectScope(l){for(let c=this.stackTop;c>=0;c--){const u=this.treeAdapter.getTagName(this.items[c]);if(this.treeAdapter.getNamespaceURI(this.items[c])===n.HTML){if(u===l)return!0;if(u!==e.OPTION&&u!==e.OPTGROUP)return!1}}return!0}generateImpliedEndTags(){for(;o(this.currentTagName);)this.pop()}generateImpliedEndTagsThoroughly(){for(;r(this.currentTagName);)this.pop()}generateImpliedEndTagsWithExclusion(l){for(;o(this.currentTagName)&&this.currentTagName!==l;)this.pop()}}return xT=s,xT}var LT,bw;function Nvn(){if(bw)return LT;bw=1;const t=3;class e{constructor(o){this.length=0,this.entries=[],this.treeAdapter=o,this.bookmark=null}_getNoahArkConditionCandidates(o){const r=[];if(this.length>=t){const i=this.treeAdapter.getAttrList(o).length,s=this.treeAdapter.getTagName(o),a=this.treeAdapter.getNamespaceURI(o);for(let l=this.length-1;l>=0;l--){const c=this.entries[l];if(c.type===e.MARKER_ENTRY)break;const u=c.element,d=this.treeAdapter.getAttrList(u);this.treeAdapter.getTagName(u)===s&&this.treeAdapter.getNamespaceURI(u)===a&&d.length===i&&r.push({idx:l,attrs:d})}}return r.length=t-1;c--)this.entries.splice(r[c].idx,1),this.length--}}insertMarker(){this.entries.push({type:e.MARKER_ENTRY}),this.length++}pushElement(o,r){this._ensureNoahArkCondition(o),this.entries.push({type:e.ELEMENT_ENTRY,element:o,token:r}),this.length++}insertElementAfterBookmark(o,r){let i=this.length-1;for(;i>=0&&this.entries[i]!==this.bookmark;i--);this.entries.splice(i+1,0,{type:e.ELEMENT_ENTRY,element:o,token:r}),this.length++}removeEntry(o){for(let r=this.length-1;r>=0;r--)if(this.entries[r]===o){this.entries.splice(r,1),this.length--;break}}clearToLastMarker(){for(;this.length;){const o=this.entries.pop();if(this.length--,o.type===e.MARKER_ENTRY)break}}getElementEntryInScopeWithTagName(o){for(let r=this.length-1;r>=0;r--){const i=this.entries[r];if(i.type===e.MARKER_ENTRY)return null;if(this.treeAdapter.getTagName(i.element)===o)return i}return null}getElementEntry(o){for(let r=this.length-1;r>=0;r--){const i=this.entries[r];if(i.type===e.ELEMENT_ENTRY&&i.element===o)return i}return null}}return e.MARKER_ENTRY="MARKER_ENTRY",e.ELEMENT_ENTRY="ELEMENT_ENTRY",LT=e,LT}var CT,Ew;function C1(){if(Ew)return CT;Ew=1;class t{constructor(n){const o={},r=this._getOverriddenMethods(this,o);for(const i of Object.keys(r))typeof r[i]=="function"&&(o[i]=n[i],n[i]=r[i])}_getOverriddenMethods(){throw new Error("Not implemented")}}return t.install=function(e,n,o){e.__mixins||(e.__mixins=[]);for(let i=0;i{const c=e.MODE[l];a[c]=function(u){i.ctLoc=i._getCurrentLocation(),s[c].call(this,u)}}),a}}return wT=o,wT}var OT,Lw;function Dvn(){if(Lw)return OT;Lw=1;const t=C1();class e extends t{constructor(o,r){super(o),this.onItemPop=r.onItemPop}_getOverriddenMethods(o,r){return{pop(){o.onItemPop(this.current),r.pop.call(this)},popAllUpToHtmlElement(){for(let i=this.stackTop;i>0;i--)o.onItemPop(this.items[i]);r.popAllUpToHtmlElement.call(this)},remove(i){o.onItemPop(this.current),r.remove.call(this,i)}}}}return OT=e,OT}var MT,Cw;function Ivn(){if(Cw)return MT;Cw=1;const t=C1(),e=_0(),n=jI(),o=Dvn(),i=na().TAG_NAMES;class s extends t{constructor(l){super(l),this.parser=l,this.treeAdapter=this.parser.treeAdapter,this.posTracker=null,this.lastStartTagToken=null,this.lastFosterParentingLocation=null,this.currentToken=null}_setStartLocation(l){let c=null;this.lastStartTagToken&&(c=Object.assign({},this.lastStartTagToken.location),c.startTag=this.lastStartTagToken.location),this.treeAdapter.setNodeSourceCodeLocation(l,c)}_setEndLocation(l,c){if(this.treeAdapter.getNodeSourceCodeLocation(l)&&c.location){const d=c.location,f=this.treeAdapter.getTagName(l),T=c.type===e.END_TAG_TOKEN&&f===c.tagName,h={};T?(h.endTag=Object.assign({},d),h.endLine=d.endLine,h.endCol=d.endCol,h.endOffset=d.endOffset):(h.endLine=d.startLine,h.endCol=d.startCol,h.endOffset=d.startOffset),this.treeAdapter.updateNodeSourceCodeLocation(l,h)}}_getOverriddenMethods(l,c){return{_bootstrap(u,d){c._bootstrap.call(this,u,d),l.lastStartTagToken=null,l.lastFosterParentingLocation=null,l.currentToken=null;const f=t.install(this.tokenizer,n);l.posTracker=f.posTracker,t.install(this.openElements,o,{onItemPop:function(T){l._setEndLocation(T,l.currentToken)}})},_runParsingLoop(u){c._runParsingLoop.call(this,u);for(let d=this.openElements.stackTop;d>=0;d--)l._setEndLocation(this.openElements.items[d],l.currentToken)},_processTokenInForeignContent(u){l.currentToken=u,c._processTokenInForeignContent.call(this,u)},_processToken(u){if(l.currentToken=u,c._processToken.call(this,u),u.type===e.END_TAG_TOKEN&&(u.tagName===i.HTML||u.tagName===i.BODY&&this.openElements.hasInScope(i.BODY)))for(let f=this.openElements.stackTop;f>=0;f--){const T=this.openElements.items[f];if(this.treeAdapter.getTagName(T)===u.tagName){l._setEndLocation(T,u);break}}},_setDocumentType(u){c._setDocumentType.call(this,u);const d=this.treeAdapter.getChildNodes(this.document),f=d.length;for(let T=0;T(Object.keys(r).forEach(i=>{o[i]=r[i]}),o),Object.create(null))}),kT}var J4={},Dw;function ih(){if(Dw)return J4;Dw=1;const{DOCUMENT_MODE:t}=na(),e="html",n="about:legacy-compat",o="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd",r=["+//silmaril//dtd html pro v0r11 19970101//","-//as//dtd html 3.0 aswedit + extensions//","-//advasoft ltd//dtd html 3.0 aswedit + extensions//","-//ietf//dtd html 2.0 level 1//","-//ietf//dtd html 2.0 level 2//","-//ietf//dtd html 2.0 strict level 1//","-//ietf//dtd html 2.0 strict level 2//","-//ietf//dtd html 2.0 strict//","-//ietf//dtd html 2.0//","-//ietf//dtd html 2.1e//","-//ietf//dtd html 3.0//","-//ietf//dtd html 3.2 final//","-//ietf//dtd html 3.2//","-//ietf//dtd html 3//","-//ietf//dtd html level 0//","-//ietf//dtd html level 1//","-//ietf//dtd html level 2//","-//ietf//dtd html level 3//","-//ietf//dtd html strict level 0//","-//ietf//dtd html strict level 1//","-//ietf//dtd html strict level 2//","-//ietf//dtd html strict level 3//","-//ietf//dtd html strict//","-//ietf//dtd html//","-//metrius//dtd metrius presentational//","-//microsoft//dtd internet explorer 2.0 html strict//","-//microsoft//dtd internet explorer 2.0 html//","-//microsoft//dtd internet explorer 2.0 tables//","-//microsoft//dtd internet explorer 3.0 html strict//","-//microsoft//dtd internet explorer 3.0 html//","-//microsoft//dtd internet explorer 3.0 tables//","-//netscape comm. corp.//dtd html//","-//netscape comm. corp.//dtd strict html//","-//o'reilly and associates//dtd html 2.0//","-//o'reilly and associates//dtd html extended 1.0//","-//o'reilly and associates//dtd html extended relaxed 1.0//","-//sq//dtd html 2.0 hotmetal + extensions//","-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//","-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//","-//spyglass//dtd html 2.0 extended//","-//sun microsystems corp.//dtd hotjava html//","-//sun microsystems corp.//dtd hotjava strict html//","-//w3c//dtd html 3 1995-03-24//","-//w3c//dtd html 3.2 draft//","-//w3c//dtd html 3.2 final//","-//w3c//dtd html 3.2//","-//w3c//dtd html 3.2s draft//","-//w3c//dtd html 4.0 frameset//","-//w3c//dtd html 4.0 transitional//","-//w3c//dtd html experimental 19960712//","-//w3c//dtd html experimental 970421//","-//w3c//dtd w3 html//","-//w3o//dtd w3 html 3.0//","-//webtechs//dtd mozilla html 2.0//","-//webtechs//dtd mozilla html//"],i=r.concat(["-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"]),s=["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"],a=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],l=a.concat(["-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"]);function c(d){const f=d.indexOf('"')!==-1?"'":'"';return f+d+f}function u(d,f){for(let T=0;T-1)return t.QUIRKS;let h=f===null?i:r;if(u(T,h))return t.QUIRKS;if(h=f===null?a:l,u(T,h))return t.LIMITED_QUIRKS}return t.NO_QUIRKS},J4.serializeContent=function(d,f,T){let h="!DOCTYPE ";return d&&(h+=d),f?h+=" PUBLIC "+c(f):T&&(h+=" SYSTEM"),T!==null&&(h+=" "+c(T)),h},J4}var d1={},Iw;function $vn(){if(Iw)return d1;Iw=1;const t=_0(),e=na(),n=e.TAG_NAMES,o=e.NAMESPACES,r=e.ATTRS,i={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},s="definitionurl",a="definitionURL",l={attributename:"attributeName",attributetype:"attributeType",basefrequency:"baseFrequency",baseprofile:"baseProfile",calcmode:"calcMode",clippathunits:"clipPathUnits",diffuseconstant:"diffuseConstant",edgemode:"edgeMode",filterunits:"filterUnits",glyphref:"glyphRef",gradienttransform:"gradientTransform",gradientunits:"gradientUnits",kernelmatrix:"kernelMatrix",kernelunitlength:"kernelUnitLength",keypoints:"keyPoints",keysplines:"keySplines",keytimes:"keyTimes",lengthadjust:"lengthAdjust",limitingconeangle:"limitingConeAngle",markerheight:"markerHeight",markerunits:"markerUnits",markerwidth:"markerWidth",maskcontentunits:"maskContentUnits",maskunits:"maskUnits",numoctaves:"numOctaves",pathlength:"pathLength",patterncontentunits:"patternContentUnits",patterntransform:"patternTransform",patternunits:"patternUnits",pointsatx:"pointsAtX",pointsaty:"pointsAtY",pointsatz:"pointsAtZ",preservealpha:"preserveAlpha",preserveaspectratio:"preserveAspectRatio",primitiveunits:"primitiveUnits",refx:"refX",refy:"refY",repeatcount:"repeatCount",repeatdur:"repeatDur",requiredextensions:"requiredExtensions",requiredfeatures:"requiredFeatures",specularconstant:"specularConstant",specularexponent:"specularExponent",spreadmethod:"spreadMethod",startoffset:"startOffset",stddeviation:"stdDeviation",stitchtiles:"stitchTiles",surfacescale:"surfaceScale",systemlanguage:"systemLanguage",tablevalues:"tableValues",targetx:"targetX",targety:"targetY",textlength:"textLength",viewbox:"viewBox",viewtarget:"viewTarget",xchannelselector:"xChannelSelector",ychannelselector:"yChannelSelector",zoomandpan:"zoomAndPan"},c={"xlink:actuate":{prefix:"xlink",name:"actuate",namespace:o.XLINK},"xlink:arcrole":{prefix:"xlink",name:"arcrole",namespace:o.XLINK},"xlink:href":{prefix:"xlink",name:"href",namespace:o.XLINK},"xlink:role":{prefix:"xlink",name:"role",namespace:o.XLINK},"xlink:show":{prefix:"xlink",name:"show",namespace:o.XLINK},"xlink:title":{prefix:"xlink",name:"title",namespace:o.XLINK},"xlink:type":{prefix:"xlink",name:"type",namespace:o.XLINK},"xml:base":{prefix:"xml",name:"base",namespace:o.XML},"xml:lang":{prefix:"xml",name:"lang",namespace:o.XML},"xml:space":{prefix:"xml",name:"space",namespace:o.XML},xmlns:{prefix:"",name:"xmlns",namespace:o.XMLNS},"xmlns:xlink":{prefix:"xmlns",name:"xlink",namespace:o.XMLNS}},u=d1.SVG_TAG_NAMES_ADJUSTMENT_MAP={altglyph:"altGlyph",altglyphdef:"altGlyphDef",altglyphitem:"altGlyphItem",animatecolor:"animateColor",animatemotion:"animateMotion",animatetransform:"animateTransform",clippath:"clipPath",feblend:"feBlend",fecolormatrix:"feColorMatrix",fecomponenttransfer:"feComponentTransfer",fecomposite:"feComposite",feconvolvematrix:"feConvolveMatrix",fediffuselighting:"feDiffuseLighting",fedisplacementmap:"feDisplacementMap",fedistantlight:"feDistantLight",feflood:"feFlood",fefunca:"feFuncA",fefuncb:"feFuncB",fefuncg:"feFuncG",fefuncr:"feFuncR",fegaussianblur:"feGaussianBlur",feimage:"feImage",femerge:"feMerge",femergenode:"feMergeNode",femorphology:"feMorphology",feoffset:"feOffset",fepointlight:"fePointLight",fespecularlighting:"feSpecularLighting",fespotlight:"feSpotLight",fetile:"feTile",feturbulence:"feTurbulence",foreignobject:"foreignObject",glyphref:"glyphRef",lineargradient:"linearGradient",radialgradient:"radialGradient",textpath:"textPath"},d={[n.B]:!0,[n.BIG]:!0,[n.BLOCKQUOTE]:!0,[n.BODY]:!0,[n.BR]:!0,[n.CENTER]:!0,[n.CODE]:!0,[n.DD]:!0,[n.DIV]:!0,[n.DL]:!0,[n.DT]:!0,[n.EM]:!0,[n.EMBED]:!0,[n.H1]:!0,[n.H2]:!0,[n.H3]:!0,[n.H4]:!0,[n.H5]:!0,[n.H6]:!0,[n.HEAD]:!0,[n.HR]:!0,[n.I]:!0,[n.IMG]:!0,[n.LI]:!0,[n.LISTING]:!0,[n.MENU]:!0,[n.META]:!0,[n.NOBR]:!0,[n.OL]:!0,[n.P]:!0,[n.PRE]:!0,[n.RUBY]:!0,[n.S]:!0,[n.SMALL]:!0,[n.SPAN]:!0,[n.STRONG]:!0,[n.STRIKE]:!0,[n.SUB]:!0,[n.SUP]:!0,[n.TABLE]:!0,[n.TT]:!0,[n.U]:!0,[n.UL]:!0,[n.VAR]:!0};d1.causesExit=function(h){const g=h.tagName;return g===n.FONT&&(t.getTokenAttr(h,r.COLOR)!==null||t.getTokenAttr(h,r.SIZE)!==null||t.getTokenAttr(h,r.FACE)!==null)?!0:d[g]},d1.adjustTokenMathMLAttrs=function(h){for(let g=0;g0);for(let st=k;st=0;D--){let Me=this.openElements.items[D];D===0&&(k=!0,this.fragmentContext&&(Me=this.fragmentContext));const st=this.treeAdapter.getTagName(Me),Kt=z[st];if(Kt){this.insertionMode=Kt;break}else if(!k&&(st===T.TD||st===T.TH)){this.insertionMode=P;break}else if(!k&&st===T.HEAD){this.insertionMode=x;break}else if(st===T.SELECT){this._resetInsertionModeForSelect(D);break}else if(st===T.TEMPLATE){this.insertionMode=this.currentTmplInsertionMode;break}else if(st===T.HTML){this.insertionMode=this.headElement?C:E;break}else if(k){this.insertionMode=A;break}}}_resetInsertionModeForSelect(D){if(D>0)for(let k=D-1;k>0;k--){const Me=this.openElements.items[k],st=this.treeAdapter.getTagName(Me);if(st===T.TEMPLATE)break;if(st===T.TABLE){this.insertionMode=B;return}}this.insertionMode=F}_pushTmplInsertionMode(D){this.tmplInsertionModeStack.push(D),this.tmplInsertionModeStackTop++,this.currentTmplInsertionMode=D}_popTmplInsertionMode(){this.tmplInsertionModeStack.pop(),this.tmplInsertionModeStackTop--,this.currentTmplInsertionMode=this.tmplInsertionModeStack[this.tmplInsertionModeStackTop]}_isElementCausesFosterParenting(D){const k=this.treeAdapter.getTagName(D);return k===T.TABLE||k===T.TBODY||k===T.TFOOT||k===T.THEAD||k===T.TR}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this._isElementCausesFosterParenting(this.openElements.current)}_findFosterParentingLocation(){const D={parent:null,beforeElement:null};for(let k=this.openElements.stackTop;k>=0;k--){const Me=this.openElements.items[k],st=this.treeAdapter.getTagName(Me),Kt=this.treeAdapter.getNamespaceURI(Me);if(st===T.TEMPLATE&&Kt===h.HTML){D.parent=this.treeAdapter.getTemplateContent(Me);break}else if(st===T.TABLE){D.parent=this.treeAdapter.getParentNode(Me),D.parent?D.beforeElement=Me:D.parent=this.openElements.items[k-1];break}}return D.parent||(D.parent=this.openElements.items[0]),D}_fosterParentElement(D){const k=this._findFosterParentingLocation();k.beforeElement?this.treeAdapter.insertBefore(k.parent,D,k.beforeElement):this.treeAdapter.appendChild(k.parent,D)}_fosterParentText(D){const k=this._findFosterParentingLocation();k.beforeElement?this.treeAdapter.insertTextBefore(k.parent,D,k.beforeElement):this.treeAdapter.insertText(k.parent,D)}_isSpecialElement(D){const k=this.treeAdapter.getTagName(D),Me=this.treeAdapter.getNamespaceURI(D);return f.SPECIAL_ELEMENTS[Me][k]}}HT=fe;function Qe(w,D){let k=w.activeFormattingElements.getElementEntryInScopeWithTagName(D.tagName);return k?w.openElements.contains(k.element)?w.openElements.hasInScope(D.tagName)||(k=null):(w.activeFormattingElements.removeEntry(k),k=null):_r(w,D),k}function Y(w,D){let k=null;for(let Me=w.openElements.stackTop;Me>=0;Me--){const st=w.openElements.items[Me];if(st===D.element)break;w._isSpecialElement(st)&&(k=st)}return k||(w.openElements.popUntilElementPopped(D.element),w.activeFormattingElements.removeEntry(D)),k}function W(w,D,k){let Me=D,st=w.openElements.getCommonAncestor(D);for(let Kt=0,or=st;or!==k;Kt++,or=st){st=w.openElements.getCommonAncestor(or);const Yl=w.activeFormattingElements.getElementEntry(or),Wh=Yl&&Kt>=v;!Yl||Wh?(Wh&&w.activeFormattingElements.removeEntry(Yl),w.openElements.remove(or)):(or=X(w,Yl),Me===D&&(w.activeFormattingElements.bookmark=Yl),w.treeAdapter.detachNode(Me),w.treeAdapter.appendChild(or,Me),Me=or)}return Me}function X(w,D){const k=w.treeAdapter.getNamespaceURI(D.element),Me=w.treeAdapter.createElement(D.token.tagName,k,D.token.attrs);return w.openElements.replace(D.element,Me),D.element=Me,Me}function se(w,D,k){if(w._isElementCausesFosterParenting(D))w._fosterParentElement(k);else{const Me=w.treeAdapter.getTagName(D),st=w.treeAdapter.getNamespaceURI(D);Me===T.TEMPLATE&&st===h.HTML&&(D=w.treeAdapter.getTemplateContent(D)),w.treeAdapter.appendChild(D,k)}}function le(w,D,k){const Me=w.treeAdapter.getNamespaceURI(k.element),st=k.token,Kt=w.treeAdapter.createElement(st.tagName,Me,st.attrs);w._adoptNodes(D,Kt),w.treeAdapter.appendChild(D,Kt),w.activeFormattingElements.insertElementAfterBookmark(Kt,k.token),w.activeFormattingElements.removeEntry(k),w.openElements.remove(k.element),w.openElements.insertAfter(D,Kt)}function de(w,D){let k;for(let Me=0;Me<_&&(k=Qe(w,D),!!k);Me++){const st=Y(w,k);if(!st)break;w.activeFormattingElements.bookmark=k;const Kt=W(w,st,k.element),or=w.openElements.getCommonAncestor(k.element);w.treeAdapter.detachNode(Kt),se(w,or,Kt),le(w,st,k)}}function Te(){}function ge(w){w._err(u.misplacedDoctype)}function _e(w,D){w._appendCommentNode(D,w.openElements.currentTmplContent||w.openElements.current)}function ve(w,D){w._appendCommentNode(D,w.openElements.items[0])}function $e(w,D){w._appendCommentNode(D,w.document)}function be(w,D){w._insertCharacters(D)}function Ne(w){w.stopped=!0}function Be(w,D){w._setDocumentType(D);const k=D.forceQuirks?f.DOCUMENT_MODE.QUIRKS:l.getDocumentMode(D);l.isConforming(D)||w._err(u.nonConformingDoctype),w.treeAdapter.setDocumentMode(w.document,k),w.insertionMode=y}function Ue(w,D){w._err(u.missingDoctype,{beforeToken:!0}),w.treeAdapter.setDocumentMode(w.document,f.DOCUMENT_MODE.QUIRKS),w.insertionMode=y,w._processToken(D)}function ct(w,D){D.tagName===T.HTML?(w._insertElement(D,h.HTML),w.insertionMode=E):Dt(w,D)}function at(w,D){const k=D.tagName;(k===T.HTML||k===T.HEAD||k===T.BODY||k===T.BR)&&Dt(w,D)}function Dt(w,D){w._insertFakeRootElement(),w.insertionMode=E,w._processToken(D)}function Bt(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.HEAD?(w._insertElement(D,h.HTML),w.headElement=w.openElements.current,w.insertionMode=x):Ft(w,D)}function fn(w,D){const k=D.tagName;k===T.HEAD||k===T.BODY||k===T.HTML||k===T.BR?Ft(w,D):w._err(u.endTagWithoutMatchingOpenElement)}function Ft(w,D){w._insertFakeElement(T.HEAD),w.headElement=w.openElements.current,w.insertionMode=x,w._processToken(D)}function vt(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.BASE||k===T.BASEFONT||k===T.BGSOUND||k===T.LINK||k===T.META?(w._appendElement(D,h.HTML),D.ackSelfClosing=!0):k===T.TITLE?w._switchToTextParsing(D,t.MODE.RCDATA):k===T.NOSCRIPT?w.options.scriptingEnabled?w._switchToTextParsing(D,t.MODE.RAWTEXT):(w._insertElement(D,h.HTML),w.insertionMode=L):k===T.NOFRAMES||k===T.STYLE?w._switchToTextParsing(D,t.MODE.RAWTEXT):k===T.SCRIPT?w._switchToTextParsing(D,t.MODE.SCRIPT_DATA):k===T.TEMPLATE?(w._insertTemplate(D,h.HTML),w.activeFormattingElements.insertMarker(),w.framesetOk=!1,w.insertionMode=q,w._pushTmplInsertionMode(q)):k===T.HEAD?w._err(u.misplacedStartTagForHeadElement):St(w,D)}function Ut(w,D){const k=D.tagName;k===T.HEAD?(w.openElements.pop(),w.insertionMode=C):k===T.BODY||k===T.BR||k===T.HTML?St(w,D):k===T.TEMPLATE&&w.openElements.tmplCount>0?(w.openElements.generateImpliedEndTagsThoroughly(),w.openElements.currentTagName!==T.TEMPLATE&&w._err(u.closingOfElementWithOpenChildElements),w.openElements.popUntilTagNamePopped(T.TEMPLATE),w.activeFormattingElements.clearToLastMarker(),w._popTmplInsertionMode(),w._resetInsertionMode()):w._err(u.endTagWithoutMatchingOpenElement)}function St(w,D){w.openElements.pop(),w.insertionMode=C,w._processToken(D)}function un(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.BASEFONT||k===T.BGSOUND||k===T.HEAD||k===T.LINK||k===T.META||k===T.NOFRAMES||k===T.STYLE?vt(w,D):k===T.NOSCRIPT?w._err(u.nestedNoscriptInHead):Gn(w,D)}function rr(w,D){const k=D.tagName;k===T.NOSCRIPT?(w.openElements.pop(),w.insertionMode=x):k===T.BR?Gn(w,D):w._err(u.endTagWithoutMatchingOpenElement)}function Gn(w,D){const k=D.type===t.EOF_TOKEN?u.openElementsLeftAfterEof:u.disallowedContentInNoscriptInHead;w._err(k),w.openElements.pop(),w.insertionMode=x,w._processToken(D)}function Bn(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.BODY?(w._insertElement(D,h.HTML),w.framesetOk=!1,w.insertionMode=A):k===T.FRAMESET?(w._insertElement(D,h.HTML),w.insertionMode=K):k===T.BASE||k===T.BASEFONT||k===T.BGSOUND||k===T.LINK||k===T.META||k===T.NOFRAMES||k===T.SCRIPT||k===T.STYLE||k===T.TEMPLATE||k===T.TITLE?(w._err(u.abandonedHeadElementChild),w.openElements.push(w.headElement),vt(w,D),w.openElements.remove(w.headElement)):k===T.HEAD?w._err(u.misplacedStartTagForHeadElement):Mn(w,D)}function Tt(w,D){const k=D.tagName;k===T.BODY||k===T.HTML||k===T.BR?Mn(w,D):k===T.TEMPLATE?Ut(w,D):w._err(u.endTagWithoutMatchingOpenElement)}function Mn(w,D){w._insertFakeElement(T.BODY),w.insertionMode=A,w._processToken(D)}function It(w,D){w._reconstructActiveFormattingElements(),w._insertCharacters(D)}function bn(w,D){w._reconstructActiveFormattingElements(),w._insertCharacters(D),w.framesetOk=!1}function re(w,D){w.openElements.tmplCount===0&&w.treeAdapter.adoptAttributes(w.openElements.items[0],D.attrs)}function he(w,D){const k=w.openElements.tryPeekProperlyNestedBodyElement();k&&w.openElements.tmplCount===0&&(w.framesetOk=!1,w.treeAdapter.adoptAttributes(k,D.attrs))}function Oe(w,D){const k=w.openElements.tryPeekProperlyNestedBodyElement();w.framesetOk&&k&&(w.treeAdapter.detachNode(k),w.openElements.popAllUpToHtmlElement(),w._insertElement(D,h.HTML),w.insertionMode=K)}function Xe(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML)}function qt(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement();const k=w.openElements.currentTagName;(k===T.H1||k===T.H2||k===T.H3||k===T.H4||k===T.H5||k===T.H6)&&w.openElements.pop(),w._insertElement(D,h.HTML)}function $t(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML),w.skipNextNewLine=!0,w.framesetOk=!1}function qe(w,D){const k=w.openElements.tmplCount>0;(!w.formElement||k)&&(w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML),k||(w.formElement=w.openElements.current))}function He(w,D){w.framesetOk=!1;const k=D.tagName;for(let Me=w.openElements.stackTop;Me>=0;Me--){const st=w.openElements.items[Me],Kt=w.treeAdapter.getTagName(st);let or=null;if(k===T.LI&&Kt===T.LI?or=T.LI:(k===T.DD||k===T.DT)&&(Kt===T.DD||Kt===T.DT)&&(or=Kt),or){w.openElements.generateImpliedEndTagsWithExclusion(or),w.openElements.popUntilTagNamePopped(or);break}if(Kt!==T.ADDRESS&&Kt!==T.DIV&&Kt!==T.P&&w._isSpecialElement(st))break}w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML)}function it(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML),w.tokenizer.state=t.MODE.PLAINTEXT}function xt(w,D){w.openElements.hasInScope(T.BUTTON)&&(w.openElements.generateImpliedEndTags(),w.openElements.popUntilTagNamePopped(T.BUTTON)),w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML),w.framesetOk=!1}function Mt(w,D){const k=w.activeFormattingElements.getElementEntryInScopeWithTagName(T.A);k&&(de(w,D),w.openElements.remove(k.element),w.activeFormattingElements.removeEntry(k)),w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML),w.activeFormattingElements.pushElement(w.openElements.current,D)}function pt(w,D){w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML),w.activeFormattingElements.pushElement(w.openElements.current,D)}function mr(w,D){w._reconstructActiveFormattingElements(),w.openElements.hasInScope(T.NOBR)&&(de(w,D),w._reconstructActiveFormattingElements()),w._insertElement(D,h.HTML),w.activeFormattingElements.pushElement(w.openElements.current,D)}function pn(w,D){w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML),w.activeFormattingElements.insertMarker(),w.framesetOk=!1}function gr(w,D){w.treeAdapter.getDocumentMode(w.document)!==f.DOCUMENT_MODE.QUIRKS&&w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML),w.framesetOk=!1,w.insertionMode=R}function Gt(w,D){w._reconstructActiveFormattingElements(),w._appendElement(D,h.HTML),w.framesetOk=!1,D.ackSelfClosing=!0}function Xi(w,D){w._reconstructActiveFormattingElements(),w._appendElement(D,h.HTML);const k=t.getTokenAttr(D,g.TYPE);(!k||k.toLowerCase()!==m)&&(w.framesetOk=!1),D.ackSelfClosing=!0}function Ji(w,D){w._appendElement(D,h.HTML),D.ackSelfClosing=!0}function qo(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._appendElement(D,h.HTML),w.framesetOk=!1,D.ackSelfClosing=!0}function Go(w,D){D.tagName=T.IMG,Gt(w,D)}function Pr(w,D){w._insertElement(D,h.HTML),w.skipNextNewLine=!0,w.tokenizer.state=t.MODE.RCDATA,w.originalInsertionMode=w.insertionMode,w.framesetOk=!1,w.insertionMode=O}function De(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._reconstructActiveFormattingElements(),w.framesetOk=!1,w._switchToTextParsing(D,t.MODE.RAWTEXT)}function ie(w,D){w.framesetOk=!1,w._switchToTextParsing(D,t.MODE.RAWTEXT)}function we(w,D){w._switchToTextParsing(D,t.MODE.RAWTEXT)}function Ae(w,D){w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML),w.framesetOk=!1,w.insertionMode===R||w.insertionMode===M||w.insertionMode===U||w.insertionMode===G||w.insertionMode===P?w.insertionMode=B:w.insertionMode=F}function ke(w,D){w.openElements.currentTagName===T.OPTION&&w.openElements.pop(),w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML)}function V(w,D){w.openElements.hasInScope(T.RUBY)&&w.openElements.generateImpliedEndTags(),w._insertElement(D,h.HTML)}function tt(w,D){w.openElements.hasInScope(T.RUBY)&&w.openElements.generateImpliedEndTagsWithExclusion(T.RTC),w._insertElement(D,h.HTML)}function kt(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML)}function Vt(w,D){w._reconstructActiveFormattingElements(),c.adjustTokenMathMLAttrs(D),c.adjustTokenXMLAttrs(D),D.selfClosing?w._appendElement(D,h.MATHML):w._insertElement(D,h.MATHML),D.ackSelfClosing=!0}function Wt(w,D){w._reconstructActiveFormattingElements(),c.adjustTokenSVGAttrs(D),c.adjustTokenXMLAttrs(D),D.selfClosing?w._appendElement(D,h.SVG):w._insertElement(D,h.SVG),D.ackSelfClosing=!0}function _t(w,D){w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML)}function ye(w,D){const k=D.tagName;switch(k.length){case 1:k===T.I||k===T.S||k===T.B||k===T.U?pt(w,D):k===T.P?Xe(w,D):k===T.A?Mt(w,D):_t(w,D);break;case 2:k===T.DL||k===T.OL||k===T.UL?Xe(w,D):k===T.H1||k===T.H2||k===T.H3||k===T.H4||k===T.H5||k===T.H6?qt(w,D):k===T.LI||k===T.DD||k===T.DT?He(w,D):k===T.EM||k===T.TT?pt(w,D):k===T.BR?Gt(w,D):k===T.HR?qo(w,D):k===T.RB?V(w,D):k===T.RT||k===T.RP?tt(w,D):k!==T.TH&&k!==T.TD&&k!==T.TR&&_t(w,D);break;case 3:k===T.DIV||k===T.DIR||k===T.NAV?Xe(w,D):k===T.PRE?$t(w,D):k===T.BIG?pt(w,D):k===T.IMG||k===T.WBR?Gt(w,D):k===T.XMP?De(w,D):k===T.SVG?Wt(w,D):k===T.RTC?V(w,D):k!==T.COL&&_t(w,D);break;case 4:k===T.HTML?re(w,D):k===T.BASE||k===T.LINK||k===T.META?vt(w,D):k===T.BODY?he(w,D):k===T.MAIN||k===T.MENU?Xe(w,D):k===T.FORM?qe(w,D):k===T.CODE||k===T.FONT?pt(w,D):k===T.NOBR?mr(w,D):k===T.AREA?Gt(w,D):k===T.MATH?Vt(w,D):k===T.MENU?kt(w,D):k!==T.HEAD&&_t(w,D);break;case 5:k===T.STYLE||k===T.TITLE?vt(w,D):k===T.ASIDE?Xe(w,D):k===T.SMALL?pt(w,D):k===T.TABLE?gr(w,D):k===T.EMBED?Gt(w,D):k===T.INPUT?Xi(w,D):k===T.PARAM||k===T.TRACK?Ji(w,D):k===T.IMAGE?Go(w,D):k!==T.FRAME&&k!==T.TBODY&&k!==T.TFOOT&&k!==T.THEAD&&_t(w,D);break;case 6:k===T.SCRIPT?vt(w,D):k===T.CENTER||k===T.FIGURE||k===T.FOOTER||k===T.HEADER||k===T.HGROUP||k===T.DIALOG?Xe(w,D):k===T.BUTTON?xt(w,D):k===T.STRIKE||k===T.STRONG?pt(w,D):k===T.APPLET||k===T.OBJECT?pn(w,D):k===T.KEYGEN?Gt(w,D):k===T.SOURCE?Ji(w,D):k===T.IFRAME?ie(w,D):k===T.SELECT?Ae(w,D):k===T.OPTION?ke(w,D):_t(w,D);break;case 7:k===T.BGSOUND?vt(w,D):k===T.DETAILS||k===T.ADDRESS||k===T.ARTICLE||k===T.SECTION||k===T.SUMMARY?Xe(w,D):k===T.LISTING?$t(w,D):k===T.MARQUEE?pn(w,D):k===T.NOEMBED?we(w,D):k!==T.CAPTION&&_t(w,D);break;case 8:k===T.BASEFONT?vt(w,D):k===T.FRAMESET?Oe(w,D):k===T.FIELDSET?Xe(w,D):k===T.TEXTAREA?Pr(w,D):k===T.TEMPLATE?vt(w,D):k===T.NOSCRIPT?w.options.scriptingEnabled?we(w,D):_t(w,D):k===T.OPTGROUP?ke(w,D):k!==T.COLGROUP&&_t(w,D);break;case 9:k===T.PLAINTEXT?it(w,D):_t(w,D);break;case 10:k===T.BLOCKQUOTE||k===T.FIGCAPTION?Xe(w,D):_t(w,D);break;default:_t(w,D)}}function Fe(w){w.openElements.hasInScope(T.BODY)&&(w.insertionMode=ee)}function ht(w,D){w.openElements.hasInScope(T.BODY)&&(w.insertionMode=ee,w._processToken(D))}function bt(w,D){const k=D.tagName;w.openElements.hasInScope(k)&&(w.openElements.generateImpliedEndTags(),w.openElements.popUntilTagNamePopped(k))}function gn(w){const D=w.openElements.tmplCount>0,k=w.formElement;D||(w.formElement=null),(k||D)&&w.openElements.hasInScope(T.FORM)&&(w.openElements.generateImpliedEndTags(),D?w.openElements.popUntilTagNamePopped(T.FORM):w.openElements.remove(k))}function $r(w){w.openElements.hasInButtonScope(T.P)||w._insertFakeElement(T.P),w._closePElement()}function eo(w){w.openElements.hasInListItemScope(T.LI)&&(w.openElements.generateImpliedEndTagsWithExclusion(T.LI),w.openElements.popUntilTagNamePopped(T.LI))}function ia(w,D){const k=D.tagName;w.openElements.hasInScope(k)&&(w.openElements.generateImpliedEndTagsWithExclusion(k),w.openElements.popUntilTagNamePopped(k))}function ir(w){w.openElements.hasNumberedHeaderInScope()&&(w.openElements.generateImpliedEndTags(),w.openElements.popUntilNumberedHeaderPopped())}function Vr(w,D){const k=D.tagName;w.openElements.hasInScope(k)&&(w.openElements.generateImpliedEndTags(),w.openElements.popUntilTagNamePopped(k),w.activeFormattingElements.clearToLastMarker())}function jl(w){w._reconstructActiveFormattingElements(),w._insertFakeElement(T.BR),w.openElements.pop(),w.framesetOk=!1}function _r(w,D){const k=D.tagName;for(let Me=w.openElements.stackTop;Me>0;Me--){const st=w.openElements.items[Me];if(w.treeAdapter.getTagName(st)===k){w.openElements.generateImpliedEndTagsWithExclusion(k),w.openElements.popUntilElementPopped(st);break}if(w._isSpecialElement(st))break}}function oa(w,D){const k=D.tagName;switch(k.length){case 1:k===T.A||k===T.B||k===T.I||k===T.S||k===T.U?de(w,D):k===T.P?$r(w):_r(w,D);break;case 2:k===T.DL||k===T.UL||k===T.OL?bt(w,D):k===T.LI?eo(w):k===T.DD||k===T.DT?ia(w,D):k===T.H1||k===T.H2||k===T.H3||k===T.H4||k===T.H5||k===T.H6?ir(w):k===T.BR?jl(w):k===T.EM||k===T.TT?de(w,D):_r(w,D);break;case 3:k===T.BIG?de(w,D):k===T.DIR||k===T.DIV||k===T.NAV||k===T.PRE?bt(w,D):_r(w,D);break;case 4:k===T.BODY?Fe(w):k===T.HTML?ht(w,D):k===T.FORM?gn(w):k===T.CODE||k===T.FONT||k===T.NOBR?de(w,D):k===T.MAIN||k===T.MENU?bt(w,D):_r(w,D);break;case 5:k===T.ASIDE?bt(w,D):k===T.SMALL?de(w,D):_r(w,D);break;case 6:k===T.CENTER||k===T.FIGURE||k===T.FOOTER||k===T.HEADER||k===T.HGROUP||k===T.DIALOG?bt(w,D):k===T.APPLET||k===T.OBJECT?Vr(w,D):k===T.STRIKE||k===T.STRONG?de(w,D):_r(w,D);break;case 7:k===T.ADDRESS||k===T.ARTICLE||k===T.DETAILS||k===T.SECTION||k===T.SUMMARY||k===T.LISTING?bt(w,D):k===T.MARQUEE?Vr(w,D):_r(w,D);break;case 8:k===T.FIELDSET?bt(w,D):k===T.TEMPLATE?Ut(w,D):_r(w,D);break;case 10:k===T.BLOCKQUOTE||k===T.FIGCAPTION?bt(w,D):_r(w,D);break;default:_r(w,D)}}function wi(w,D){w.tmplInsertionModeStackTop>-1?Yh(w,D):w.stopped=!0}function o6(w,D){D.tagName===T.SCRIPT&&(w.pendingScript=w.openElements.current),w.openElements.pop(),w.insertionMode=w.originalInsertionMode}function s6(w,D){w._err(u.eofInElementThatCanContainOnlyText),w.openElements.pop(),w.insertionMode=w.originalInsertionMode,w._processToken(D)}function Oi(w,D){const k=w.openElements.currentTagName;k===T.TABLE||k===T.TBODY||k===T.TFOOT||k===T.THEAD||k===T.TR?(w.pendingCharacterTokens=[],w.hasNonWhitespacePendingCharacterToken=!1,w.originalInsertionMode=w.insertionMode,w.insertionMode=I,w._processToken(D)):hn(w,D)}function sa(w,D){w.openElements.clearBackToTableContext(),w.activeFormattingElements.insertMarker(),w._insertElement(D,h.HTML),w.insertionMode=M}function P2(w,D){w.openElements.clearBackToTableContext(),w._insertElement(D,h.HTML),w.insertionMode=$}function Br(w,D){w.openElements.clearBackToTableContext(),w._insertFakeElement(T.COLGROUP),w.insertionMode=$,w._processToken(D)}function zl(w,D){w.openElements.clearBackToTableContext(),w._insertElement(D,h.HTML),w.insertionMode=U}function aa(w,D){w.openElements.clearBackToTableContext(),w._insertFakeElement(T.TBODY),w.insertionMode=U,w._processToken(D)}function lt(w,D){w.openElements.hasInTableScope(T.TABLE)&&(w.openElements.popUntilTagNamePopped(T.TABLE),w._resetInsertionMode(),w._processToken(D))}function $2(w,D){const k=t.getTokenAttr(D,g.TYPE);k&&k.toLowerCase()===m?w._appendElement(D,h.HTML):hn(w,D),D.ackSelfClosing=!0}function En(w,D){!w.formElement&&w.openElements.tmplCount===0&&(w._insertElement(D,h.HTML),w.formElement=w.openElements.current,w.openElements.pop())}function Ht(w,D){const k=D.tagName;switch(k.length){case 2:k===T.TD||k===T.TH||k===T.TR?aa(w,D):hn(w,D);break;case 3:k===T.COL?Br(w,D):hn(w,D);break;case 4:k===T.FORM?En(w,D):hn(w,D);break;case 5:k===T.TABLE?lt(w,D):k===T.STYLE?vt(w,D):k===T.TBODY||k===T.TFOOT||k===T.THEAD?zl(w,D):k===T.INPUT?$2(w,D):hn(w,D);break;case 6:k===T.SCRIPT?vt(w,D):hn(w,D);break;case 7:k===T.CAPTION?sa(w,D):hn(w,D);break;case 8:k===T.COLGROUP?P2(w,D):k===T.TEMPLATE?vt(w,D):hn(w,D);break;default:hn(w,D)}}function to(w,D){const k=D.tagName;k===T.TABLE?w.openElements.hasInTableScope(T.TABLE)&&(w.openElements.popUntilTagNamePopped(T.TABLE),w._resetInsertionMode()):k===T.TEMPLATE?Ut(w,D):k!==T.BODY&&k!==T.CAPTION&&k!==T.COL&&k!==T.COLGROUP&&k!==T.HTML&&k!==T.TBODY&&k!==T.TD&&k!==T.TFOOT&&k!==T.TH&&k!==T.THEAD&&k!==T.TR&&hn(w,D)}function hn(w,D){const k=w.fosterParentingEnabled;w.fosterParentingEnabled=!0,w._processTokenInBodyMode(D),w.fosterParentingEnabled=k}function la(w,D){w.pendingCharacterTokens.push(D)}function ca(w,D){w.pendingCharacterTokens.push(D),w.hasNonWhitespacePendingCharacterToken=!0}function Ie(w,D){let k=0;if(w.hasNonWhitespacePendingCharacterToken)for(;k0?(w.openElements.popUntilTagNamePopped(T.TEMPLATE),w.activeFormattingElements.clearToLastMarker(),w._popTmplInsertionMode(),w._resetInsertionMode(),w._processToken(D)):w.stopped=!0}function RH(w,D){D.tagName===T.HTML?ye(w,D):c6(w,D)}function NH(w,D){D.tagName===T.HTML?w.fragmentContext||(w.insertionMode=ue):c6(w,D)}function c6(w,D){w.insertionMode=A,w._processToken(D)}function DH(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.FRAMESET?w._insertElement(D,h.HTML):k===T.FRAME?(w._appendElement(D,h.HTML),D.ackSelfClosing=!0):k===T.NOFRAMES&&vt(w,D)}function IH(w,D){D.tagName===T.FRAMESET&&!w.openElements.isRootHtmlElementCurrent()&&(w.openElements.pop(),!w.fragmentContext&&w.openElements.currentTagName!==T.FRAMESET&&(w.insertionMode=j))}function kH(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.NOFRAMES&&vt(w,D)}function HH(w,D){D.tagName===T.HTML&&(w.insertionMode=pe)}function PH(w,D){D.tagName===T.HTML?ye(w,D):u6(w,D)}function u6(w,D){w.insertionMode=A,w._processToken(D)}function $H(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.NOFRAMES&&vt(w,D)}function VH(w,D){D.chars=d.REPLACEMENT_CHARACTER,w._insertCharacters(D)}function BH(w,D){w._insertCharacters(D),w.framesetOk=!1}function FH(w,D){if(c.causesExit(D)&&!w.fragmentContext){for(;w.treeAdapter.getNamespaceURI(w.openElements.current)!==h.HTML&&!w._isIntegrationPoint(w.openElements.current);)w.openElements.pop();w._processToken(D)}else{const k=w._getAdjustedCurrentElement(),Me=w.treeAdapter.getNamespaceURI(k);Me===h.MATHML?c.adjustTokenMathMLAttrs(D):Me===h.SVG&&(c.adjustTokenSVGTagName(D),c.adjustTokenSVGAttrs(D)),c.adjustTokenXMLAttrs(D),D.selfClosing?w._appendElement(D,Me):w._insertElement(D,Me),D.ackSelfClosing=!0}}function UH(w,D){for(let k=w.openElements.stackTop;k>0;k--){const Me=w.openElements.items[k];if(w.treeAdapter.getNamespaceURI(Me)===h.HTML){w._processToken(D);break}if(w.treeAdapter.getTagName(Me).toLowerCase()===D.tagName){w.openElements.popUntilElementPopped(Me);break}}}return HT}var PT,Hw;function Bvn(){if(Hw)return PT;Hw=1;const t=zI(),e=YI(),n=ih(),o=na(),r=o.TAG_NAMES,i=o.NAMESPACES,s={treeAdapter:t},a=/&/g,l=/\u00a0/g,c=/"/g,u=//g;class f{constructor(h,g){this.options=e(s,g),this.treeAdapter=this.options.treeAdapter,this.html="",this.startNode=h}serialize(){return this._serializeChildNodes(this.startNode),this.html}_serializeChildNodes(h){const g=this.treeAdapter.getChildNodes(h);if(g)for(let Q=0,m=g.length;Q",g!==r.AREA&&g!==r.BASE&&g!==r.BASEFONT&&g!==r.BGSOUND&&g!==r.BR&&g!==r.COL&&g!==r.EMBED&&g!==r.FRAME&&g!==r.HR&&g!==r.IMG&&g!==r.INPUT&&g!==r.KEYGEN&&g!==r.LINK&&g!==r.META&&g!==r.PARAM&&g!==r.SOURCE&&g!==r.TRACK&&g!==r.WBR){const m=g===r.TEMPLATE&&Q===i.HTML?this.treeAdapter.getTemplateContent(h):h;this._serializeChildNodes(m),this.html+=""}}_serializeAttributes(h){const g=this.treeAdapter.getAttrList(h);for(let Q=0,m=g.length;Q"}_serializeDocumentTypeNode(h){const g=this.treeAdapter.getDocumentTypeNodeName(h);this.html+="<"+n.serializeContent(g,null,null)+">"}}return f.escapeString=function(T,h){return T=T.replace(a,"&").replace(l," "),h?T=T.replace(c,"""):T=T.replace(u,"<").replace(d,">"),T},PT=f,PT}var Pw;function Fvn(){if(Pw)return X4;Pw=1;const t=Vvn(),e=Bvn();return X4.parse=function(o,r){return new t(r).parse(o)},X4.parseFragment=function(o,r,i){return typeof o=="string"&&(i=r,r=o,o=null),new t(i).parseFragment(r,o)},X4.serialize=function(n,o){return new e(n,o).serialize()},X4}var Ct={},$w;function Uvn(){if($w)return Ct;$w=1;const t=ih(),{DOCUMENT_MODE:e}=na(),n={element:1,text:3,cdata:4,comment:8},o={tagName:"name",childNodes:"children",parentNode:"parent",previousSibling:"prev",nextSibling:"next",nodeValue:"data"};class r{constructor(c){for(const u of Object.keys(c))this[u]=c[u]}get firstChild(){const c=this.children;return c&&c[0]||null}get lastChild(){const c=this.children;return c&&c[c.length-1]||null}get nodeType(){return n[this.type]||n.element}}Object.keys(o).forEach(l=>{const c=o[l];Object.defineProperty(r.prototype,l,{get:function(){return this[c]||null},set:function(u){return this[c]=u,u}})}),Ct.createDocument=function(){return new r({type:"root",name:"root",parent:null,prev:null,next:null,children:[],"x-mode":e.NO_QUIRKS})},Ct.createDocumentFragment=function(){return new r({type:"root",name:"root",parent:null,prev:null,next:null,children:[]})},Ct.createElement=function(l,c,u){const d=Object.create(null),f=Object.create(null),T=Object.create(null);for(let h=0;h"u"&&(l.attribs[d]=c[u].value,l["x-attribsNamespace"][d]=c[u].namespace,l["x-attribsPrefix"][d]=c[u].prefix)}},Ct.getFirstChild=function(l){return l.children[0]},Ct.getChildNodes=function(l){return l.children},Ct.getParentNode=function(l){return l.parent},Ct.getAttrList=function(l){const c=[];for(const u in l.attribs)c.push({name:u,value:l.attribs[u],namespace:l["x-attribsNamespace"][u],prefix:l["x-attribsPrefix"][u]});return c},Ct.getTagName=function(l){return l.name},Ct.getNamespaceURI=function(l){return l.namespace},Ct.getTextNodeContent=function(l){return l.data},Ct.getCommentNodeContent=function(l){return l.data},Ct.getDocumentTypeNodeName=function(l){return l["x-name"]},Ct.getDocumentTypeNodePublicId=function(l){return l["x-publicId"]},Ct.getDocumentTypeNodeSystemId=function(l){return l["x-systemId"]},Ct.isTextNode=function(l){return l.type==="text"},Ct.isCommentNode=function(l){return l.type==="comment"},Ct.isDocumentTypeNode=function(l){return l.type==="directive"&&l.name==="!doctype"},Ct.isElementNode=function(l){return!!l.attribs},Ct.setNodeSourceCodeLocation=function(l,c){l.sourceCodeLocation=c},Ct.getNodeSourceCodeLocation=function(l){return l.sourceCodeLocation},Ct.updateNodeSourceCodeLocation=function(l,c){l.sourceCodeLocation=Object.assign(l.sourceCodeLocation,c)},Ct}var Vw;function WI(){if(Vw)return p2;Vw=1,Object.defineProperty(p2,"__esModule",{value:!0}),p2.render=p2.parse=void 0;var t=ta,e=jr(),n=Fvn(),o=t.__importDefault(Uvn());function r(s,a,l){var c={scriptingEnabled:typeof a.scriptingEnabled=="boolean"?a.scriptingEnabled:!0,treeAdapter:o.default,sourceCodeLocationInfo:a.sourceCodeLocationInfo},u=a.context;return l?n.parse(s,c):n.parseFragment(u,s,c)}p2.parse=r;function i(s){for(var a,l=("length"in s)?s:[s],c=0;c/;function l(c){return a.test(c)}return Xn.isHtml=l,Xn}var Cn={},Gw;function qvn(){if(Gw)return Cn;Gw=1,Object.defineProperty(Cn,"__esModule",{value:!0}),Cn.toggleClass=Cn.removeClass=Cn.addClass=Cn.hasClass=Cn.removeAttr=Cn.val=Cn.data=Cn.prop=Cn.attr=void 0;var t=Jc(),e=Ul(),n=Object.prototype.hasOwnProperty,o=/\s+/,r="data-",i={null:null,true:!0,false:!1},s=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,a=/^{[^]*}$|^\[[^]*]$/;function l(C,A,O){var R;if(!(!C||!e.isTag(C))){if((R=C.attribs)!==null&&R!==void 0||(C.attribs={}),!A)return C.attribs;if(n.call(C.attribs,A))return!O&&s.test(A)?A:C.attribs[A];if(C.name==="option"&&A==="value")return t.text(C.children);if(C.name==="input"&&(C.attribs.type==="radio"||C.attribs.type==="checkbox")&&A==="value")return"on"}}function c(C,A,O){O===null?_(C,A):C.attribs[A]=""+O}function u(C,A){if(typeof C=="object"||A!==void 0){if(typeof A=="function"){if(typeof C!="string")throw new Error("Bad combination of arguments.");return e.domEach(this,function(O,R){e.isTag(O)&&c(O,C,A.call(O,R,O.attribs[C]))})}return e.domEach(this,function(O){e.isTag(O)&&(typeof C=="object"?Object.keys(C).forEach(function(R){var I=C[R];c(O,R,I)}):c(O,C,A))})}return arguments.length>1?this:l(this[0],C,this.options.xmlMode)}Cn.attr=u;function d(C,A,O){if(!(!C||!e.isTag(C)))return A in C?C[A]:!O&&s.test(A)?l(C,A,!1)!==void 0:l(C,A,O)}function f(C,A,O,R){A in C?C[A]=O:c(C,A,!R&&s.test(A)?O?"":null:""+O)}function T(C,A){var O=this;if(typeof C=="string"&&A===void 0)switch(C){case"style":{var R=this.css(),I=Object.keys(R);return I.forEach(function($,U){R[U]=$}),R.length=I.length,R}case"tagName":case"nodeName":{var M=this[0];return e.isTag(M)?M.name.toUpperCase():void 0}case"outerHTML":return this.clone().wrap("").parent().html();case"innerHTML":return this.html();default:return d(this[0],C,this.options.xmlMode)}if(typeof C=="object"||A!==void 0){if(typeof A=="function"){if(typeof C=="object")throw new Error("Bad combination of arguments.");return e.domEach(this,function($,U){e.isTag($)&&f($,C,A.call($,U,d($,C,O.options.xmlMode)),O.options.xmlMode)})}return e.domEach(this,function($){e.isTag($)&&(typeof C=="object"?Object.keys(C).forEach(function(U){var G=C[U];f($,U,G,O.options.xmlMode)}):f($,C,A,O.options.xmlMode))})}}Cn.prop=T;function h(C,A,O){var R,I=C;(R=I.data)!==null&&R!==void 0||(I.data={}),typeof A=="object"?Object.assign(I.data,A):typeof A=="string"&&O!==void 0&&(I.data[A]=O)}function g(C,A){var O,R,I;A==null?(O=Object.keys(C.attribs).filter(function(G){return G.startsWith(r)}),R=O.map(function(G){return e.camelCase(G.slice(r.length))})):(O=[r+e.cssCase(A)],R=[A]);for(var M=0;M-1;){var I=R+C.length;if((R===0||o.test(O[R-1]))&&(I===O.length||o.test(O[I])))return!0}return!1})}Cn.hasClass=y;function E(C){if(typeof C=="function")return e.domEach(this,function(P,F){if(e.isTag(P)){var B=P.attribs.class||"";E.call([P],C.call(P,F,B))}});if(!C||typeof C!="string")return this;for(var A=C.split(o),O=this.length,R=0;R=0&&(M.splice(G,1),$=!0,U--)}$&&(I.attribs.class=M.join(" "))}})}Cn.removeClass=x;function L(C,A){if(typeof C=="function")return e.domEach(this,function(B,q){e.isTag(B)&&L.call([B],C.call(B,q,B.attribs.class||"",A),A)});if(!C||typeof C!="string")return this;for(var O=C.split(o),R=O.length,I=typeof A=="boolean"?A?1:-1:0,M=this.length,$=0;$=0&&F<0?G.push(O[P]):I<=0&&F>=0&&G.splice(F,1)}U.attribs.class=G.join(" ")}}return this}return Cn.toggleClass=L,Cn}var We={},jw;function Gvn(){if(jw)return We;jw=1,Object.defineProperty(We,"__esModule",{value:!0}),We.addBack=We.add=We.end=We.slice=We.index=We.toArray=We.get=We.eq=We.last=We.first=We.has=We.not=We.is=We.filterArray=We.filter=We.map=We.each=We.contents=We.children=We.siblings=We.prevUntil=We.prevAll=We.prev=We.nextUntil=We.nextAll=We.next=We.closest=We.parentsUntil=We.parents=We.parent=We.find=void 0;var t=ta,e=jr(),n=t.__importStar(FI()),o=Ul(),r=Jc(),i=Fl(),s=i.DomUtils.uniqueSort,a=/^\s*[~+]/;function l(P){var F;if(!P)return this._make([]);var B=this.toArray();if(typeof P!="string"){var q=o.isCheerio(P)?P.toArray():[P];return this._make(q.filter(function(j){return B.some(function(ue){return r.contains(ue,j)})}))}var ee=a.test(P)?B:this.children().toArray(),K={context:B,root:(F=this._root)===null||F===void 0?void 0:F[0],xmlMode:this.options.xmlMode};return this._make(n.select(P,ee,K))}We.find=l;function c(P){return function(F){for(var B=[],q=1;q1&&j.length>1?B.reduce(function(ue,pe){return pe(ue)},j):j)}}}var u=c(function(P,F){for(var B,q=[],ee=0;ee0})}We.has=x;function L(){return this.length>1?this._make(this[0]):this}We.first=L;function C(){return this.length>0?this._make(this[this.length-1]):this}We.last=C;function A(P){var F;return P=+P,P===0&&this.length<=1?this:(P<0&&(P=this.length+P),this._make((F=this[P])!==null&&F!==void 0?F:[]))}We.eq=A;function O(P){return P==null?this.toArray():this[P<0?this.length+P:P]}We.get=O;function R(){return Array.prototype.slice.call(this)}We.toArray=R;function I(P){var F,B;return P==null?(F=this.parent().children(),B=this[0]):typeof P=="string"?(F=this._make(P),B=this[0]):(F=this,B=o.isCheerio(P)?P[0]:P),Array.prototype.indexOf.call(F,B)}We.index=I;function M(P,F){return this._make(Array.prototype.slice.call(this,P,F))}We.slice=M;function $(){var P;return(P=this.prevObject)!==null&&P!==void 0?P:this._make([])}We.end=$;function U(P,F){var B=this._make(P,F),q=s(t.__spreadArray(t.__spreadArray([],this.get()),B.get()));return this._make(q)}We.add=U;function G(P){return this.prevObject?this.add(P?this.prevObject.filter(P):this.prevObject):this}return We.addBack=G,We}var ft={},zw;function jvn(){if(zw)return ft;zw=1,Object.defineProperty(ft,"__esModule",{value:!0}),ft.clone=ft.text=ft.toString=ft.html=ft.empty=ft.replaceWith=ft.remove=ft.insertBefore=ft.before=ft.insertAfter=ft.after=ft.wrapAll=ft.unwrap=ft.wrapInner=ft.wrap=ft.prepend=ft.append=ft.prependTo=ft.appendTo=ft._makeDomArray=void 0;var t=ta,e=jr(),n=jr(),o=t.__importStar(oh()),r=Jc(),i=Ul(),s=Fl();function a(A,O){var R=this;return A==null?[]:i.isCheerio(A)?O?i.cloneDom(A.get()):A.get():Array.isArray(A)?A.reduce(function(I,M){return I.concat(R._makeDomArray(M,O))},[]):typeof A=="string"?o.default(A,this.options,!1).children:O?i.cloneDom([A]):[A]}ft._makeDomArray=a;function l(A){return function(){for(var O=this,R=[],I=0;I-1&&(ee.children.splice(K,1),M===ee&&O>K&&G[0]--)}q.parent=M,q.prev&&(q.prev.next=($=q.next)!==null&&$!==void 0?$:null),q.next&&(q.next.prev=(U=q.prev)!==null&&U!==void 0?U:null),q.prev=I[B-1]||P,q.next=I[B+1]||F}return P&&(P.next=I[0]),F&&(F.prev=I[I.length-1]),A.splice.apply(A,G)}function u(A){var O=i.isCheerio(A)?A:this._make(A);return O.append(this),this}ft.appendTo=u;function d(A){var O=i.isCheerio(A)?A:this._make(A);return O.prepend(this),this}ft.prependTo=d,ft.append=l(function(A,O,R){c(O,O.length,0,A,R)}),ft.prepend=l(function(A,O,R){c(O,0,0,A,R)});function f(A){return function(O){for(var R=this.length-1,I=this.parents().last(),M=0;M{const c=e.MODE[l];a[c]=function(u){i.ctLoc=i._getCurrentLocation(),s[c].call(this,u)}}),a}}return wT=o,wT}var OT,Lw;function Dvn(){if(Lw)return OT;Lw=1;const t=C1();class e extends t{constructor(o,r){super(o),this.onItemPop=r.onItemPop}_getOverriddenMethods(o,r){return{pop(){o.onItemPop(this.current),r.pop.call(this)},popAllUpToHtmlElement(){for(let i=this.stackTop;i>0;i--)o.onItemPop(this.items[i]);r.popAllUpToHtmlElement.call(this)},remove(i){o.onItemPop(this.current),r.remove.call(this,i)}}}}return OT=e,OT}var MT,Cw;function Ivn(){if(Cw)return MT;Cw=1;const t=C1(),e=_0(),n=jI(),o=Dvn(),i=na().TAG_NAMES;class s extends t{constructor(l){super(l),this.parser=l,this.treeAdapter=this.parser.treeAdapter,this.posTracker=null,this.lastStartTagToken=null,this.lastFosterParentingLocation=null,this.currentToken=null}_setStartLocation(l){let c=null;this.lastStartTagToken&&(c=Object.assign({},this.lastStartTagToken.location),c.startTag=this.lastStartTagToken.location),this.treeAdapter.setNodeSourceCodeLocation(l,c)}_setEndLocation(l,c){if(this.treeAdapter.getNodeSourceCodeLocation(l)&&c.location){const d=c.location,f=this.treeAdapter.getTagName(l),T=c.type===e.END_TAG_TOKEN&&f===c.tagName,h={};T?(h.endTag=Object.assign({},d),h.endLine=d.endLine,h.endCol=d.endCol,h.endOffset=d.endOffset):(h.endLine=d.startLine,h.endCol=d.startCol,h.endOffset=d.startOffset),this.treeAdapter.updateNodeSourceCodeLocation(l,h)}}_getOverriddenMethods(l,c){return{_bootstrap(u,d){c._bootstrap.call(this,u,d),l.lastStartTagToken=null,l.lastFosterParentingLocation=null,l.currentToken=null;const f=t.install(this.tokenizer,n);l.posTracker=f.posTracker,t.install(this.openElements,o,{onItemPop:function(T){l._setEndLocation(T,l.currentToken)}})},_runParsingLoop(u){c._runParsingLoop.call(this,u);for(let d=this.openElements.stackTop;d>=0;d--)l._setEndLocation(this.openElements.items[d],l.currentToken)},_processTokenInForeignContent(u){l.currentToken=u,c._processTokenInForeignContent.call(this,u)},_processToken(u){if(l.currentToken=u,c._processToken.call(this,u),u.type===e.END_TAG_TOKEN&&(u.tagName===i.HTML||u.tagName===i.BODY&&this.openElements.hasInScope(i.BODY)))for(let f=this.openElements.stackTop;f>=0;f--){const T=this.openElements.items[f];if(this.treeAdapter.getTagName(T)===u.tagName){l._setEndLocation(T,u);break}}},_setDocumentType(u){c._setDocumentType.call(this,u);const d=this.treeAdapter.getChildNodes(this.document),f=d.length;for(let T=0;T(Object.keys(r).forEach(i=>{o[i]=r[i]}),o),Object.create(null))}),kT}var J4={},Dw;function ih(){if(Dw)return J4;Dw=1;const{DOCUMENT_MODE:t}=na(),e="html",n="about:legacy-compat",o="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd",r=["+//silmaril//dtd html pro v0r11 19970101//","-//as//dtd html 3.0 aswedit + extensions//","-//advasoft ltd//dtd html 3.0 aswedit + extensions//","-//ietf//dtd html 2.0 level 1//","-//ietf//dtd html 2.0 level 2//","-//ietf//dtd html 2.0 strict level 1//","-//ietf//dtd html 2.0 strict level 2//","-//ietf//dtd html 2.0 strict//","-//ietf//dtd html 2.0//","-//ietf//dtd html 2.1e//","-//ietf//dtd html 3.0//","-//ietf//dtd html 3.2 final//","-//ietf//dtd html 3.2//","-//ietf//dtd html 3//","-//ietf//dtd html level 0//","-//ietf//dtd html level 1//","-//ietf//dtd html level 2//","-//ietf//dtd html level 3//","-//ietf//dtd html strict level 0//","-//ietf//dtd html strict level 1//","-//ietf//dtd html strict level 2//","-//ietf//dtd html strict level 3//","-//ietf//dtd html strict//","-//ietf//dtd html//","-//metrius//dtd metrius presentational//","-//microsoft//dtd internet explorer 2.0 html strict//","-//microsoft//dtd internet explorer 2.0 html//","-//microsoft//dtd internet explorer 2.0 tables//","-//microsoft//dtd internet explorer 3.0 html strict//","-//microsoft//dtd internet explorer 3.0 html//","-//microsoft//dtd internet explorer 3.0 tables//","-//netscape comm. corp.//dtd html//","-//netscape comm. corp.//dtd strict html//","-//o'reilly and associates//dtd html 2.0//","-//o'reilly and associates//dtd html extended 1.0//","-//o'reilly and associates//dtd html extended relaxed 1.0//","-//sq//dtd html 2.0 hotmetal + extensions//","-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//","-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//","-//spyglass//dtd html 2.0 extended//","-//sun microsystems corp.//dtd hotjava html//","-//sun microsystems corp.//dtd hotjava strict html//","-//w3c//dtd html 3 1995-03-24//","-//w3c//dtd html 3.2 draft//","-//w3c//dtd html 3.2 final//","-//w3c//dtd html 3.2//","-//w3c//dtd html 3.2s draft//","-//w3c//dtd html 4.0 frameset//","-//w3c//dtd html 4.0 transitional//","-//w3c//dtd html experimental 19960712//","-//w3c//dtd html experimental 970421//","-//w3c//dtd w3 html//","-//w3o//dtd w3 html 3.0//","-//webtechs//dtd mozilla html 2.0//","-//webtechs//dtd mozilla html//"],i=r.concat(["-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"]),s=["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"],a=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],l=a.concat(["-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"]);function c(d){const f=d.indexOf('"')!==-1?"'":'"';return f+d+f}function u(d,f){for(let T=0;T-1)return t.QUIRKS;let h=f===null?i:r;if(u(T,h))return t.QUIRKS;if(h=f===null?a:l,u(T,h))return t.LIMITED_QUIRKS}return t.NO_QUIRKS},J4.serializeContent=function(d,f,T){let h="!DOCTYPE ";return d&&(h+=d),f?h+=" PUBLIC "+c(f):T&&(h+=" SYSTEM"),T!==null&&(h+=" "+c(T)),h},J4}var d1={},Iw;function $vn(){if(Iw)return d1;Iw=1;const t=_0(),e=na(),n=e.TAG_NAMES,o=e.NAMESPACES,r=e.ATTRS,i={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},s="definitionurl",a="definitionURL",l={attributename:"attributeName",attributetype:"attributeType",basefrequency:"baseFrequency",baseprofile:"baseProfile",calcmode:"calcMode",clippathunits:"clipPathUnits",diffuseconstant:"diffuseConstant",edgemode:"edgeMode",filterunits:"filterUnits",glyphref:"glyphRef",gradienttransform:"gradientTransform",gradientunits:"gradientUnits",kernelmatrix:"kernelMatrix",kernelunitlength:"kernelUnitLength",keypoints:"keyPoints",keysplines:"keySplines",keytimes:"keyTimes",lengthadjust:"lengthAdjust",limitingconeangle:"limitingConeAngle",markerheight:"markerHeight",markerunits:"markerUnits",markerwidth:"markerWidth",maskcontentunits:"maskContentUnits",maskunits:"maskUnits",numoctaves:"numOctaves",pathlength:"pathLength",patterncontentunits:"patternContentUnits",patterntransform:"patternTransform",patternunits:"patternUnits",pointsatx:"pointsAtX",pointsaty:"pointsAtY",pointsatz:"pointsAtZ",preservealpha:"preserveAlpha",preserveaspectratio:"preserveAspectRatio",primitiveunits:"primitiveUnits",refx:"refX",refy:"refY",repeatcount:"repeatCount",repeatdur:"repeatDur",requiredextensions:"requiredExtensions",requiredfeatures:"requiredFeatures",specularconstant:"specularConstant",specularexponent:"specularExponent",spreadmethod:"spreadMethod",startoffset:"startOffset",stddeviation:"stdDeviation",stitchtiles:"stitchTiles",surfacescale:"surfaceScale",systemlanguage:"systemLanguage",tablevalues:"tableValues",targetx:"targetX",targety:"targetY",textlength:"textLength",viewbox:"viewBox",viewtarget:"viewTarget",xchannelselector:"xChannelSelector",ychannelselector:"yChannelSelector",zoomandpan:"zoomAndPan"},c={"xlink:actuate":{prefix:"xlink",name:"actuate",namespace:o.XLINK},"xlink:arcrole":{prefix:"xlink",name:"arcrole",namespace:o.XLINK},"xlink:href":{prefix:"xlink",name:"href",namespace:o.XLINK},"xlink:role":{prefix:"xlink",name:"role",namespace:o.XLINK},"xlink:show":{prefix:"xlink",name:"show",namespace:o.XLINK},"xlink:title":{prefix:"xlink",name:"title",namespace:o.XLINK},"xlink:type":{prefix:"xlink",name:"type",namespace:o.XLINK},"xml:base":{prefix:"xml",name:"base",namespace:o.XML},"xml:lang":{prefix:"xml",name:"lang",namespace:o.XML},"xml:space":{prefix:"xml",name:"space",namespace:o.XML},xmlns:{prefix:"",name:"xmlns",namespace:o.XMLNS},"xmlns:xlink":{prefix:"xmlns",name:"xlink",namespace:o.XMLNS}},u=d1.SVG_TAG_NAMES_ADJUSTMENT_MAP={altglyph:"altGlyph",altglyphdef:"altGlyphDef",altglyphitem:"altGlyphItem",animatecolor:"animateColor",animatemotion:"animateMotion",animatetransform:"animateTransform",clippath:"clipPath",feblend:"feBlend",fecolormatrix:"feColorMatrix",fecomponenttransfer:"feComponentTransfer",fecomposite:"feComposite",feconvolvematrix:"feConvolveMatrix",fediffuselighting:"feDiffuseLighting",fedisplacementmap:"feDisplacementMap",fedistantlight:"feDistantLight",feflood:"feFlood",fefunca:"feFuncA",fefuncb:"feFuncB",fefuncg:"feFuncG",fefuncr:"feFuncR",fegaussianblur:"feGaussianBlur",feimage:"feImage",femerge:"feMerge",femergenode:"feMergeNode",femorphology:"feMorphology",feoffset:"feOffset",fepointlight:"fePointLight",fespecularlighting:"feSpecularLighting",fespotlight:"feSpotLight",fetile:"feTile",feturbulence:"feTurbulence",foreignobject:"foreignObject",glyphref:"glyphRef",lineargradient:"linearGradient",radialgradient:"radialGradient",textpath:"textPath"},d={[n.B]:!0,[n.BIG]:!0,[n.BLOCKQUOTE]:!0,[n.BODY]:!0,[n.BR]:!0,[n.CENTER]:!0,[n.CODE]:!0,[n.DD]:!0,[n.DIV]:!0,[n.DL]:!0,[n.DT]:!0,[n.EM]:!0,[n.EMBED]:!0,[n.H1]:!0,[n.H2]:!0,[n.H3]:!0,[n.H4]:!0,[n.H5]:!0,[n.H6]:!0,[n.HEAD]:!0,[n.HR]:!0,[n.I]:!0,[n.IMG]:!0,[n.LI]:!0,[n.LISTING]:!0,[n.MENU]:!0,[n.META]:!0,[n.NOBR]:!0,[n.OL]:!0,[n.P]:!0,[n.PRE]:!0,[n.RUBY]:!0,[n.S]:!0,[n.SMALL]:!0,[n.SPAN]:!0,[n.STRONG]:!0,[n.STRIKE]:!0,[n.SUB]:!0,[n.SUP]:!0,[n.TABLE]:!0,[n.TT]:!0,[n.U]:!0,[n.UL]:!0,[n.VAR]:!0};d1.causesExit=function(h){const g=h.tagName;return g===n.FONT&&(t.getTokenAttr(h,r.COLOR)!==null||t.getTokenAttr(h,r.SIZE)!==null||t.getTokenAttr(h,r.FACE)!==null)?!0:d[g]},d1.adjustTokenMathMLAttrs=function(h){for(let g=0;g0);for(let st=k;st=0;D--){let Re=this.openElements.items[D];D===0&&(k=!0,this.fragmentContext&&(Re=this.fragmentContext));const st=this.treeAdapter.getTagName(Re),Kt=z[st];if(Kt){this.insertionMode=Kt;break}else if(!k&&(st===T.TD||st===T.TH)){this.insertionMode=P;break}else if(!k&&st===T.HEAD){this.insertionMode=x;break}else if(st===T.SELECT){this._resetInsertionModeForSelect(D);break}else if(st===T.TEMPLATE){this.insertionMode=this.currentTmplInsertionMode;break}else if(st===T.HTML){this.insertionMode=this.headElement?C:E;break}else if(k){this.insertionMode=A;break}}}_resetInsertionModeForSelect(D){if(D>0)for(let k=D-1;k>0;k--){const Re=this.openElements.items[k],st=this.treeAdapter.getTagName(Re);if(st===T.TEMPLATE)break;if(st===T.TABLE){this.insertionMode=B;return}}this.insertionMode=F}_pushTmplInsertionMode(D){this.tmplInsertionModeStack.push(D),this.tmplInsertionModeStackTop++,this.currentTmplInsertionMode=D}_popTmplInsertionMode(){this.tmplInsertionModeStack.pop(),this.tmplInsertionModeStackTop--,this.currentTmplInsertionMode=this.tmplInsertionModeStack[this.tmplInsertionModeStackTop]}_isElementCausesFosterParenting(D){const k=this.treeAdapter.getTagName(D);return k===T.TABLE||k===T.TBODY||k===T.TFOOT||k===T.THEAD||k===T.TR}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this._isElementCausesFosterParenting(this.openElements.current)}_findFosterParentingLocation(){const D={parent:null,beforeElement:null};for(let k=this.openElements.stackTop;k>=0;k--){const Re=this.openElements.items[k],st=this.treeAdapter.getTagName(Re),Kt=this.treeAdapter.getNamespaceURI(Re);if(st===T.TEMPLATE&&Kt===h.HTML){D.parent=this.treeAdapter.getTemplateContent(Re);break}else if(st===T.TABLE){D.parent=this.treeAdapter.getParentNode(Re),D.parent?D.beforeElement=Re:D.parent=this.openElements.items[k-1];break}}return D.parent||(D.parent=this.openElements.items[0]),D}_fosterParentElement(D){const k=this._findFosterParentingLocation();k.beforeElement?this.treeAdapter.insertBefore(k.parent,D,k.beforeElement):this.treeAdapter.appendChild(k.parent,D)}_fosterParentText(D){const k=this._findFosterParentingLocation();k.beforeElement?this.treeAdapter.insertTextBefore(k.parent,D,k.beforeElement):this.treeAdapter.insertText(k.parent,D)}_isSpecialElement(D){const k=this.treeAdapter.getTagName(D),Re=this.treeAdapter.getNamespaceURI(D);return f.SPECIAL_ELEMENTS[Re][k]}}HT=fe;function Qe(w,D){let k=w.activeFormattingElements.getElementEntryInScopeWithTagName(D.tagName);return k?w.openElements.contains(k.element)?w.openElements.hasInScope(D.tagName)||(k=null):(w.activeFormattingElements.removeEntry(k),k=null):_r(w,D),k}function Y(w,D){let k=null;for(let Re=w.openElements.stackTop;Re>=0;Re--){const st=w.openElements.items[Re];if(st===D.element)break;w._isSpecialElement(st)&&(k=st)}return k||(w.openElements.popUntilElementPopped(D.element),w.activeFormattingElements.removeEntry(D)),k}function W(w,D,k){let Re=D,st=w.openElements.getCommonAncestor(D);for(let Kt=0,or=st;or!==k;Kt++,or=st){st=w.openElements.getCommonAncestor(or);const Yl=w.activeFormattingElements.getElementEntry(or),Wh=Yl&&Kt>=v;!Yl||Wh?(Wh&&w.activeFormattingElements.removeEntry(Yl),w.openElements.remove(or)):(or=X(w,Yl),Re===D&&(w.activeFormattingElements.bookmark=Yl),w.treeAdapter.detachNode(Re),w.treeAdapter.appendChild(or,Re),Re=or)}return Re}function X(w,D){const k=w.treeAdapter.getNamespaceURI(D.element),Re=w.treeAdapter.createElement(D.token.tagName,k,D.token.attrs);return w.openElements.replace(D.element,Re),D.element=Re,Re}function se(w,D,k){if(w._isElementCausesFosterParenting(D))w._fosterParentElement(k);else{const Re=w.treeAdapter.getTagName(D),st=w.treeAdapter.getNamespaceURI(D);Re===T.TEMPLATE&&st===h.HTML&&(D=w.treeAdapter.getTemplateContent(D)),w.treeAdapter.appendChild(D,k)}}function le(w,D,k){const Re=w.treeAdapter.getNamespaceURI(k.element),st=k.token,Kt=w.treeAdapter.createElement(st.tagName,Re,st.attrs);w._adoptNodes(D,Kt),w.treeAdapter.appendChild(D,Kt),w.activeFormattingElements.insertElementAfterBookmark(Kt,k.token),w.activeFormattingElements.removeEntry(k),w.openElements.remove(k.element),w.openElements.insertAfter(D,Kt)}function de(w,D){let k;for(let Re=0;Re<_&&(k=Qe(w,D),!!k);Re++){const st=Y(w,k);if(!st)break;w.activeFormattingElements.bookmark=k;const Kt=W(w,st,k.element),or=w.openElements.getCommonAncestor(k.element);w.treeAdapter.detachNode(Kt),se(w,or,Kt),le(w,st,k)}}function Te(){}function ge(w){w._err(u.misplacedDoctype)}function _e(w,D){w._appendCommentNode(D,w.openElements.currentTmplContent||w.openElements.current)}function ve(w,D){w._appendCommentNode(D,w.openElements.items[0])}function $e(w,D){w._appendCommentNode(D,w.document)}function be(w,D){w._insertCharacters(D)}function Ne(w){w.stopped=!0}function Be(w,D){w._setDocumentType(D);const k=D.forceQuirks?f.DOCUMENT_MODE.QUIRKS:l.getDocumentMode(D);l.isConforming(D)||w._err(u.nonConformingDoctype),w.treeAdapter.setDocumentMode(w.document,k),w.insertionMode=y}function Ue(w,D){w._err(u.missingDoctype,{beforeToken:!0}),w.treeAdapter.setDocumentMode(w.document,f.DOCUMENT_MODE.QUIRKS),w.insertionMode=y,w._processToken(D)}function ct(w,D){D.tagName===T.HTML?(w._insertElement(D,h.HTML),w.insertionMode=E):Dt(w,D)}function at(w,D){const k=D.tagName;(k===T.HTML||k===T.HEAD||k===T.BODY||k===T.BR)&&Dt(w,D)}function Dt(w,D){w._insertFakeRootElement(),w.insertionMode=E,w._processToken(D)}function Bt(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.HEAD?(w._insertElement(D,h.HTML),w.headElement=w.openElements.current,w.insertionMode=x):Ft(w,D)}function fn(w,D){const k=D.tagName;k===T.HEAD||k===T.BODY||k===T.HTML||k===T.BR?Ft(w,D):w._err(u.endTagWithoutMatchingOpenElement)}function Ft(w,D){w._insertFakeElement(T.HEAD),w.headElement=w.openElements.current,w.insertionMode=x,w._processToken(D)}function vt(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.BASE||k===T.BASEFONT||k===T.BGSOUND||k===T.LINK||k===T.META?(w._appendElement(D,h.HTML),D.ackSelfClosing=!0):k===T.TITLE?w._switchToTextParsing(D,t.MODE.RCDATA):k===T.NOSCRIPT?w.options.scriptingEnabled?w._switchToTextParsing(D,t.MODE.RAWTEXT):(w._insertElement(D,h.HTML),w.insertionMode=L):k===T.NOFRAMES||k===T.STYLE?w._switchToTextParsing(D,t.MODE.RAWTEXT):k===T.SCRIPT?w._switchToTextParsing(D,t.MODE.SCRIPT_DATA):k===T.TEMPLATE?(w._insertTemplate(D,h.HTML),w.activeFormattingElements.insertMarker(),w.framesetOk=!1,w.insertionMode=q,w._pushTmplInsertionMode(q)):k===T.HEAD?w._err(u.misplacedStartTagForHeadElement):St(w,D)}function Ut(w,D){const k=D.tagName;k===T.HEAD?(w.openElements.pop(),w.insertionMode=C):k===T.BODY||k===T.BR||k===T.HTML?St(w,D):k===T.TEMPLATE&&w.openElements.tmplCount>0?(w.openElements.generateImpliedEndTagsThoroughly(),w.openElements.currentTagName!==T.TEMPLATE&&w._err(u.closingOfElementWithOpenChildElements),w.openElements.popUntilTagNamePopped(T.TEMPLATE),w.activeFormattingElements.clearToLastMarker(),w._popTmplInsertionMode(),w._resetInsertionMode()):w._err(u.endTagWithoutMatchingOpenElement)}function St(w,D){w.openElements.pop(),w.insertionMode=C,w._processToken(D)}function un(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.BASEFONT||k===T.BGSOUND||k===T.HEAD||k===T.LINK||k===T.META||k===T.NOFRAMES||k===T.STYLE?vt(w,D):k===T.NOSCRIPT?w._err(u.nestedNoscriptInHead):Gn(w,D)}function rr(w,D){const k=D.tagName;k===T.NOSCRIPT?(w.openElements.pop(),w.insertionMode=x):k===T.BR?Gn(w,D):w._err(u.endTagWithoutMatchingOpenElement)}function Gn(w,D){const k=D.type===t.EOF_TOKEN?u.openElementsLeftAfterEof:u.disallowedContentInNoscriptInHead;w._err(k),w.openElements.pop(),w.insertionMode=x,w._processToken(D)}function Bn(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.BODY?(w._insertElement(D,h.HTML),w.framesetOk=!1,w.insertionMode=A):k===T.FRAMESET?(w._insertElement(D,h.HTML),w.insertionMode=K):k===T.BASE||k===T.BASEFONT||k===T.BGSOUND||k===T.LINK||k===T.META||k===T.NOFRAMES||k===T.SCRIPT||k===T.STYLE||k===T.TEMPLATE||k===T.TITLE?(w._err(u.abandonedHeadElementChild),w.openElements.push(w.headElement),vt(w,D),w.openElements.remove(w.headElement)):k===T.HEAD?w._err(u.misplacedStartTagForHeadElement):Mn(w,D)}function Tt(w,D){const k=D.tagName;k===T.BODY||k===T.HTML||k===T.BR?Mn(w,D):k===T.TEMPLATE?Ut(w,D):w._err(u.endTagWithoutMatchingOpenElement)}function Mn(w,D){w._insertFakeElement(T.BODY),w.insertionMode=A,w._processToken(D)}function It(w,D){w._reconstructActiveFormattingElements(),w._insertCharacters(D)}function bn(w,D){w._reconstructActiveFormattingElements(),w._insertCharacters(D),w.framesetOk=!1}function re(w,D){w.openElements.tmplCount===0&&w.treeAdapter.adoptAttributes(w.openElements.items[0],D.attrs)}function he(w,D){const k=w.openElements.tryPeekProperlyNestedBodyElement();k&&w.openElements.tmplCount===0&&(w.framesetOk=!1,w.treeAdapter.adoptAttributes(k,D.attrs))}function Oe(w,D){const k=w.openElements.tryPeekProperlyNestedBodyElement();w.framesetOk&&k&&(w.treeAdapter.detachNode(k),w.openElements.popAllUpToHtmlElement(),w._insertElement(D,h.HTML),w.insertionMode=K)}function Xe(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML)}function qt(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement();const k=w.openElements.currentTagName;(k===T.H1||k===T.H2||k===T.H3||k===T.H4||k===T.H5||k===T.H6)&&w.openElements.pop(),w._insertElement(D,h.HTML)}function $t(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML),w.skipNextNewLine=!0,w.framesetOk=!1}function qe(w,D){const k=w.openElements.tmplCount>0;(!w.formElement||k)&&(w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML),k||(w.formElement=w.openElements.current))}function He(w,D){w.framesetOk=!1;const k=D.tagName;for(let Re=w.openElements.stackTop;Re>=0;Re--){const st=w.openElements.items[Re],Kt=w.treeAdapter.getTagName(st);let or=null;if(k===T.LI&&Kt===T.LI?or=T.LI:(k===T.DD||k===T.DT)&&(Kt===T.DD||Kt===T.DT)&&(or=Kt),or){w.openElements.generateImpliedEndTagsWithExclusion(or),w.openElements.popUntilTagNamePopped(or);break}if(Kt!==T.ADDRESS&&Kt!==T.DIV&&Kt!==T.P&&w._isSpecialElement(st))break}w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML)}function it(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML),w.tokenizer.state=t.MODE.PLAINTEXT}function xt(w,D){w.openElements.hasInScope(T.BUTTON)&&(w.openElements.generateImpliedEndTags(),w.openElements.popUntilTagNamePopped(T.BUTTON)),w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML),w.framesetOk=!1}function Mt(w,D){const k=w.activeFormattingElements.getElementEntryInScopeWithTagName(T.A);k&&(de(w,D),w.openElements.remove(k.element),w.activeFormattingElements.removeEntry(k)),w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML),w.activeFormattingElements.pushElement(w.openElements.current,D)}function pt(w,D){w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML),w.activeFormattingElements.pushElement(w.openElements.current,D)}function mr(w,D){w._reconstructActiveFormattingElements(),w.openElements.hasInScope(T.NOBR)&&(de(w,D),w._reconstructActiveFormattingElements()),w._insertElement(D,h.HTML),w.activeFormattingElements.pushElement(w.openElements.current,D)}function pn(w,D){w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML),w.activeFormattingElements.insertMarker(),w.framesetOk=!1}function gr(w,D){w.treeAdapter.getDocumentMode(w.document)!==f.DOCUMENT_MODE.QUIRKS&&w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML),w.framesetOk=!1,w.insertionMode=R}function Gt(w,D){w._reconstructActiveFormattingElements(),w._appendElement(D,h.HTML),w.framesetOk=!1,D.ackSelfClosing=!0}function Xi(w,D){w._reconstructActiveFormattingElements(),w._appendElement(D,h.HTML);const k=t.getTokenAttr(D,g.TYPE);(!k||k.toLowerCase()!==m)&&(w.framesetOk=!1),D.ackSelfClosing=!0}function Ji(w,D){w._appendElement(D,h.HTML),D.ackSelfClosing=!0}function qo(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._appendElement(D,h.HTML),w.framesetOk=!1,D.ackSelfClosing=!0}function Go(w,D){D.tagName=T.IMG,Gt(w,D)}function Pr(w,D){w._insertElement(D,h.HTML),w.skipNextNewLine=!0,w.tokenizer.state=t.MODE.RCDATA,w.originalInsertionMode=w.insertionMode,w.framesetOk=!1,w.insertionMode=O}function De(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._reconstructActiveFormattingElements(),w.framesetOk=!1,w._switchToTextParsing(D,t.MODE.RAWTEXT)}function ie(w,D){w.framesetOk=!1,w._switchToTextParsing(D,t.MODE.RAWTEXT)}function we(w,D){w._switchToTextParsing(D,t.MODE.RAWTEXT)}function Ae(w,D){w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML),w.framesetOk=!1,w.insertionMode===R||w.insertionMode===M||w.insertionMode===U||w.insertionMode===G||w.insertionMode===P?w.insertionMode=B:w.insertionMode=F}function ke(w,D){w.openElements.currentTagName===T.OPTION&&w.openElements.pop(),w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML)}function V(w,D){w.openElements.hasInScope(T.RUBY)&&w.openElements.generateImpliedEndTags(),w._insertElement(D,h.HTML)}function tt(w,D){w.openElements.hasInScope(T.RUBY)&&w.openElements.generateImpliedEndTagsWithExclusion(T.RTC),w._insertElement(D,h.HTML)}function kt(w,D){w.openElements.hasInButtonScope(T.P)&&w._closePElement(),w._insertElement(D,h.HTML)}function Vt(w,D){w._reconstructActiveFormattingElements(),c.adjustTokenMathMLAttrs(D),c.adjustTokenXMLAttrs(D),D.selfClosing?w._appendElement(D,h.MATHML):w._insertElement(D,h.MATHML),D.ackSelfClosing=!0}function Wt(w,D){w._reconstructActiveFormattingElements(),c.adjustTokenSVGAttrs(D),c.adjustTokenXMLAttrs(D),D.selfClosing?w._appendElement(D,h.SVG):w._insertElement(D,h.SVG),D.ackSelfClosing=!0}function _t(w,D){w._reconstructActiveFormattingElements(),w._insertElement(D,h.HTML)}function ye(w,D){const k=D.tagName;switch(k.length){case 1:k===T.I||k===T.S||k===T.B||k===T.U?pt(w,D):k===T.P?Xe(w,D):k===T.A?Mt(w,D):_t(w,D);break;case 2:k===T.DL||k===T.OL||k===T.UL?Xe(w,D):k===T.H1||k===T.H2||k===T.H3||k===T.H4||k===T.H5||k===T.H6?qt(w,D):k===T.LI||k===T.DD||k===T.DT?He(w,D):k===T.EM||k===T.TT?pt(w,D):k===T.BR?Gt(w,D):k===T.HR?qo(w,D):k===T.RB?V(w,D):k===T.RT||k===T.RP?tt(w,D):k!==T.TH&&k!==T.TD&&k!==T.TR&&_t(w,D);break;case 3:k===T.DIV||k===T.DIR||k===T.NAV?Xe(w,D):k===T.PRE?$t(w,D):k===T.BIG?pt(w,D):k===T.IMG||k===T.WBR?Gt(w,D):k===T.XMP?De(w,D):k===T.SVG?Wt(w,D):k===T.RTC?V(w,D):k!==T.COL&&_t(w,D);break;case 4:k===T.HTML?re(w,D):k===T.BASE||k===T.LINK||k===T.META?vt(w,D):k===T.BODY?he(w,D):k===T.MAIN||k===T.MENU?Xe(w,D):k===T.FORM?qe(w,D):k===T.CODE||k===T.FONT?pt(w,D):k===T.NOBR?mr(w,D):k===T.AREA?Gt(w,D):k===T.MATH?Vt(w,D):k===T.MENU?kt(w,D):k!==T.HEAD&&_t(w,D);break;case 5:k===T.STYLE||k===T.TITLE?vt(w,D):k===T.ASIDE?Xe(w,D):k===T.SMALL?pt(w,D):k===T.TABLE?gr(w,D):k===T.EMBED?Gt(w,D):k===T.INPUT?Xi(w,D):k===T.PARAM||k===T.TRACK?Ji(w,D):k===T.IMAGE?Go(w,D):k!==T.FRAME&&k!==T.TBODY&&k!==T.TFOOT&&k!==T.THEAD&&_t(w,D);break;case 6:k===T.SCRIPT?vt(w,D):k===T.CENTER||k===T.FIGURE||k===T.FOOTER||k===T.HEADER||k===T.HGROUP||k===T.DIALOG?Xe(w,D):k===T.BUTTON?xt(w,D):k===T.STRIKE||k===T.STRONG?pt(w,D):k===T.APPLET||k===T.OBJECT?pn(w,D):k===T.KEYGEN?Gt(w,D):k===T.SOURCE?Ji(w,D):k===T.IFRAME?ie(w,D):k===T.SELECT?Ae(w,D):k===T.OPTION?ke(w,D):_t(w,D);break;case 7:k===T.BGSOUND?vt(w,D):k===T.DETAILS||k===T.ADDRESS||k===T.ARTICLE||k===T.SECTION||k===T.SUMMARY?Xe(w,D):k===T.LISTING?$t(w,D):k===T.MARQUEE?pn(w,D):k===T.NOEMBED?we(w,D):k!==T.CAPTION&&_t(w,D);break;case 8:k===T.BASEFONT?vt(w,D):k===T.FRAMESET?Oe(w,D):k===T.FIELDSET?Xe(w,D):k===T.TEXTAREA?Pr(w,D):k===T.TEMPLATE?vt(w,D):k===T.NOSCRIPT?w.options.scriptingEnabled?we(w,D):_t(w,D):k===T.OPTGROUP?ke(w,D):k!==T.COLGROUP&&_t(w,D);break;case 9:k===T.PLAINTEXT?it(w,D):_t(w,D);break;case 10:k===T.BLOCKQUOTE||k===T.FIGCAPTION?Xe(w,D):_t(w,D);break;default:_t(w,D)}}function Fe(w){w.openElements.hasInScope(T.BODY)&&(w.insertionMode=ee)}function ht(w,D){w.openElements.hasInScope(T.BODY)&&(w.insertionMode=ee,w._processToken(D))}function bt(w,D){const k=D.tagName;w.openElements.hasInScope(k)&&(w.openElements.generateImpliedEndTags(),w.openElements.popUntilTagNamePopped(k))}function gn(w){const D=w.openElements.tmplCount>0,k=w.formElement;D||(w.formElement=null),(k||D)&&w.openElements.hasInScope(T.FORM)&&(w.openElements.generateImpliedEndTags(),D?w.openElements.popUntilTagNamePopped(T.FORM):w.openElements.remove(k))}function $r(w){w.openElements.hasInButtonScope(T.P)||w._insertFakeElement(T.P),w._closePElement()}function eo(w){w.openElements.hasInListItemScope(T.LI)&&(w.openElements.generateImpliedEndTagsWithExclusion(T.LI),w.openElements.popUntilTagNamePopped(T.LI))}function ia(w,D){const k=D.tagName;w.openElements.hasInScope(k)&&(w.openElements.generateImpliedEndTagsWithExclusion(k),w.openElements.popUntilTagNamePopped(k))}function ir(w){w.openElements.hasNumberedHeaderInScope()&&(w.openElements.generateImpliedEndTags(),w.openElements.popUntilNumberedHeaderPopped())}function Vr(w,D){const k=D.tagName;w.openElements.hasInScope(k)&&(w.openElements.generateImpliedEndTags(),w.openElements.popUntilTagNamePopped(k),w.activeFormattingElements.clearToLastMarker())}function jl(w){w._reconstructActiveFormattingElements(),w._insertFakeElement(T.BR),w.openElements.pop(),w.framesetOk=!1}function _r(w,D){const k=D.tagName;for(let Re=w.openElements.stackTop;Re>0;Re--){const st=w.openElements.items[Re];if(w.treeAdapter.getTagName(st)===k){w.openElements.generateImpliedEndTagsWithExclusion(k),w.openElements.popUntilElementPopped(st);break}if(w._isSpecialElement(st))break}}function oa(w,D){const k=D.tagName;switch(k.length){case 1:k===T.A||k===T.B||k===T.I||k===T.S||k===T.U?de(w,D):k===T.P?$r(w):_r(w,D);break;case 2:k===T.DL||k===T.UL||k===T.OL?bt(w,D):k===T.LI?eo(w):k===T.DD||k===T.DT?ia(w,D):k===T.H1||k===T.H2||k===T.H3||k===T.H4||k===T.H5||k===T.H6?ir(w):k===T.BR?jl(w):k===T.EM||k===T.TT?de(w,D):_r(w,D);break;case 3:k===T.BIG?de(w,D):k===T.DIR||k===T.DIV||k===T.NAV||k===T.PRE?bt(w,D):_r(w,D);break;case 4:k===T.BODY?Fe(w):k===T.HTML?ht(w,D):k===T.FORM?gn(w):k===T.CODE||k===T.FONT||k===T.NOBR?de(w,D):k===T.MAIN||k===T.MENU?bt(w,D):_r(w,D);break;case 5:k===T.ASIDE?bt(w,D):k===T.SMALL?de(w,D):_r(w,D);break;case 6:k===T.CENTER||k===T.FIGURE||k===T.FOOTER||k===T.HEADER||k===T.HGROUP||k===T.DIALOG?bt(w,D):k===T.APPLET||k===T.OBJECT?Vr(w,D):k===T.STRIKE||k===T.STRONG?de(w,D):_r(w,D);break;case 7:k===T.ADDRESS||k===T.ARTICLE||k===T.DETAILS||k===T.SECTION||k===T.SUMMARY||k===T.LISTING?bt(w,D):k===T.MARQUEE?Vr(w,D):_r(w,D);break;case 8:k===T.FIELDSET?bt(w,D):k===T.TEMPLATE?Ut(w,D):_r(w,D);break;case 10:k===T.BLOCKQUOTE||k===T.FIGCAPTION?bt(w,D):_r(w,D);break;default:_r(w,D)}}function wi(w,D){w.tmplInsertionModeStackTop>-1?Yh(w,D):w.stopped=!0}function o6(w,D){D.tagName===T.SCRIPT&&(w.pendingScript=w.openElements.current),w.openElements.pop(),w.insertionMode=w.originalInsertionMode}function s6(w,D){w._err(u.eofInElementThatCanContainOnlyText),w.openElements.pop(),w.insertionMode=w.originalInsertionMode,w._processToken(D)}function Oi(w,D){const k=w.openElements.currentTagName;k===T.TABLE||k===T.TBODY||k===T.TFOOT||k===T.THEAD||k===T.TR?(w.pendingCharacterTokens=[],w.hasNonWhitespacePendingCharacterToken=!1,w.originalInsertionMode=w.insertionMode,w.insertionMode=I,w._processToken(D)):hn(w,D)}function sa(w,D){w.openElements.clearBackToTableContext(),w.activeFormattingElements.insertMarker(),w._insertElement(D,h.HTML),w.insertionMode=M}function P2(w,D){w.openElements.clearBackToTableContext(),w._insertElement(D,h.HTML),w.insertionMode=$}function Br(w,D){w.openElements.clearBackToTableContext(),w._insertFakeElement(T.COLGROUP),w.insertionMode=$,w._processToken(D)}function zl(w,D){w.openElements.clearBackToTableContext(),w._insertElement(D,h.HTML),w.insertionMode=U}function aa(w,D){w.openElements.clearBackToTableContext(),w._insertFakeElement(T.TBODY),w.insertionMode=U,w._processToken(D)}function lt(w,D){w.openElements.hasInTableScope(T.TABLE)&&(w.openElements.popUntilTagNamePopped(T.TABLE),w._resetInsertionMode(),w._processToken(D))}function $2(w,D){const k=t.getTokenAttr(D,g.TYPE);k&&k.toLowerCase()===m?w._appendElement(D,h.HTML):hn(w,D),D.ackSelfClosing=!0}function En(w,D){!w.formElement&&w.openElements.tmplCount===0&&(w._insertElement(D,h.HTML),w.formElement=w.openElements.current,w.openElements.pop())}function Ht(w,D){const k=D.tagName;switch(k.length){case 2:k===T.TD||k===T.TH||k===T.TR?aa(w,D):hn(w,D);break;case 3:k===T.COL?Br(w,D):hn(w,D);break;case 4:k===T.FORM?En(w,D):hn(w,D);break;case 5:k===T.TABLE?lt(w,D):k===T.STYLE?vt(w,D):k===T.TBODY||k===T.TFOOT||k===T.THEAD?zl(w,D):k===T.INPUT?$2(w,D):hn(w,D);break;case 6:k===T.SCRIPT?vt(w,D):hn(w,D);break;case 7:k===T.CAPTION?sa(w,D):hn(w,D);break;case 8:k===T.COLGROUP?P2(w,D):k===T.TEMPLATE?vt(w,D):hn(w,D);break;default:hn(w,D)}}function to(w,D){const k=D.tagName;k===T.TABLE?w.openElements.hasInTableScope(T.TABLE)&&(w.openElements.popUntilTagNamePopped(T.TABLE),w._resetInsertionMode()):k===T.TEMPLATE?Ut(w,D):k!==T.BODY&&k!==T.CAPTION&&k!==T.COL&&k!==T.COLGROUP&&k!==T.HTML&&k!==T.TBODY&&k!==T.TD&&k!==T.TFOOT&&k!==T.TH&&k!==T.THEAD&&k!==T.TR&&hn(w,D)}function hn(w,D){const k=w.fosterParentingEnabled;w.fosterParentingEnabled=!0,w._processTokenInBodyMode(D),w.fosterParentingEnabled=k}function la(w,D){w.pendingCharacterTokens.push(D)}function ca(w,D){w.pendingCharacterTokens.push(D),w.hasNonWhitespacePendingCharacterToken=!0}function Ie(w,D){let k=0;if(w.hasNonWhitespacePendingCharacterToken)for(;k0?(w.openElements.popUntilTagNamePopped(T.TEMPLATE),w.activeFormattingElements.clearToLastMarker(),w._popTmplInsertionMode(),w._resetInsertionMode(),w._processToken(D)):w.stopped=!0}function RH(w,D){D.tagName===T.HTML?ye(w,D):c6(w,D)}function NH(w,D){D.tagName===T.HTML?w.fragmentContext||(w.insertionMode=ue):c6(w,D)}function c6(w,D){w.insertionMode=A,w._processToken(D)}function DH(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.FRAMESET?w._insertElement(D,h.HTML):k===T.FRAME?(w._appendElement(D,h.HTML),D.ackSelfClosing=!0):k===T.NOFRAMES&&vt(w,D)}function IH(w,D){D.tagName===T.FRAMESET&&!w.openElements.isRootHtmlElementCurrent()&&(w.openElements.pop(),!w.fragmentContext&&w.openElements.currentTagName!==T.FRAMESET&&(w.insertionMode=j))}function kH(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.NOFRAMES&&vt(w,D)}function HH(w,D){D.tagName===T.HTML&&(w.insertionMode=pe)}function PH(w,D){D.tagName===T.HTML?ye(w,D):u6(w,D)}function u6(w,D){w.insertionMode=A,w._processToken(D)}function $H(w,D){const k=D.tagName;k===T.HTML?ye(w,D):k===T.NOFRAMES&&vt(w,D)}function VH(w,D){D.chars=d.REPLACEMENT_CHARACTER,w._insertCharacters(D)}function BH(w,D){w._insertCharacters(D),w.framesetOk=!1}function FH(w,D){if(c.causesExit(D)&&!w.fragmentContext){for(;w.treeAdapter.getNamespaceURI(w.openElements.current)!==h.HTML&&!w._isIntegrationPoint(w.openElements.current);)w.openElements.pop();w._processToken(D)}else{const k=w._getAdjustedCurrentElement(),Re=w.treeAdapter.getNamespaceURI(k);Re===h.MATHML?c.adjustTokenMathMLAttrs(D):Re===h.SVG&&(c.adjustTokenSVGTagName(D),c.adjustTokenSVGAttrs(D)),c.adjustTokenXMLAttrs(D),D.selfClosing?w._appendElement(D,Re):w._insertElement(D,Re),D.ackSelfClosing=!0}}function UH(w,D){for(let k=w.openElements.stackTop;k>0;k--){const Re=w.openElements.items[k];if(w.treeAdapter.getNamespaceURI(Re)===h.HTML){w._processToken(D);break}if(w.treeAdapter.getTagName(Re).toLowerCase()===D.tagName){w.openElements.popUntilElementPopped(Re);break}}}return HT}var PT,Hw;function Bvn(){if(Hw)return PT;Hw=1;const t=zI(),e=YI(),n=ih(),o=na(),r=o.TAG_NAMES,i=o.NAMESPACES,s={treeAdapter:t},a=/&/g,l=/\u00a0/g,c=/"/g,u=//g;class f{constructor(h,g){this.options=e(s,g),this.treeAdapter=this.options.treeAdapter,this.html="",this.startNode=h}serialize(){return this._serializeChildNodes(this.startNode),this.html}_serializeChildNodes(h){const g=this.treeAdapter.getChildNodes(h);if(g)for(let Q=0,m=g.length;Q",g!==r.AREA&&g!==r.BASE&&g!==r.BASEFONT&&g!==r.BGSOUND&&g!==r.BR&&g!==r.COL&&g!==r.EMBED&&g!==r.FRAME&&g!==r.HR&&g!==r.IMG&&g!==r.INPUT&&g!==r.KEYGEN&&g!==r.LINK&&g!==r.META&&g!==r.PARAM&&g!==r.SOURCE&&g!==r.TRACK&&g!==r.WBR){const m=g===r.TEMPLATE&&Q===i.HTML?this.treeAdapter.getTemplateContent(h):h;this._serializeChildNodes(m),this.html+=""}}_serializeAttributes(h){const g=this.treeAdapter.getAttrList(h);for(let Q=0,m=g.length;Q"}_serializeDocumentTypeNode(h){const g=this.treeAdapter.getDocumentTypeNodeName(h);this.html+="<"+n.serializeContent(g,null,null)+">"}}return f.escapeString=function(T,h){return T=T.replace(a,"&").replace(l," "),h?T=T.replace(c,"""):T=T.replace(u,"<").replace(d,">"),T},PT=f,PT}var Pw;function Fvn(){if(Pw)return X4;Pw=1;const t=Vvn(),e=Bvn();return X4.parse=function(o,r){return new t(r).parse(o)},X4.parseFragment=function(o,r,i){return typeof o=="string"&&(i=r,r=o,o=null),new t(i).parseFragment(r,o)},X4.serialize=function(n,o){return new e(n,o).serialize()},X4}var Ct={},$w;function Uvn(){if($w)return Ct;$w=1;const t=ih(),{DOCUMENT_MODE:e}=na(),n={element:1,text:3,cdata:4,comment:8},o={tagName:"name",childNodes:"children",parentNode:"parent",previousSibling:"prev",nextSibling:"next",nodeValue:"data"};class r{constructor(c){for(const u of Object.keys(c))this[u]=c[u]}get firstChild(){const c=this.children;return c&&c[0]||null}get lastChild(){const c=this.children;return c&&c[c.length-1]||null}get nodeType(){return n[this.type]||n.element}}Object.keys(o).forEach(l=>{const c=o[l];Object.defineProperty(r.prototype,l,{get:function(){return this[c]||null},set:function(u){return this[c]=u,u}})}),Ct.createDocument=function(){return new r({type:"root",name:"root",parent:null,prev:null,next:null,children:[],"x-mode":e.NO_QUIRKS})},Ct.createDocumentFragment=function(){return new r({type:"root",name:"root",parent:null,prev:null,next:null,children:[]})},Ct.createElement=function(l,c,u){const d=Object.create(null),f=Object.create(null),T=Object.create(null);for(let h=0;h"u"&&(l.attribs[d]=c[u].value,l["x-attribsNamespace"][d]=c[u].namespace,l["x-attribsPrefix"][d]=c[u].prefix)}},Ct.getFirstChild=function(l){return l.children[0]},Ct.getChildNodes=function(l){return l.children},Ct.getParentNode=function(l){return l.parent},Ct.getAttrList=function(l){const c=[];for(const u in l.attribs)c.push({name:u,value:l.attribs[u],namespace:l["x-attribsNamespace"][u],prefix:l["x-attribsPrefix"][u]});return c},Ct.getTagName=function(l){return l.name},Ct.getNamespaceURI=function(l){return l.namespace},Ct.getTextNodeContent=function(l){return l.data},Ct.getCommentNodeContent=function(l){return l.data},Ct.getDocumentTypeNodeName=function(l){return l["x-name"]},Ct.getDocumentTypeNodePublicId=function(l){return l["x-publicId"]},Ct.getDocumentTypeNodeSystemId=function(l){return l["x-systemId"]},Ct.isTextNode=function(l){return l.type==="text"},Ct.isCommentNode=function(l){return l.type==="comment"},Ct.isDocumentTypeNode=function(l){return l.type==="directive"&&l.name==="!doctype"},Ct.isElementNode=function(l){return!!l.attribs},Ct.setNodeSourceCodeLocation=function(l,c){l.sourceCodeLocation=c},Ct.getNodeSourceCodeLocation=function(l){return l.sourceCodeLocation},Ct.updateNodeSourceCodeLocation=function(l,c){l.sourceCodeLocation=Object.assign(l.sourceCodeLocation,c)},Ct}var Vw;function WI(){if(Vw)return p2;Vw=1,Object.defineProperty(p2,"__esModule",{value:!0}),p2.render=p2.parse=void 0;var t=ta,e=jr(),n=Fvn(),o=t.__importDefault(Uvn());function r(s,a,l){var c={scriptingEnabled:typeof a.scriptingEnabled=="boolean"?a.scriptingEnabled:!0,treeAdapter:o.default,sourceCodeLocationInfo:a.sourceCodeLocationInfo},u=a.context;return l?n.parse(s,c):n.parseFragment(u,s,c)}p2.parse=r;function i(s){for(var a,l=("length"in s)?s:[s],c=0;c/;function l(c){return a.test(c)}return Xn.isHtml=l,Xn}var Cn={},Gw;function qvn(){if(Gw)return Cn;Gw=1,Object.defineProperty(Cn,"__esModule",{value:!0}),Cn.toggleClass=Cn.removeClass=Cn.addClass=Cn.hasClass=Cn.removeAttr=Cn.val=Cn.data=Cn.prop=Cn.attr=void 0;var t=Jc(),e=Ul(),n=Object.prototype.hasOwnProperty,o=/\s+/,r="data-",i={null:null,true:!0,false:!1},s=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,a=/^{[^]*}$|^\[[^]*]$/;function l(C,A,O){var R;if(!(!C||!e.isTag(C))){if((R=C.attribs)!==null&&R!==void 0||(C.attribs={}),!A)return C.attribs;if(n.call(C.attribs,A))return!O&&s.test(A)?A:C.attribs[A];if(C.name==="option"&&A==="value")return t.text(C.children);if(C.name==="input"&&(C.attribs.type==="radio"||C.attribs.type==="checkbox")&&A==="value")return"on"}}function c(C,A,O){O===null?_(C,A):C.attribs[A]=""+O}function u(C,A){if(typeof C=="object"||A!==void 0){if(typeof A=="function"){if(typeof C!="string")throw new Error("Bad combination of arguments.");return e.domEach(this,function(O,R){e.isTag(O)&&c(O,C,A.call(O,R,O.attribs[C]))})}return e.domEach(this,function(O){e.isTag(O)&&(typeof C=="object"?Object.keys(C).forEach(function(R){var I=C[R];c(O,R,I)}):c(O,C,A))})}return arguments.length>1?this:l(this[0],C,this.options.xmlMode)}Cn.attr=u;function d(C,A,O){if(!(!C||!e.isTag(C)))return A in C?C[A]:!O&&s.test(A)?l(C,A,!1)!==void 0:l(C,A,O)}function f(C,A,O,R){A in C?C[A]=O:c(C,A,!R&&s.test(A)?O?"":null:""+O)}function T(C,A){var O=this;if(typeof C=="string"&&A===void 0)switch(C){case"style":{var R=this.css(),I=Object.keys(R);return I.forEach(function($,U){R[U]=$}),R.length=I.length,R}case"tagName":case"nodeName":{var M=this[0];return e.isTag(M)?M.name.toUpperCase():void 0}case"outerHTML":return this.clone().wrap("").parent().html();case"innerHTML":return this.html();default:return d(this[0],C,this.options.xmlMode)}if(typeof C=="object"||A!==void 0){if(typeof A=="function"){if(typeof C=="object")throw new Error("Bad combination of arguments.");return e.domEach(this,function($,U){e.isTag($)&&f($,C,A.call($,U,d($,C,O.options.xmlMode)),O.options.xmlMode)})}return e.domEach(this,function($){e.isTag($)&&(typeof C=="object"?Object.keys(C).forEach(function(U){var G=C[U];f($,U,G,O.options.xmlMode)}):f($,C,A,O.options.xmlMode))})}}Cn.prop=T;function h(C,A,O){var R,I=C;(R=I.data)!==null&&R!==void 0||(I.data={}),typeof A=="object"?Object.assign(I.data,A):typeof A=="string"&&O!==void 0&&(I.data[A]=O)}function g(C,A){var O,R,I;A==null?(O=Object.keys(C.attribs).filter(function(G){return G.startsWith(r)}),R=O.map(function(G){return e.camelCase(G.slice(r.length))})):(O=[r+e.cssCase(A)],R=[A]);for(var M=0;M-1;){var I=R+C.length;if((R===0||o.test(O[R-1]))&&(I===O.length||o.test(O[I])))return!0}return!1})}Cn.hasClass=y;function E(C){if(typeof C=="function")return e.domEach(this,function(P,F){if(e.isTag(P)){var B=P.attribs.class||"";E.call([P],C.call(P,F,B))}});if(!C||typeof C!="string")return this;for(var A=C.split(o),O=this.length,R=0;R=0&&(M.splice(G,1),$=!0,U--)}$&&(I.attribs.class=M.join(" "))}})}Cn.removeClass=x;function L(C,A){if(typeof C=="function")return e.domEach(this,function(B,q){e.isTag(B)&&L.call([B],C.call(B,q,B.attribs.class||"",A),A)});if(!C||typeof C!="string")return this;for(var O=C.split(o),R=O.length,I=typeof A=="boolean"?A?1:-1:0,M=this.length,$=0;$=0&&F<0?G.push(O[P]):I<=0&&F>=0&&G.splice(F,1)}U.attribs.class=G.join(" ")}}return this}return Cn.toggleClass=L,Cn}var We={},jw;function Gvn(){if(jw)return We;jw=1,Object.defineProperty(We,"__esModule",{value:!0}),We.addBack=We.add=We.end=We.slice=We.index=We.toArray=We.get=We.eq=We.last=We.first=We.has=We.not=We.is=We.filterArray=We.filter=We.map=We.each=We.contents=We.children=We.siblings=We.prevUntil=We.prevAll=We.prev=We.nextUntil=We.nextAll=We.next=We.closest=We.parentsUntil=We.parents=We.parent=We.find=void 0;var t=ta,e=jr(),n=t.__importStar(FI()),o=Ul(),r=Jc(),i=Fl(),s=i.DomUtils.uniqueSort,a=/^\s*[~+]/;function l(P){var F;if(!P)return this._make([]);var B=this.toArray();if(typeof P!="string"){var q=o.isCheerio(P)?P.toArray():[P];return this._make(q.filter(function(j){return B.some(function(ue){return r.contains(ue,j)})}))}var ee=a.test(P)?B:this.children().toArray(),K={context:B,root:(F=this._root)===null||F===void 0?void 0:F[0],xmlMode:this.options.xmlMode};return this._make(n.select(P,ee,K))}We.find=l;function c(P){return function(F){for(var B=[],q=1;q1&&j.length>1?B.reduce(function(ue,pe){return pe(ue)},j):j)}}}var u=c(function(P,F){for(var B,q=[],ee=0;ee0})}We.has=x;function L(){return this.length>1?this._make(this[0]):this}We.first=L;function C(){return this.length>0?this._make(this[this.length-1]):this}We.last=C;function A(P){var F;return P=+P,P===0&&this.length<=1?this:(P<0&&(P=this.length+P),this._make((F=this[P])!==null&&F!==void 0?F:[]))}We.eq=A;function O(P){return P==null?this.toArray():this[P<0?this.length+P:P]}We.get=O;function R(){return Array.prototype.slice.call(this)}We.toArray=R;function I(P){var F,B;return P==null?(F=this.parent().children(),B=this[0]):typeof P=="string"?(F=this._make(P),B=this[0]):(F=this,B=o.isCheerio(P)?P[0]:P),Array.prototype.indexOf.call(F,B)}We.index=I;function M(P,F){return this._make(Array.prototype.slice.call(this,P,F))}We.slice=M;function $(){var P;return(P=this.prevObject)!==null&&P!==void 0?P:this._make([])}We.end=$;function U(P,F){var B=this._make(P,F),q=s(t.__spreadArray(t.__spreadArray([],this.get()),B.get()));return this._make(q)}We.add=U;function G(P){return this.prevObject?this.add(P?this.prevObject.filter(P):this.prevObject):this}return We.addBack=G,We}var ft={},zw;function jvn(){if(zw)return ft;zw=1,Object.defineProperty(ft,"__esModule",{value:!0}),ft.clone=ft.text=ft.toString=ft.html=ft.empty=ft.replaceWith=ft.remove=ft.insertBefore=ft.before=ft.insertAfter=ft.after=ft.wrapAll=ft.unwrap=ft.wrapInner=ft.wrap=ft.prepend=ft.append=ft.prependTo=ft.appendTo=ft._makeDomArray=void 0;var t=ta,e=jr(),n=jr(),o=t.__importStar(oh()),r=Jc(),i=Ul(),s=Fl();function a(A,O){var R=this;return A==null?[]:i.isCheerio(A)?O?i.cloneDom(A.get()):A.get():Array.isArray(A)?A.reduce(function(I,M){return I.concat(R._makeDomArray(M,O))},[]):typeof A=="string"?o.default(A,this.options,!1).children:O?i.cloneDom([A]):[A]}ft._makeDomArray=a;function l(A){return function(){for(var O=this,R=[],I=0;I-1&&(ee.children.splice(K,1),M===ee&&O>K&&G[0]--)}q.parent=M,q.prev&&(q.prev.next=($=q.next)!==null&&$!==void 0?$:null),q.next&&(q.next.prev=(U=q.prev)!==null&&U!==void 0?U:null),q.prev=I[B-1]||P,q.next=I[B+1]||F}return P&&(P.next=I[0]),F&&(F.prev=I[I.length-1]),A.splice.apply(A,G)}function u(A){var O=i.isCheerio(A)?A:this._make(A);return O.append(this),this}ft.appendTo=u;function d(A){var O=i.isCheerio(A)?A:this._make(A);return O.prepend(this),this}ft.prependTo=d,ft.append=l(function(A,O,R){c(O,O.length,0,A,R)}),ft.prepend=l(function(A,O,R){c(O,0,0,A,R)});function f(A){return function(O){for(var R=this.length-1,I=this.parents().last(),M=0;M0?P:!1}function v(G){return G===b(1)}function b(G){return o[a+(G||1)]}function y(){var G=d.pop();return u=d[d.length-1],G}function E(G){return u=G,d.push(u),d.length}function x(G){var P=u;return d[d.length-1]=u=G,P}function L(G){if((G||1)==1)o[a]==` @@ -213,13 +213,13 @@ Please report this to https://github.com/markedjs/marked.`,e){const r="

An err `);return _}return o},YT}var WT,TO;function syn(){if(TO)return WT;TO=1;var t=ryn(),e=oyn(),n=e(function(r,i){return t(r,{xmlMode:i&&i.xmlMode},o,[i])}),o=function(r,i){return n.juiceDocument(r,i)};return n.inlineContent=function(r,i,s){return t(r,{xmlMode:s&&s.xmlMode},n.inlineDocument,[i,s])},WT=n,WT}var rc,fO;function ayn(){if(fO)return rc;fO=1;var t=rc&&rc.__importDefault||function(h){return h&&h.__esModule?h:{default:h}};const e=Vp(),n=N1t(),o=PD(),r=$2t(),i=elt(),s=Xlt(),a=n3t(),l=t(syn());function c(h,g,Q){const m=(0,r.liteAdaptor)(),_=(0,i.RegisterHTMLHandler)(m);(0,a.AssistiveMmlHandler)(_);const v=e.mathjax.document(h,g),b=m.outerHTML(v.convert(h,Q)),y=m.outerHTML(g.OutputJax.styleSheet(v));return(0,l.default)(b+y)}function u(h,g){let Q=h.posMax,m=!0,_=!0;const v=g>0?h.src.charCodeAt(g-1):-1,b=g+1<=Q?h.src.charCodeAt(g+1):-1;return(v===32||v===9||b>=48&&b<=57)&&(_=!1),(b===32||b===9)&&(m=!1),{can_open:m,can_close:_}}function d(h,g){if(h.src[h.pos]!=="$")return!1;let Q=u(h,h.pos);if(!Q.can_open)return g||(h.pending+="$"),h.pos+=1,!0;const m=h.pos+1;let _=m;for(;(_=h.src.indexOf("$",_))!==-1;){let v=_-1;for(;h.src[v]==="\\";)v-=1;if((_-v)%2==1)break;_+=1}if(_===-1)return g||(h.pending+="$"),h.pos=m,!0;if(_-m===0)return g||(h.pending+="$$"),h.pos=m+1,!0;if(Q=u(h,_),!Q.can_close)return g||(h.pending+="$"),h.pos=m,!0;if(!g){const v=h.push("math_inline","math",0);v.markup="$",v.content=h.src.slice(m,_)}return h.pos=_+1,!0}function f(h,g,Q,m){let _,v,b=!1,y=h.bMarks[g]+h.tShift[g],E=h.eMarks[g],x="";if(y+2>E||h.src.slice(y,y+2)!=="$$")return!1;y+=2;let L=h.src.slice(y,E);if(m)return!0;for(L.trim().slice(-2)==="$$"&&(L=L.trim().slice(0,-2),b=!0),_=g;!b&&(_++,!(_>=Q||(y=h.bMarks[_]+h.tShift[_],E=h.eMarks[_],y/g,">").replace(/"/g,""").replace(/'/g,"'")}const cyn={name:"MarkdownRenderer",props:{host:{type:String,required:!1,default:"http://localhost:9600"},client_id:{type:String,required:!0},markdownText:{type:String,required:!0},discussion_id:{type:[String,Number],default:"0",required:!1},message_id:{value:"0",type:[String,Number],required:!1}},components:{CodeBlock:Mst,ThinkingBlock:S1t},setup(t){function e(a,l){for(let c=l;c"||u===""||u===""||u==="")return{line:c,tag:u}}return null}const n=(a,l,c,u)=>{let d=a.bMarks[l]+a.tShift[l],f=a.eMarks[l],T=a.src.slice(d,f).trim();if(T===""||T===""){let h=T,g=h.replace("<",""||h.tag==="")){let g=h.tag,Q=g===""?"":"",m=[];for(let v=l;v{const c=l&&j1.getLanguage(l)?l:"plaintext";return j1.highlight(c,a).value}}).use(Fet).use(il).use(Yet,{figcaption:!0}).use(ett);o.renderer.rules.thinking_open=()=>'

',o.renderer.rules.thinking_content=(a,l)=>`
${o.utils.escapeHtml(a[l].content)}
`,o.renderer.rules.thinking_close=()=>"
",o.block.ruler.before("fence","thinking",n);const r=Ve([]),i=()=>{if(t.markdownText){let a=o.parse(t.markdownText,{}),l=[];r.value=[];for(let c=0;c0&&(r.value.push({type:"html",html:o.renderer.render(l,o.options,{})}),l=[]);const d=a[c+1];d&&d.type==="thinking_content"&&r.value.push({type:"thinking",content:d.content,is_done:d.is_done}),c+=2}else u.type==="fence"?(l.length>0&&(r.value.push({type:"html",html:o.renderer.render(l,o.options,{})}),l=[]),r.value.push({type:"code",language:lyn(u.info),code:u.content})):l.push(u)}l.length>0&&r.value.push({type:"html",html:o.renderer.render(l,o.options,{})}),Se(()=>{Ce.replace(),window.MathJax&&window.MathJax.typesetPromise()})}else r.value=[]},s=(a,l)=>{r.value[a].code=l};return $n(()=>t.markdownText,i),Hr(()=>{i()}),{markdownItems:r,updateCode:s}}},uyn={class:"break-all container w-full"},dyn={ref:"mdRender",class:"markdown-content"},Tyn=["innerHTML"];function fyn(t,e,n,o,r,i){const s=ze("code-block"),a=ze("thinking-block");return N(),H("div",uyn,[S("div",dyn,[(N(!0),H(xe,null,Pe(o.markdownItems,(l,c)=>(N(),H("div",{key:c},[l.type==="code"?(N(),ot(s,{key:0,host:n.host,language:l.language,code:l.code,discussion_id:n.discussion_id,message_id:n.message_id,client_id:n.client_id,onUpdateCode:u=>o.updateCode(c,u)},null,8,["host","language","code","discussion_id","message_id","client_id","onUpdateCode"])):Z("",!0),l.type==="thinking"?(N(),ot(a,{key:1,content:l.content,"is-done":l.is_done},null,8,["content","is-done"])):(N(),H("div",{key:2,innerHTML:l.html},null,8,Tyn))]))),128))],512)])}const Q0=Ye(cyn,[["render",fyn],["__scopeId","data-v-3ade7b33"]]),pyn={data(){return{show:!1,has_button:!0,message:""}},components:{MarkdownRenderer:Q0},methods:{hide(){this.show=!1,this.$emit("ok")},showMessage(t){this.message=t,this.has_button=!0,this.show=!0},showBlockingMessage(t){this.message=t,this.has_button=!1,this.show=!0},updateMessage(t){this.message=t,this.show=!0},hideMessage(){this.show=!1}}},hyn={key:0,class:"fixed top-0 left-0 right-0 bottom-0 flex items-center justify-center bg-black bg-opacity-50 z-50"},myn={class:"pl-10 pr-10 bg-bg-light dark:bg-bg-dark p-8 rounded-lg shadow-lg"},gyn={class:"container max-h-500 overflow-y-auto"},_yn={class:"text-lg font-medium"},Qyn={class:"mt-4 flex justify-center"},vyn={key:1,"aria-hidden":"true",class:"w-6 h-6 animate-spin fill-secondary",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function yyn(t,e,n,o,r,i){const s=ze("MarkdownRenderer");return r.show?(N(),H("div",hyn,[S("div",myn,[S("div",gyn,[S("div",_yn,[ne(s,{ref:"mdRender",host:"","markdown-text":r.message,message_id:0,discussion_id:0},null,8,["markdown-text"])])]),S("div",Qyn,[r.has_button?(N(),H("button",{key:0,onClick:e[0]||(e[0]=(...a)=>i.hide&&i.hide(...a)),class:"bg-primary hover:bg-primary-light active:scale-95 duration-150 text-white px-4 py-2 rounded-lg shadow-lg hover:bg-secondary-dark"}," OK ")):Z("",!0),r.has_button?Z("",!0):(N(),H("svg",vyn,e[1]||(e[1]=[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"},null,-1),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"},null,-1)])))])])])):Z("",!0)}const byn=Ye(pyn,[["render",yyn]]),Eyn={props:{progress:{type:Number,required:!0}}},Syn={class:"progress-bar-container"};function xyn(t,e,n,o,r,i){return N(),H("div",Syn,[S("div",{class:"progress-bar",style:an({width:`${n.progress}%`})},null,4)])}const lh=Ye(Eyn,[["render",xyn],["__scopeId","data-v-ae2d8fdf"]]),Lyn={name:"UniversalForm",data(){return{show:!1,resolve:null,controls_array:[],title:"Universal Form",ConfirmButtonText:"Submit",DenyButtonText:"Cancel"}},mounted(){Ce.replace()},methods:{btn_clicked(t){t.callback?t.callback(t):console.log("Button clicked:",t)},hide(t){this.show=!1,this.resolve&&t&&(this.resolve(this.controls_array),this.resolve=null)},showForm(t,e,n,o){return typeof t=="object"&&!Array.isArray(t)?this._newShowForm(t):(this.ConfirmButtonText=n||this.ConfirmButtonText,this.DenyButtonText=o||this.DenyButtonText,this.controls_array=t.map(r=>({...r,isHelp:!1,placeholder:r.placeholder||"",required:r.required||!1,spanFull:r.spanFull||["btn","text","list","file","folder"].includes(r.type)})),new Promise(r=>{console.log("Resolve"),console.log(r),this.title=e||this.title,this.show=!0,this.resolve=r,this.$nextTick(()=>Ce.replace())}))},_newShowForm(t){return this.title=t.title||this.title,this.ConfirmButtonText=t.confirmText||this.ConfirmButtonText,this.DenyButtonText=t.denyText||this.DenyButtonText,this.controls_array=t.fields.map(e=>({...e,isHelp:!1,placeholder:e.placeholder||"",required:e.required||!1,spanFull:e.spanFull||["btn","text","list","file","folder"].includes(e.type)})),this.show=!0,new Promise(e=>{this.resolve=e,this.$nextTick(()=>Ce.replace())})},parseValue(t){switch(t.type){case"int":return parseInt(t.value)||0;case"float":return parseFloat(t.value)||0;case"bool":return!!t.value;case"list":return t.value.split(",").map(e=>e.trim());default:return t.value}},openFileDialog(t){const e=document.createElement("input");e.type=t.type==="folder"?"file":t.type,t.type==="folder"&&(e.webkitdirectory=!0),t.accept&&(e.accept=t.accept),e.onchange=n=>{const o=Array.from(n.target.files);t.value=o.map(r=>r.path).join(", ")},e.click()}},watch:{controls_array:{deep:!0,handler(t){t.forEach(e=>{e.type==="int"&&(e.value=parseInt(e.value)||0),e.type==="float"&&(e.value=parseFloat(e.value)||0)})}}}},Cyn={key:0,class:"fixed inset-0 flex items-center justify-center bg-black/50 backdrop-blur-sm transition-all",style:{"z-index":"1000"}},Ayn={class:"relative w-full mx-4 max-w-2xl"},wyn={class:"flex flex-col rounded-xl bg-white dark:bg-gray-800 shadow-2xl transform transition-all max-h-[90vh]"},Oyn={class:"flex items-center justify-between p-6 border-b border-gray-100 dark:border-gray-700"},Myn={class:"flex items-center gap-3"},Ryn={class:"text-xl font-bold text-gray-800 dark:text-gray-200"},Nyn={class:"overflow-y-auto px-6 py-5 custom-scrollbar"},Dyn={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},Iyn={class:"flex items-center justify-between mb-3"},kyn={class:"flex items-center gap-2"},Hyn={class:"text-base font-semibold text-gray-700 dark:text-gray-300"},Pyn=["onClick"],$yn={key:0,class:"text-xs text-red-500"},Vyn={key:0,class:"text-sm text-gray-500 dark:text-gray-400 mb-3"},Byn={class:"space-y-2"},Fyn={key:0},Uyn=["onUpdate:modelValue","placeholder"],qyn=["onUpdate:modelValue"],Gyn=["value"],jyn={key:1},zyn=["onClick"],Yyn={key:0,"data-feather":"item.icon",class:"w-4 h-4"},Wyn={key:2},Kyn=["onUpdate:modelValue"],Zyn={key:3,class:"space-y-3"},Xyn=["onUpdate:modelValue","step"],Jyn=["onUpdate:modelValue","min","max","step"],ebn={key:4,class:"flex items-center gap-3"},tbn={class:"relative inline-flex items-center cursor-pointer switch"},nbn=["onUpdate:modelValue"],rbn={class:"text-sm text-gray-600 dark:text-gray-300"},ibn={key:5,class:"flex items-center gap-3"},obn=["onUpdate:modelValue"],sbn=["onUpdate:modelValue"],abn={key:6,class:"flex gap-2"},lbn=["onUpdate:modelValue"],cbn=["onClick"],ubn={key:1,class:"h-px bg-gray-100 dark:bg-gray-700 my-6"},dbn={class:"flex justify-end gap-3 p-6 border-t border-gray-100 dark:border-gray-700"};function Tbn(t,e,n,o,r,i){return r.show?(N(),H("div",Cyn,[S("div",Ayn,[S("div",wyn,[S("div",Oyn,[S("div",Myn,[e[3]||(e[3]=S("i",{"data-feather":"sliders",class:"w-6 h-6 text-blue-500"},null,-1)),S("h3",Ryn,J(r.title),1)]),S("button",{onClick:e[0]||(e[0]=oe(s=>i.hide(!1),["stop"])),class:"p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors"},e[4]||(e[4]=[S("i",{"data-feather":"x",class:"w-5 h-5 text-gray-500 dark:text-gray-400"},null,-1)]))]),S("div",Nyn,[S("div",Dyn,[(N(!0),H(xe,null,Pe(r.controls_array,(s,a)=>(N(),H("div",{key:a,class:Ee(["group",{"md:col-span-2":s.spanFull||["btn","text","list","file","folder"].includes(s.type)}])},[S("div",Iyn,[S("label",kyn,[S("span",Hyn,J(s.name),1),s.help?(N(),H("button",{key:0,onClick:l=>s.isHelp=!s.isHelp,class:"text-gray-400 hover:text-blue-500 transition-colors"},e[5]||(e[5]=[S("i",{"data-feather":"help-circle",class:"w-4 h-4"},null,-1)]),8,Pyn)):Z("",!0)]),s.required?(N(),H("span",$yn,"* Required")):Z("",!0)]),s.isHelp?(N(),H("p",Vyn,J(s.help),1)):Z("",!0),S("div",Byn,[["str","string"].includes(s.type)?(N(),H("div",Fyn,[s.options?Le((N(),H("select",{key:1,"onUpdate:modelValue":l=>s.value=l,class:"w-full px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 focus:ring-2 focus:ring-blue-500 focus:border-blue-500 appearance-none"},[(N(!0),H(xe,null,Pe(s.options,(l,c)=>(N(),H("option",{key:c,value:l},J(l),9,Gyn))),128))],8,qyn)),[[Dr,s.value]]):Le((N(),H("input",{key:0,type:"text","onUpdate:modelValue":l=>s.value=l,placeholder:s.placeholder||"Enter text",class:"w-full px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 focus:ring-2 focus:ring-blue-500 focus:border-blue-500 transition-all"},null,8,Uyn)),[[Je,s.value]])])):Z("",!0),s.type==="btn"?(N(),H("div",jyn,[S("button",{onClick:l=>i.btn_clicked(s),class:"w-full px-4 py-3 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-lg transition-colors flex justify-center items-center gap-2"},[s.icon?(N(),H("i",Yyn)):Z("",!0),Re(" "+J(s.name),1)],8,zyn)])):Z("",!0),s.type==="text"?(N(),H("div",Wyn,[Le(S("textarea",{"onUpdate:modelValue":l=>s.value=l,rows:"4",class:"w-full px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 focus:ring-2 focus:ring-blue-500 focus:border-blue-500 resize-none"},null,8,Kyn),[[Je,s.value]])])):Z("",!0),["int","float"].includes(s.type)?(N(),H("div",Zyn,[Le(S("input",{type:"number","onUpdate:modelValue":l=>s.value=l,step:s.type==="int"?1:.1,class:"w-full px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"},null,8,Xyn),[[Je,s.value]]),s.min!==void 0&&s.max!==void 0?Le((N(),H("input",{key:0,type:"range","onUpdate:modelValue":l=>s.value=l,min:s.min,max:s.max,step:s.step||(s.type==="int"?1:.1),class:"w-full h-2 bg-gray-200 dark:bg-gray-700 rounded-full appearance-none cursor-pointer range-thumb"},null,8,Jyn)),[[Je,s.value]]):Z("",!0)])):Z("",!0),s.type==="bool"?(N(),H("div",ebn,[S("label",tbn,[Le(S("input",{type:"checkbox","onUpdate:modelValue":l=>s.value=l,class:"sr-only peer"},null,8,nbn),[[vl,s.value]]),e[6]||(e[6]=S("div",{class:"w-11 h-6 bg-gray-200 rounded-full peer peer-checked:bg-blue-600 transition-colors"},[S("div",{class:"switch-thumb"})],-1))]),S("span",rbn,J(s.value?"Enabled":"Disabled"),1)])):Z("",!0),s.type==="color"?(N(),H("div",ibn,[Le(S("input",{type:"color","onUpdate:modelValue":l=>s.value=l,class:"w-12 h-12 rounded-lg border border-gray-200 dark:border-gray-700 cursor-pointer"},null,8,obn),[[Je,s.value]]),Le(S("input",{type:"text","onUpdate:modelValue":l=>s.value=l,class:"flex-1 px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"},null,8,sbn),[[Je,s.value]])])):Z("",!0),["file","folder"].includes(s.type)?(N(),H("div",abn,[Le(S("input",{type:"text","onUpdate:modelValue":l=>s.value=l,readonly:"",class:"flex-1 px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-900"},null,8,lbn),[[Je,s.value]]),S("button",{onClick:l=>i.openFileDialog(s),class:"px-4 py-3 text-sm font-medium text-gray-700 dark:text-gray-200 bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 rounded-lg transition-colors flex items-center gap-2"},e[7]||(e[7]=[S("i",{"data-feather":"folder",class:"w-4 h-4"},null,-1),S("span",null,"Browse",-1)]),8,cbn)])):Z("",!0)]),ai.hide(!1),["stop"])),class:"px-6 py-3 text-sm font-medium text-gray-700 dark:text-gray-200 bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 rounded-lg transition-colors duration-200"},J(r.DenyButtonText),1),S("button",{onClick:e[2]||(e[2]=oe(s=>i.hide(!0),["stop"])),class:"px-6 py-3 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-lg transition-colors flex items-center gap-2"},[e[8]||(e[8]=S("i",{"data-feather":"check",class:"w-4 h-4"},null,-1)),Re(" "+J(r.ConfirmButtonText),1)])])])])])):Z("",!0)}const XI=Ye(Lyn,[["render",Tbn],["__scopeId","data-v-481e83c1"]]),fbn={name:"Toast",props:{},data(){return{show:!1,log_type:1,message:"",toastArr:[]}},methods:{close(t){this.toastArr=this.toastArr.filter(e=>e.id!=t)},copyToClipBoard(t){navigator.clipboard.writeText(t),Se(()=>{Ce.replace()})},showToast(t,e=3,n=!0){const o=parseInt((new Date().getTime()*Math.random()).toString()).toString(),r={id:o,log_type:n,message:t,show:!0};this.toastArr.push(r),Se(()=>{Ce.replace()}),setTimeout(()=>{this.toastArr=this.toastArr.filter(i=>i.id!=o)},e*1e3)}},watch:{}},pbn={class:"absolute bottom-16 right-2 z-20 flex flex-col gap-3 min-w-[300px]"},hbn={class:"flex flex-row items-center w-full p-4 mb-4 text-gray-500 bg-white rounded-lg shadow dark:text-gray-400 dark:bg-gray-800",role:"alert"},mbn={class:"flex flex-row flex-grow items-center h-auto"},gbn={key:0,class:"inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-red-500 bg-red-100 rounded-lg dark:bg-red-800 dark:text-red-200"},_bn={key:1,class:"inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-green-500 bg-green-100 rounded-lg dark:bg-green-800 dark:text-green-200"},Qbn={key:2,class:"inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-blue-500 bg-blue-100 rounded-lg dark:bg-blue-800 dark:text-blue-200"},vbn={key:3,class:"inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-orange-500 bg-orange-100 rounded-lg dark:bg-orange-800 dark:text-orange-200"},ybn=["title"],bbn={class:"flex"},Ebn=["onClick"],Sbn=["onClick"];function xbn(t,e,n,o,r,i){return N(),H("div",pbn,[ne(w2,{name:"toastItem",tag:"div"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(r.toastArr,s=>(N(),H("div",{key:s.id,class:"relative"},[S("div",hbn,[S("div",mbn,[s.log_type==0?(N(),H("div",gbn,e[0]||(e[0]=[S("i",{"data-feather":"x"},null,-1),S("span",{class:"sr-only"},"Cross icon",-1)]))):Z("",!0),s.log_type==1?(N(),H("div",_bn,e[1]||(e[1]=[S("i",{"data-feather":"check"},null,-1),S("span",{class:"sr-only"},"Check icon",-1)]))):Z("",!0),s.log_type==2?(N(),H("div",Qbn,e[2]||(e[2]=[S("i",{"data-feather":"info"},null,-1),S("span",{class:"sr-only"},null,-1)]))):Z("",!0),s.log_type==3?(N(),H("div",vbn,e[3]||(e[3]=[S("i",{"data-feather":"alert-triangle"},null,-1),S("span",{class:"sr-only"},null,-1)]))):Z("",!0),S("div",{class:"ml-3 text-sm font-normal whitespace-pre-wrap line-clamp-3 max-w-xs max-h-[400px] overflow-auto break-words",title:s.message},J(s.message),9,ybn)]),S("div",bbn,[S("button",{type:"button",onClick:oe(a=>i.copyToClipBoard(s.message),["stop"]),title:"Copy message",class:"bg-white text-gray-400 hover:text-gray-900 rounded-lg focus:ring-2 focus:ring-gray-300 p-1.5 hover:bg-gray-100 inline-flex h-8 w-8 dark:text-gray-500 dark:hover:text-white dark:bg-gray-800 dark:hover:bg-gray-700"},e[4]||(e[4]=[S("span",{class:"sr-only"},"Copy message",-1),S("i",{"data-feather":"clipboard",class:"w-5 h-5"},null,-1)]),8,Ebn),S("button",{type:"button",onClick:a=>i.close(s.id),title:"Close",class:"bg-white text-gray-400 hover:text-gray-900 rounded-lg focus:ring-2 focus:ring-gray-300 p-1.5 hover:bg-gray-100 inline-flex h-8 w-8 dark:text-gray-500 dark:hover:text-white dark:bg-gray-800 dark:hover:bg-gray-700"},e[5]||(e[5]=[S("span",{class:"sr-only"},"Close",-1),S("svg",{"aria-hidden":"true",class:"w-5 h-5",fill:"currentColor",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"fill-rule":"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1)]),8,Sbn)])])]))),128))]),_:1})])}const ch=Ye(fbn,[["render",xbn],["__scopeId","data-v-46f379e5"]]),Lbn={data(){return{show:!1,message:"",resolve:null,ConfirmButtonText:"Yes, I'm sure",DenyButtonText:"No, cancel"}},methods:{hide(t){this.show=!1,this.resolve&&(this.resolve(t),this.resolve=null)},askQuestion(t,e,n){return this.ConfirmButtonText=e||this.ConfirmButtonText,this.DenyButtonText=n||this.DenyButtonText,new Promise(o=>{this.message=t,this.show=!0,this.resolve=o})}}},Cbn={key:0,class:"fixed top-0 left-0 right-0 bottom-0 flex items-center justify-center bg-black bg-opacity-50"},Abn={class:"relative w-full max-w-md max-h-full"},wbn={class:"relative bg-white rounded-lg shadow dark:bg-gray-700"},Obn={class:"p-4 text-center"},Mbn={class:"mb-5 text-lg font-normal text-gray-500 dark:text-gray-400 select-none break-all"};function Rbn(t,e,n,o,r,i){return r.show?(N(),H("div",Cbn,[S("div",Abn,[S("div",wbn,[S("button",{type:"button",onClick:e[0]||(e[0]=s=>i.hide(!1)),class:"absolute top-3 right-2.5 text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-gray-800 dark:hover:text-white"},e[3]||(e[3]=[S("svg",{"aria-hidden":"true",class:"w-5 h-5",fill:"currentColor",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"fill-rule":"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1),S("span",{class:"sr-only"},"Close modal",-1)])),S("div",Obn,[e[4]||(e[4]=S("svg",{"aria-hidden":"true",class:"mx-auto mb-4 text-gray-400 w-14 h-14 dark:text-gray-200",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),S("h3",Mbn,J(r.message),1),S("button",{onClick:e[1]||(e[1]=s=>i.hide(!0)),type:"button",class:"text-white bg-red-600 hover:bg-red-800 focus:ring-4 focus:outline-none focus:ring-red-300 dark:focus:ring-red-800 font-medium rounded-lg text-sm inline-flex items-center px-5 py-2.5 text-center mr-2"},J(r.ConfirmButtonText),1),S("button",{onClick:e[2]||(e[2]=s=>i.hide(!1)),type:"button",class:"text-gray-500 bg-white hover:bg-gray-100 focus:ring-4 focus:outline-none focus:ring-gray-200 rounded-lg border border-gray-200 text-sm font-medium px-5 py-2.5 hover:text-gray-900 focus:z-10 dark:bg-gray-700 dark:text-gray-300 dark:border-gray-500 dark:hover:text-white dark:hover:bg-gray-600 dark:focus:ring-gray-600"},J(r.DenyButtonText),1)])])])])):Z("",!0)}const Nbn=Ye(Lbn,[["render",Rbn]]),Dbn={data(){return{show:!1,prompt:"",inputText:""}},methods:{showPanel(){this.show=!0},ok(){this.show=!1,this.$emit("ok",this.inputText)},cancel(){this.show=!1,this.inputText=""}},props:{promptText:{type:String,required:!0}},watch:{promptText(t){this.prompt=t}}},Ibn={key:0,class:"fixed top-0 left-0 w-full h-full flex justify-center items-center bg-black bg-opacity-50"},kbn={class:"bg-white p-8 rounded"},Hbn={class:"text-xl font-bold mb-4"};function Pbn(t,e,n,o,r,i){return N(),H("div",null,[r.show?(N(),H("div",Ibn,[S("div",kbn,[S("h2",Hbn,J(n.promptText),1),Le(S("input",{type:"text","onUpdate:modelValue":e[0]||(e[0]=s=>r.inputText=s),class:"border border-gray-300 px-4 py-2 rounded mb-4"},null,512),[[Je,r.inputText]]),S("button",{onClick:e[1]||(e[1]=(...s)=>i.ok&&i.ok(...s)),class:"bg-blue-500 text-white px-4 py-2 rounded mr-2"},"OK"),S("button",{onClick:e[2]||(e[2]=(...s)=>i.cancel&&i.cancel(...s)),class:"bg-gray-500 text-white px-4 py-2 rounded"},"Cancel")])])):Z("",!0)])}const $bn=Ye(Dbn,[["render",Pbn]]),Vbn={name:"TopBar",components:{Navigation:ZU,ActionButton:LN,SocialIcon:CN,Toast:ch,MessageBox:byn,ProgressBar:lh,InputBox:$bn,UniversalForm:XI,YesNoDialog:Nbn},data(){return{posts_headers:{accept:"application/json","Content-Type":"application/json"},starCount:null,themeDropdownOpen:!1,currentTheme:localStorage.getItem("preferred-theme")||"default",availableThemes:[],isLoading:!1,error:null,isInfosMenuVisible:!1,isVisible:!1,isPinned:JSON.parse(localStorage.getItem("isPinned")||"false"),selectedLanguage:"",isLanguageMenuVisible:!1,sunIcon:document.querySelector(".sun"),moonIcon:document.querySelector(".moon"),userTheme:localStorage.getItem("theme"),systemTheme:window.matchMedia("prefers-color-scheme: dark").matches,isDarkMode:!1}},computed:{progress_visibility(){return!1},isModelOK(){return this.$store.state.isModelOk},languages:{get(){return console.log("searching languages",this.$store.state.languages),this.$store.state.languages}},language:{get(){return console.log("searching language",this.$store.state.language),this.$store.state.language}},isGenerating(){return this.$store.state.isGenerating},isConnected(){return this.$store.state.isConnected}},async mounted(){try{this.isVisible=this.isPinned,this.$store.state.applyConfiguration=this.applyConfiguration,this.$store.state.saveConfiguration=this.saveConfiguration,this.$store.state.toast=this.$refs.toast,this.$store.state.messageBox=this.$refs.messageBox,this.$store.state.universalForm=this.$refs.universalForm,this.$store.state.yesNoDialog=this.$refs.yesNoDialog,this.$store.state.web_url_input_box=this.$refs.web_url_input_box,document.addEventListener("click",this.handleClickOutside);const t=localStorage.getItem("preferred-theme");t&&this.availableThemes.includes(t)&&(this.currentTheme=t);try{await this.loadTheme(this.currentTheme)}catch(e){this.error="Failed to initialize theme system",console.error(e)}}catch(t){this.error="Failed to initialize theme system",console.error(t)}try{const e=await(await fetch("https://api.github.com/repos/ParisNeo/lollms-webui")).json();this.starCount=e.stargazers_count}catch(t){console.error("Error fetching GitHub stars:",t)}},beforeUnmount(){document.removeEventListener("click",this.handleClickOutside)},async created(){this.sunIcon=document.querySelector(".sun"),this.moonIcon=document.querySelector(".moon"),this.userTheme=localStorage.getItem("theme"),console.log(this.userTheme),this.systemTheme=window.matchMedia("prefers-color-scheme: dark").matches,this.fetchThemes(),this.themeCheck(),this.$nextTick(()=>{Ce.replace()})},methods:{async fetchThemes(){try{const t=await ce.get("/get_themes");this.availableThemes=t.data}catch(t){console.error("Error fetching themes:",t),this.availableThemes=["default","strawberry_milkshake","red_dragon","matrix_reborn","borg","amber","sober_gray","strawberry"]}},toggleThemeDropDown(){console.log("Toggling theme down:",this.themeDropdownOpen),this.themeDropdownOpen=!this.themeDropdownOpen,console.log("Toggled theme down:",this.themeDropdownOpen)},addCustomLanguage(){this.customLanguage.trim()!==""&&(this.selectLanguage(this.customLanguage),this.customLanguage="")},handleClickOutside(t){this.$el.contains(t.target)||(this.themeDropdownOpen=!1,console.log("Outside click detected"))},getSavedTheme(){try{return localStorage.getItem("preferred-theme")}catch(t){return console.warn("Failed to access localStorage:",t),null}},saveTheme(t){try{this.clearOldStorageItems(),localStorage.setItem("preferred-theme",t)}catch(e){console.warn("Failed to save theme preference:",e)}},applyConfiguration(){ce.post("/apply_settings",{client_id:this.$store.state.client_id,config:this.$store.state.config},{headers:this.posts_headers}).then(t=>{t.data.status?this.$store.state.toast.showToast("Configuration changed successfully.",4,!0):this.$store.state.toast.showToast("Configuration change failed.",4,!1),nextTick(()=>{Ce.replace()})})},saveConfiguration(){console.log("Saving configuration"),ce.post("/save_settings",{},{headers:this.posts_headers}).then(t=>{if(t)return t.status||this.$store.state.messageBox.showMessage("Error: Couldn't save settings!"),t.data}).catch(t=>(console.log(t.message,"saveConfiguration"),this.$store.state.messageBox.showMessage("Couldn't save settings!"),{status:!1}))},clearOldStorageItems(){try{const t=["preferred-theme"];for(let e=0;e{Ce.replace()})}catch(e){console.error(`Failed to load theme: ${t}`,e),this.error=`Failed to load theme: ${t}`}finally{this.isLoading=!1}},reloadTheme(){return this.loadTheme(this.currentTheme)},themeSwitch(){if(document.documentElement.classList.contains("dark")){document.documentElement.classList.remove("dark"),localStorage.setItem("theme","light"),this.userTheme=="light";return}j0(()=>Promise.resolve().then(()=>Wet),void 0),document.documentElement.classList.add("dark"),localStorage.setItem("theme","dark"),this.userTheme=="dark",window.dispatchEvent(new Event("themeChanged")),this.isDarkMode=document.documentElement.classList.contains("dark"),this.$nextTick(()=>{Ce.replace()})},async selectLanguage(t){await this.$store.dispatch("changeLanguage",t);const e=this.$store.state.config.personalities[this.$store.state.config.active_personality_id];let n=this.$store.state.personalities.find(o=>o.full_path===e);if(console.log("personality",n),console.log("this.$store.state.language",n.language),console.log("personality.language",n.language),this.$store.state.language!=n.language){console.log("getting personality");const o=await ce.get("/get_personality");console.log(o),n=o.data,console.log(n),this.$store.commit("updatePersonality",n)}console.log("personality:",n),this.toggleLanguageMenu(),this.language=t},async deleteLanguage(t){await this.$store.dispatch("deleteLanguage",t),this.toggleLanguageMenu(),this.language=t},toggleLanguageMenu(){console.log("Toggling language ",this.isLanguageMenuVisible),this.isLanguageMenuVisible=!this.isLanguageMenuVisible},showInfosMenu(){this.isInfosMenuVisible=!0,this.$nextTick(()=>{Ce.replace()})},hideInfosMenu(){this.isInfosMenuVisible=!1,this.$nextTick(()=>{Ce.replace()})},show(){this.isVisible=!0},hide(){this.isPinned||(this.isVisible=!1)},togglePin(){this.isPinned=!this.isPinned,this.isVisible=this.isPinned,localStorage.setItem("isPinned",JSON.stringify(this.isPinned))},showNews(){this.$store.state.news.show(),this.$nextTick(()=>{Ce.replace()})},themeCheck(){if(this.userTheme=="dark"||!this.userTheme&&this.systemTheme){document.documentElement.classList.add("dark"),this.moonIcon.classList.add("display-none"),this.$nextTick(()=>{j0(()=>Promise.resolve({}),__vite__mapDeps([0]))});return}this.$nextTick(()=>{j0(()=>Promise.resolve({}),__vite__mapDeps([1]))})},refreshPage(){window.location.href.split("/").length>4?window.location.href="/":window.location.reload(!0)},handleOk(t){console.log("Input text:",t)}}},Bbn={class:"topbar-content"},Fbn=["title"],Ubn=["fill"],qbn={href:"https://github.com/ParisNeo/lollms-webui",target:"_blank",rel:"noopener noreferrer",class:"inline-flex items-center gap-2 px-3 py-1.5 text-sm text-gray-700 hover:text-gray-900 bg-gray-100 hover:bg-gray-200 rounded-md transition-colors duration-200 my-4 mx-2"},Gbn={key:0,class:"font-medium"},jbn={class:"relative ml-2"},zbn=["aria-expanded"],Ybn={class:"font-medium"},Wbn={key:0,ref:"languageMenu",class:"absolute left-0 mt-1 w-64 rounded-lg shadow-lg bg-white border border-gray-200 z-10",role:"menu"},Kbn={class:"py-2 max-h-72 overflow-y-auto"},Zbn=["onClick","aria-label"],Xbn=["onClick"],Jbn={class:"px-3 py-2 border-t border-gray-100"},eEn={class:"relative inline-flex ml-2"},tEn={class:"flex items-center space-x-2 overflow-hidden"},nEn={class:"font-medium truncate"},rEn={key:0,class:"absolute left-0 z-50 w-48 mt-2 context-menu overflow-hidden bg-white dark:bg-gray-800 border border-blue-200 dark:border-blue-700 rounded-lg shadow-lg"},iEn={class:"max-h-60 overflow-y-auto scrollbar-thin scrollbar-thumb-blue-500 scrollbar-track-blue-100"},oEn=["onClick"],sEn={class:"font-medium truncate"},aEn={class:"relative inline-block"},lEn={class:"p-4 container flex flex-col lg:flex-row items-center gap-2"},cEn={class:"flex gap-3 flex-1 items-center justify-end"},uEn={key:0,title:"Model is ok",class:"btn-on cursor-pointer transition-transform hover:scale-110"},dEn={key:1,title:"Model is not ok",class:"btn-off cursor-pointer transition-transform hover:scale-110"},TEn={key:2,title:"Text is not being generated. Ready to generate",class:"btn-on cursor-pointer transition-transform hover:scale-110"},fEn={key:3,title:"Generation in progress...",class:"svg-button cursor-pointer transition-transform hover:scale-110"},pEn={key:4,title:"Connection status: Connected",class:"btn-on cursor-pointer transition-transform hover:scale-110"},hEn={key:5,title:"Connection status: Not connected",class:"btn-off cursor-pointer transition-transform hover:scale-110"},mEn={class:"flex items-center space-x-4"},gEn={class:"relative group",title:"Lollms News"},_En={role:"status",class:"fixed m-0 p-2 left-2 bottom-2 min-w-[24rem] max-w-[24rem] h-20 flex flex-col justify-center items-center pb-4 bg-blue-500 rounded-lg shadow-lg z-50 background-a"},QEn={class:"text-2xl animate-pulse mt-2 text-light-text-panel dark:text-dark-text-panel"};function vEn(t,e,n,o,r,i){const s=ze("Navigation"),a=ze("ActionButton"),l=ze("SocialIcon"),c=ze("ProgressBar"),u=ze("InputBox"),d=ze("Toast"),f=ze("MessageBox"),T=ze("YesNoDialog"),h=ze("UniversalForm");return N(),H(xe,null,[S("div",{ref:"topbar-container",class:Ee(["topbar-container",{"h-0":!r.isPinned}])},[S("div",{class:"hover-zone",onMouseenter:e[0]||(e[0]=(...g)=>i.show&&i.show(...g)),style:{position:"fixed",top:"0",left:"0",width:"100%",height:"10px","z-index":"50"}},null,32),S("div",{class:Ee(["topbar",{"topbar-hidden":!r.isVisible}]),onMouseleave:e[12]||(e[12]=(...g)=>i.hide&&i.hide(...g))},[S("div",Bbn,[_n(t.$slots,"navigation",{},void 0,!0),S("button",{class:"pin-button",onClick:e[1]||(e[1]=(...g)=>i.togglePin&&i.togglePin(...g)),title:r.isPinned?"Unpin":"Pin"},[(N(),H("svg",{fill:r.isPinned?"#FF0000":"#000000",height:"24px",width:"24px",version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 490.125 490.125","xml:space":"preserve"},e[13]||(e[13]=[S("g",null,[S("path",{d:`M300.625,5.025c-6.7-6.7-17.6-6.7-24.3,0l-72.6,72.6c-6.7,6.7-6.7,17.6,0,24.3l16.3,16.3l-40.3,40.3l-63.5-7\r +`),_.is_done=!0,_=a.push("thinking_close","div",-1),_.markup=g,_.block=!0,_.is_done=!0,a.line=h.line+1,!0}else return!1}},o=new Fve({html:!1,breaks:!0,highlight:(a,l)=>{const c=l&&j1.getLanguage(l)?l:"plaintext";return j1.highlight(c,a).value}}).use(Fet).use(il).use(Yet,{figcaption:!0}).use(ett);o.renderer.rules.thinking_open=()=>'
',o.renderer.rules.thinking_content=(a,l)=>`
${o.utils.escapeHtml(a[l].content)}
`,o.renderer.rules.thinking_close=()=>"
",o.block.ruler.before("fence","thinking",n);const r=Ve([]),i=()=>{if(t.markdownText){let a=o.parse(t.markdownText,{}),l=[];r.value=[];for(let c=0;c0&&(r.value.push({type:"html",html:o.renderer.render(l,o.options,{})}),l=[]);const d=a[c+1];d&&d.type==="thinking_content"&&r.value.push({type:"thinking",content:d.content,is_done:d.is_done}),c+=2}else u.type==="fence"?(l.length>0&&(r.value.push({type:"html",html:o.renderer.render(l,o.options,{})}),l=[]),r.value.push({type:"code",language:lyn(u.info),code:u.content})):l.push(u)}l.length>0&&r.value.push({type:"html",html:o.renderer.render(l,o.options,{})}),Se(()=>{Ce.replace(),window.MathJax&&window.MathJax.typesetPromise()})}else r.value=[]},s=(a,l)=>{r.value[a].code=l};return $n(()=>t.markdownText,i),Hr(()=>{i()}),{markdownItems:r,updateCode:s}}},uyn={class:"break-all container w-full"},dyn={ref:"mdRender",class:"markdown-content"},Tyn=["innerHTML"];function fyn(t,e,n,o,r,i){const s=ze("code-block"),a=ze("thinking-block");return N(),H("div",uyn,[S("div",dyn,[(N(!0),H(xe,null,Pe(o.markdownItems,(l,c)=>(N(),H("div",{key:c},[l.type==="code"?(N(),ot(s,{key:0,host:n.host,language:l.language,code:l.code,discussion_id:n.discussion_id,message_id:n.message_id,client_id:n.client_id,onUpdateCode:u=>o.updateCode(c,u)},null,8,["host","language","code","discussion_id","message_id","client_id","onUpdateCode"])):Z("",!0),l.type==="thinking"?(N(),ot(a,{key:1,content:l.content,"is-done":l.is_done},null,8,["content","is-done"])):(N(),H("div",{key:2,innerHTML:l.html},null,8,Tyn))]))),128))],512)])}const Q0=Ye(cyn,[["render",fyn],["__scopeId","data-v-3ade7b33"]]),pyn={data(){return{show:!1,has_button:!0,message:""}},components:{MarkdownRenderer:Q0},methods:{hide(){this.show=!1,this.$emit("ok")},showMessage(t){this.message=t,this.has_button=!0,this.show=!0},showBlockingMessage(t){this.message=t,this.has_button=!1,this.show=!0},updateMessage(t){this.message=t,this.show=!0},hideMessage(){this.show=!1}}},hyn={key:0,class:"fixed top-0 left-0 right-0 bottom-0 flex items-center justify-center bg-black bg-opacity-50 z-50"},myn={class:"pl-10 pr-10 bg-bg-light dark:bg-bg-dark p-8 rounded-lg shadow-lg"},gyn={class:"container max-h-500 overflow-y-auto"},_yn={class:"text-lg font-medium"},Qyn={class:"mt-4 flex justify-center"},vyn={key:1,"aria-hidden":"true",class:"w-6 h-6 animate-spin fill-secondary",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function yyn(t,e,n,o,r,i){const s=ze("MarkdownRenderer");return r.show?(N(),H("div",hyn,[S("div",myn,[S("div",gyn,[S("div",_yn,[ne(s,{ref:"mdRender",host:"","markdown-text":r.message,message_id:0,discussion_id:0},null,8,["markdown-text"])])]),S("div",Qyn,[r.has_button?(N(),H("button",{key:0,onClick:e[0]||(e[0]=(...a)=>i.hide&&i.hide(...a)),class:"bg-primary hover:bg-primary-light active:scale-95 duration-150 text-white px-4 py-2 rounded-lg shadow-lg hover:bg-secondary-dark"}," OK ")):Z("",!0),r.has_button?Z("",!0):(N(),H("svg",vyn,e[1]||(e[1]=[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"},null,-1),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"},null,-1)])))])])])):Z("",!0)}const byn=Ye(pyn,[["render",yyn]]),Eyn={props:{progress:{type:Number,required:!0}}},Syn={class:"progress-bar-container"};function xyn(t,e,n,o,r,i){return N(),H("div",Syn,[S("div",{class:"progress-bar",style:an({width:`${n.progress}%`})},null,4)])}const lh=Ye(Eyn,[["render",xyn],["__scopeId","data-v-ae2d8fdf"]]),Lyn={name:"UniversalForm",data(){return{show:!1,resolve:null,controls_array:[],title:"Universal Form",ConfirmButtonText:"Submit",DenyButtonText:"Cancel"}},mounted(){Ce.replace()},methods:{btn_clicked(t){t.callback?t.callback(t):console.log("Button clicked:",t)},hide(t){this.show=!1,this.resolve&&t&&(this.resolve(this.controls_array),this.resolve=null)},showForm(t,e,n,o){return typeof t=="object"&&!Array.isArray(t)?this._newShowForm(t):(this.ConfirmButtonText=n||this.ConfirmButtonText,this.DenyButtonText=o||this.DenyButtonText,this.controls_array=t.map(r=>({...r,isHelp:!1,placeholder:r.placeholder||"",required:r.required||!1,spanFull:r.spanFull||["btn","text","list","file","folder"].includes(r.type)})),new Promise(r=>{console.log("Resolve"),console.log(r),this.title=e||this.title,this.show=!0,this.resolve=r,this.$nextTick(()=>Ce.replace())}))},_newShowForm(t){return this.title=t.title||this.title,this.ConfirmButtonText=t.confirmText||this.ConfirmButtonText,this.DenyButtonText=t.denyText||this.DenyButtonText,this.controls_array=t.fields.map(e=>({...e,isHelp:!1,placeholder:e.placeholder||"",required:e.required||!1,spanFull:e.spanFull||["btn","text","list","file","folder"].includes(e.type)})),this.show=!0,new Promise(e=>{this.resolve=e,this.$nextTick(()=>Ce.replace())})},parseValue(t){switch(t.type){case"int":return parseInt(t.value)||0;case"float":return parseFloat(t.value)||0;case"bool":return!!t.value;case"list":return t.value.split(",").map(e=>e.trim());default:return t.value}},openFileDialog(t){const e=document.createElement("input");e.type=t.type==="folder"?"file":t.type,t.type==="folder"&&(e.webkitdirectory=!0),t.accept&&(e.accept=t.accept),e.onchange=n=>{const o=Array.from(n.target.files);t.value=o.map(r=>r.path).join(", ")},e.click()}},watch:{controls_array:{deep:!0,handler(t){t.forEach(e=>{e.type==="int"&&(e.value=parseInt(e.value)||0),e.type==="float"&&(e.value=parseFloat(e.value)||0)})}}}},Cyn={key:0,class:"fixed inset-0 flex items-center justify-center bg-black/50 backdrop-blur-sm transition-all",style:{"z-index":"1000"}},Ayn={class:"relative w-full mx-4 max-w-2xl"},wyn={class:"flex flex-col rounded-xl bg-white dark:bg-gray-800 shadow-2xl transform transition-all max-h-[90vh]"},Oyn={class:"flex items-center justify-between p-6 border-b border-gray-100 dark:border-gray-700"},Myn={class:"flex items-center gap-3"},Ryn={class:"text-xl font-bold text-gray-800 dark:text-gray-200"},Nyn={class:"overflow-y-auto px-6 py-5 custom-scrollbar"},Dyn={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},Iyn={class:"flex items-center justify-between mb-3"},kyn={class:"flex items-center gap-2"},Hyn={class:"text-base font-semibold text-gray-700 dark:text-gray-300"},Pyn=["onClick"],$yn={key:0,class:"text-xs text-red-500"},Vyn={key:0,class:"text-sm text-gray-500 dark:text-gray-400 mb-3"},Byn={class:"space-y-2"},Fyn={key:0},Uyn=["onUpdate:modelValue","placeholder"],qyn=["onUpdate:modelValue"],Gyn=["value"],jyn={key:1},zyn=["onClick"],Yyn={key:0,"data-feather":"item.icon",class:"w-4 h-4"},Wyn={key:2},Kyn=["onUpdate:modelValue"],Zyn={key:3,class:"space-y-3"},Xyn=["onUpdate:modelValue","step"],Jyn=["onUpdate:modelValue","min","max","step"],ebn={key:4,class:"flex items-center gap-3"},tbn={class:"relative inline-flex items-center cursor-pointer switch"},nbn=["onUpdate:modelValue"],rbn={class:"text-sm text-gray-600 dark:text-gray-300"},ibn={key:5,class:"flex items-center gap-3"},obn=["onUpdate:modelValue"],sbn=["onUpdate:modelValue"],abn={key:6,class:"flex gap-2"},lbn=["onUpdate:modelValue"],cbn=["onClick"],ubn={key:1,class:"h-px bg-gray-100 dark:bg-gray-700 my-6"},dbn={class:"flex justify-end gap-3 p-6 border-t border-gray-100 dark:border-gray-700"};function Tbn(t,e,n,o,r,i){return r.show?(N(),H("div",Cyn,[S("div",Ayn,[S("div",wyn,[S("div",Oyn,[S("div",Myn,[e[3]||(e[3]=S("i",{"data-feather":"sliders",class:"w-6 h-6 text-blue-500"},null,-1)),S("h3",Ryn,J(r.title),1)]),S("button",{onClick:e[0]||(e[0]=oe(s=>i.hide(!1),["stop"])),class:"p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors"},e[4]||(e[4]=[S("i",{"data-feather":"x",class:"w-5 h-5 text-gray-500 dark:text-gray-400"},null,-1)]))]),S("div",Nyn,[S("div",Dyn,[(N(!0),H(xe,null,Pe(r.controls_array,(s,a)=>(N(),H("div",{key:a,class:Ee(["group",{"md:col-span-2":s.spanFull||["btn","text","list","file","folder"].includes(s.type)}])},[S("div",Iyn,[S("label",kyn,[S("span",Hyn,J(s.name),1),s.help?(N(),H("button",{key:0,onClick:l=>s.isHelp=!s.isHelp,class:"text-gray-400 hover:text-blue-500 transition-colors"},e[5]||(e[5]=[S("i",{"data-feather":"help-circle",class:"w-4 h-4"},null,-1)]),8,Pyn)):Z("",!0)]),s.required?(N(),H("span",$yn,"* Required")):Z("",!0)]),s.isHelp?(N(),H("p",Vyn,J(s.help),1)):Z("",!0),S("div",Byn,[["str","string"].includes(s.type)?(N(),H("div",Fyn,[s.options?Le((N(),H("select",{key:1,"onUpdate:modelValue":l=>s.value=l,class:"w-full px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 focus:ring-2 focus:ring-blue-500 focus:border-blue-500 appearance-none"},[(N(!0),H(xe,null,Pe(s.options,(l,c)=>(N(),H("option",{key:c,value:l},J(l),9,Gyn))),128))],8,qyn)),[[Dr,s.value]]):Le((N(),H("input",{key:0,type:"text","onUpdate:modelValue":l=>s.value=l,placeholder:s.placeholder||"Enter text",class:"w-full px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 focus:ring-2 focus:ring-blue-500 focus:border-blue-500 transition-all"},null,8,Uyn)),[[Je,s.value]])])):Z("",!0),s.type==="btn"?(N(),H("div",jyn,[S("button",{onClick:l=>i.btn_clicked(s),class:"w-full px-4 py-3 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-lg transition-colors flex justify-center items-center gap-2"},[s.icon?(N(),H("i",Yyn)):Z("",!0),Me(" "+J(s.name),1)],8,zyn)])):Z("",!0),s.type==="text"?(N(),H("div",Wyn,[Le(S("textarea",{"onUpdate:modelValue":l=>s.value=l,rows:"4",class:"w-full px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 focus:ring-2 focus:ring-blue-500 focus:border-blue-500 resize-none"},null,8,Kyn),[[Je,s.value]])])):Z("",!0),["int","float"].includes(s.type)?(N(),H("div",Zyn,[Le(S("input",{type:"number","onUpdate:modelValue":l=>s.value=l,step:s.type==="int"?1:.1,class:"w-full px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"},null,8,Xyn),[[Je,s.value]]),s.min!==void 0&&s.max!==void 0?Le((N(),H("input",{key:0,type:"range","onUpdate:modelValue":l=>s.value=l,min:s.min,max:s.max,step:s.step||(s.type==="int"?1:.1),class:"w-full h-2 bg-gray-200 dark:bg-gray-700 rounded-full appearance-none cursor-pointer range-thumb"},null,8,Jyn)),[[Je,s.value]]):Z("",!0)])):Z("",!0),s.type==="bool"?(N(),H("div",ebn,[S("label",tbn,[Le(S("input",{type:"checkbox","onUpdate:modelValue":l=>s.value=l,class:"sr-only peer"},null,8,nbn),[[vl,s.value]]),e[6]||(e[6]=S("div",{class:"w-11 h-6 bg-gray-200 rounded-full peer peer-checked:bg-blue-600 transition-colors"},[S("div",{class:"switch-thumb"})],-1))]),S("span",rbn,J(s.value?"Enabled":"Disabled"),1)])):Z("",!0),s.type==="color"?(N(),H("div",ibn,[Le(S("input",{type:"color","onUpdate:modelValue":l=>s.value=l,class:"w-12 h-12 rounded-lg border border-gray-200 dark:border-gray-700 cursor-pointer"},null,8,obn),[[Je,s.value]]),Le(S("input",{type:"text","onUpdate:modelValue":l=>s.value=l,class:"flex-1 px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 focus:ring-2 focus:ring-blue-500 focus:border-blue-500"},null,8,sbn),[[Je,s.value]])])):Z("",!0),["file","folder"].includes(s.type)?(N(),H("div",abn,[Le(S("input",{type:"text","onUpdate:modelValue":l=>s.value=l,readonly:"",class:"flex-1 px-4 py-3 text-sm rounded-lg border border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-900"},null,8,lbn),[[Je,s.value]]),S("button",{onClick:l=>i.openFileDialog(s),class:"px-4 py-3 text-sm font-medium text-gray-700 dark:text-gray-200 bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 rounded-lg transition-colors flex items-center gap-2"},e[7]||(e[7]=[S("i",{"data-feather":"folder",class:"w-4 h-4"},null,-1),S("span",null,"Browse",-1)]),8,cbn)])):Z("",!0)]),ai.hide(!1),["stop"])),class:"px-6 py-3 text-sm font-medium text-gray-700 dark:text-gray-200 bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 rounded-lg transition-colors duration-200"},J(r.DenyButtonText),1),S("button",{onClick:e[2]||(e[2]=oe(s=>i.hide(!0),["stop"])),class:"px-6 py-3 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-lg transition-colors flex items-center gap-2"},[e[8]||(e[8]=S("i",{"data-feather":"check",class:"w-4 h-4"},null,-1)),Me(" "+J(r.ConfirmButtonText),1)])])])])])):Z("",!0)}const XI=Ye(Lyn,[["render",Tbn],["__scopeId","data-v-481e83c1"]]),fbn={name:"Toast",props:{},data(){return{show:!1,log_type:1,message:"",toastArr:[]}},methods:{close(t){this.toastArr=this.toastArr.filter(e=>e.id!=t)},copyToClipBoard(t){navigator.clipboard.writeText(t),Se(()=>{Ce.replace()})},showToast(t,e=3,n=!0){const o=parseInt((new Date().getTime()*Math.random()).toString()).toString(),r={id:o,log_type:n,message:t,show:!0};this.toastArr.push(r),Se(()=>{Ce.replace()}),setTimeout(()=>{this.toastArr=this.toastArr.filter(i=>i.id!=o)},e*1e3)}},watch:{}},pbn={class:"absolute bottom-16 right-2 z-20 flex flex-col gap-3 min-w-[300px]"},hbn={class:"flex flex-row items-center w-full p-4 mb-4 text-gray-500 bg-white rounded-lg shadow dark:text-gray-400 dark:bg-gray-800",role:"alert"},mbn={class:"flex flex-row flex-grow items-center h-auto"},gbn={key:0,class:"inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-red-500 bg-red-100 rounded-lg dark:bg-red-800 dark:text-red-200"},_bn={key:1,class:"inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-green-500 bg-green-100 rounded-lg dark:bg-green-800 dark:text-green-200"},Qbn={key:2,class:"inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-blue-500 bg-blue-100 rounded-lg dark:bg-blue-800 dark:text-blue-200"},vbn={key:3,class:"inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-orange-500 bg-orange-100 rounded-lg dark:bg-orange-800 dark:text-orange-200"},ybn=["title"],bbn={class:"flex"},Ebn=["onClick"],Sbn=["onClick"];function xbn(t,e,n,o,r,i){return N(),H("div",pbn,[ne(w2,{name:"toastItem",tag:"div"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(r.toastArr,s=>(N(),H("div",{key:s.id,class:"relative"},[S("div",hbn,[S("div",mbn,[s.log_type==0?(N(),H("div",gbn,e[0]||(e[0]=[S("i",{"data-feather":"x"},null,-1),S("span",{class:"sr-only"},"Cross icon",-1)]))):Z("",!0),s.log_type==1?(N(),H("div",_bn,e[1]||(e[1]=[S("i",{"data-feather":"check"},null,-1),S("span",{class:"sr-only"},"Check icon",-1)]))):Z("",!0),s.log_type==2?(N(),H("div",Qbn,e[2]||(e[2]=[S("i",{"data-feather":"info"},null,-1),S("span",{class:"sr-only"},null,-1)]))):Z("",!0),s.log_type==3?(N(),H("div",vbn,e[3]||(e[3]=[S("i",{"data-feather":"alert-triangle"},null,-1),S("span",{class:"sr-only"},null,-1)]))):Z("",!0),S("div",{class:"ml-3 text-sm font-normal whitespace-pre-wrap line-clamp-3 max-w-xs max-h-[400px] overflow-auto break-words",title:s.message},J(s.message),9,ybn)]),S("div",bbn,[S("button",{type:"button",onClick:oe(a=>i.copyToClipBoard(s.message),["stop"]),title:"Copy message",class:"bg-white text-gray-400 hover:text-gray-900 rounded-lg focus:ring-2 focus:ring-gray-300 p-1.5 hover:bg-gray-100 inline-flex h-8 w-8 dark:text-gray-500 dark:hover:text-white dark:bg-gray-800 dark:hover:bg-gray-700"},e[4]||(e[4]=[S("span",{class:"sr-only"},"Copy message",-1),S("i",{"data-feather":"clipboard",class:"w-5 h-5"},null,-1)]),8,Ebn),S("button",{type:"button",onClick:a=>i.close(s.id),title:"Close",class:"bg-white text-gray-400 hover:text-gray-900 rounded-lg focus:ring-2 focus:ring-gray-300 p-1.5 hover:bg-gray-100 inline-flex h-8 w-8 dark:text-gray-500 dark:hover:text-white dark:bg-gray-800 dark:hover:bg-gray-700"},e[5]||(e[5]=[S("span",{class:"sr-only"},"Close",-1),S("svg",{"aria-hidden":"true",class:"w-5 h-5",fill:"currentColor",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"fill-rule":"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1)]),8,Sbn)])])]))),128))]),_:1})])}const ch=Ye(fbn,[["render",xbn],["__scopeId","data-v-46f379e5"]]),Lbn={data(){return{show:!1,message:"",resolve:null,ConfirmButtonText:"Yes, I'm sure",DenyButtonText:"No, cancel"}},methods:{hide(t){this.show=!1,this.resolve&&(this.resolve(t),this.resolve=null)},askQuestion(t,e,n){return this.ConfirmButtonText=e||this.ConfirmButtonText,this.DenyButtonText=n||this.DenyButtonText,new Promise(o=>{this.message=t,this.show=!0,this.resolve=o})}}},Cbn={key:0,class:"fixed top-0 left-0 right-0 bottom-0 flex items-center justify-center bg-black bg-opacity-50"},Abn={class:"relative w-full max-w-md max-h-full"},wbn={class:"relative bg-white rounded-lg shadow dark:bg-gray-700"},Obn={class:"p-4 text-center"},Mbn={class:"mb-5 text-lg font-normal text-gray-500 dark:text-gray-400 select-none break-all"};function Rbn(t,e,n,o,r,i){return r.show?(N(),H("div",Cbn,[S("div",Abn,[S("div",wbn,[S("button",{type:"button",onClick:e[0]||(e[0]=s=>i.hide(!1)),class:"absolute top-3 right-2.5 text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-gray-800 dark:hover:text-white"},e[3]||(e[3]=[S("svg",{"aria-hidden":"true",class:"w-5 h-5",fill:"currentColor",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"fill-rule":"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1),S("span",{class:"sr-only"},"Close modal",-1)])),S("div",Obn,[e[4]||(e[4]=S("svg",{"aria-hidden":"true",class:"mx-auto mb-4 text-gray-400 w-14 h-14 dark:text-gray-200",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),S("h3",Mbn,J(r.message),1),S("button",{onClick:e[1]||(e[1]=s=>i.hide(!0)),type:"button",class:"text-white bg-red-600 hover:bg-red-800 focus:ring-4 focus:outline-none focus:ring-red-300 dark:focus:ring-red-800 font-medium rounded-lg text-sm inline-flex items-center px-5 py-2.5 text-center mr-2"},J(r.ConfirmButtonText),1),S("button",{onClick:e[2]||(e[2]=s=>i.hide(!1)),type:"button",class:"text-gray-500 bg-white hover:bg-gray-100 focus:ring-4 focus:outline-none focus:ring-gray-200 rounded-lg border border-gray-200 text-sm font-medium px-5 py-2.5 hover:text-gray-900 focus:z-10 dark:bg-gray-700 dark:text-gray-300 dark:border-gray-500 dark:hover:text-white dark:hover:bg-gray-600 dark:focus:ring-gray-600"},J(r.DenyButtonText),1)])])])])):Z("",!0)}const Nbn=Ye(Lbn,[["render",Rbn]]),Dbn={data(){return{show:!1,prompt:"",inputText:""}},methods:{showPanel(){this.show=!0},ok(){this.show=!1,this.$emit("ok",this.inputText)},cancel(){this.show=!1,this.inputText=""}},props:{promptText:{type:String,required:!0}},watch:{promptText(t){this.prompt=t}}},Ibn={key:0,class:"fixed top-0 left-0 w-full h-full flex justify-center items-center bg-black bg-opacity-50"},kbn={class:"bg-white p-8 rounded"},Hbn={class:"text-xl font-bold mb-4"};function Pbn(t,e,n,o,r,i){return N(),H("div",null,[r.show?(N(),H("div",Ibn,[S("div",kbn,[S("h2",Hbn,J(n.promptText),1),Le(S("input",{type:"text","onUpdate:modelValue":e[0]||(e[0]=s=>r.inputText=s),class:"border border-gray-300 px-4 py-2 rounded mb-4"},null,512),[[Je,r.inputText]]),S("button",{onClick:e[1]||(e[1]=(...s)=>i.ok&&i.ok(...s)),class:"bg-blue-500 text-white px-4 py-2 rounded mr-2"},"OK"),S("button",{onClick:e[2]||(e[2]=(...s)=>i.cancel&&i.cancel(...s)),class:"bg-gray-500 text-white px-4 py-2 rounded"},"Cancel")])])):Z("",!0)])}const $bn=Ye(Dbn,[["render",Pbn]]),Vbn={name:"TopBar",components:{Navigation:ZU,ActionButton:LN,SocialIcon:CN,Toast:ch,MessageBox:byn,ProgressBar:lh,InputBox:$bn,UniversalForm:XI,YesNoDialog:Nbn},data(){return{posts_headers:{accept:"application/json","Content-Type":"application/json"},starCount:null,themeDropdownOpen:!1,currentTheme:localStorage.getItem("preferred-theme")||"default",availableThemes:[],isLoading:!1,error:null,isInfosMenuVisible:!1,isVisible:!1,isPinned:JSON.parse(localStorage.getItem("isPinned")||"false"),selectedLanguage:"",isLanguageMenuVisible:!1,sunIcon:document.querySelector(".sun"),moonIcon:document.querySelector(".moon"),userTheme:localStorage.getItem("theme"),systemTheme:window.matchMedia("prefers-color-scheme: dark").matches,isDarkMode:!1}},computed:{progress_visibility(){return!1},isModelOK(){return this.$store.state.isModelOk},languages:{get(){return console.log("searching languages",this.$store.state.languages),this.$store.state.languages}},language:{get(){return console.log("searching language",this.$store.state.language),this.$store.state.language}},isGenerating(){return this.$store.state.isGenerating},isConnected(){return this.$store.state.isConnected}},async mounted(){try{this.isVisible=this.isPinned,this.$store.state.applyConfiguration=this.applyConfiguration,this.$store.state.saveConfiguration=this.saveConfiguration,this.$store.state.toast=this.$refs.toast,this.$store.state.messageBox=this.$refs.messageBox,this.$store.state.universalForm=this.$refs.universalForm,this.$store.state.yesNoDialog=this.$refs.yesNoDialog,this.$store.state.web_url_input_box=this.$refs.web_url_input_box,document.addEventListener("click",this.handleClickOutside);const t=localStorage.getItem("preferred-theme");t&&this.availableThemes.includes(t)&&(this.currentTheme=t);try{await this.loadTheme(this.currentTheme)}catch(e){this.error="Failed to initialize theme system",console.error(e)}}catch(t){this.error="Failed to initialize theme system",console.error(t)}try{const e=await(await fetch("https://api.github.com/repos/ParisNeo/lollms-webui")).json();this.starCount=e.stargazers_count}catch(t){console.error("Error fetching GitHub stars:",t)}},beforeUnmount(){document.removeEventListener("click",this.handleClickOutside)},async created(){this.sunIcon=document.querySelector(".sun"),this.moonIcon=document.querySelector(".moon"),this.userTheme=localStorage.getItem("theme"),console.log(this.userTheme),this.systemTheme=window.matchMedia("prefers-color-scheme: dark").matches,this.fetchThemes(),this.themeCheck(),this.$nextTick(()=>{Ce.replace()})},methods:{async fetchThemes(){try{const t=await ce.get("/get_themes");this.availableThemes=t.data}catch(t){console.error("Error fetching themes:",t),this.availableThemes=["default","strawberry_milkshake","red_dragon","matrix_reborn","borg","amber","sober_gray","strawberry"]}},toggleThemeDropDown(){console.log("Toggling theme down:",this.themeDropdownOpen),this.themeDropdownOpen=!this.themeDropdownOpen,console.log("Toggled theme down:",this.themeDropdownOpen)},addCustomLanguage(){this.customLanguage.trim()!==""&&(this.selectLanguage(this.customLanguage),this.customLanguage="")},handleClickOutside(t){this.$el.contains(t.target)||(this.themeDropdownOpen=!1,console.log("Outside click detected"))},getSavedTheme(){try{return localStorage.getItem("preferred-theme")}catch(t){return console.warn("Failed to access localStorage:",t),null}},saveTheme(t){try{this.clearOldStorageItems(),localStorage.setItem("preferred-theme",t)}catch(e){console.warn("Failed to save theme preference:",e)}},applyConfiguration(){ce.post("/apply_settings",{client_id:this.$store.state.client_id,config:this.$store.state.config},{headers:this.posts_headers}).then(t=>{t.data.status?this.$store.state.toast.showToast("Configuration changed successfully.",4,!0):this.$store.state.toast.showToast("Configuration change failed.",4,!1),nextTick(()=>{Ce.replace()})})},saveConfiguration(){console.log("Saving configuration"),ce.post("/save_settings",{},{headers:this.posts_headers}).then(t=>{if(t)return t.status||this.$store.state.messageBox.showMessage("Error: Couldn't save settings!"),t.data}).catch(t=>(console.log(t.message,"saveConfiguration"),this.$store.state.messageBox.showMessage("Couldn't save settings!"),{status:!1}))},clearOldStorageItems(){try{const t=["preferred-theme"];for(let e=0;e{Ce.replace()})}catch(e){console.error(`Failed to load theme: ${t}`,e),this.error=`Failed to load theme: ${t}`}finally{this.isLoading=!1}},reloadTheme(){return this.loadTheme(this.currentTheme)},themeSwitch(){if(document.documentElement.classList.contains("dark")){document.documentElement.classList.remove("dark"),localStorage.setItem("theme","light"),this.userTheme=="light";return}j0(()=>Promise.resolve().then(()=>Wet),void 0),document.documentElement.classList.add("dark"),localStorage.setItem("theme","dark"),this.userTheme=="dark",window.dispatchEvent(new Event("themeChanged")),this.isDarkMode=document.documentElement.classList.contains("dark"),this.$nextTick(()=>{Ce.replace()})},async selectLanguage(t){await this.$store.dispatch("changeLanguage",t);const e=this.$store.state.config.personalities[this.$store.state.config.active_personality_id];let n=this.$store.state.personalities.find(o=>o.full_path===e);if(console.log("personality",n),console.log("this.$store.state.language",n.language),console.log("personality.language",n.language),this.$store.state.language!=n.language){console.log("getting personality");const o=await ce.get("/get_personality");console.log(o),n=o.data,console.log(n),this.$store.commit("updatePersonality",n)}console.log("personality:",n),this.toggleLanguageMenu(),this.language=t},async deleteLanguage(t){await this.$store.dispatch("deleteLanguage",t),this.toggleLanguageMenu(),this.language=t},toggleLanguageMenu(){console.log("Toggling language ",this.isLanguageMenuVisible),this.isLanguageMenuVisible=!this.isLanguageMenuVisible},showInfosMenu(){this.isInfosMenuVisible=!0,this.$nextTick(()=>{Ce.replace()})},hideInfosMenu(){this.isInfosMenuVisible=!1,this.$nextTick(()=>{Ce.replace()})},show(){this.isVisible=!0},hide(){this.isPinned||(this.isVisible=!1)},togglePin(){this.isPinned=!this.isPinned,this.isVisible=this.isPinned,localStorage.setItem("isPinned",JSON.stringify(this.isPinned))},showNews(){this.$store.state.news.show(),this.$nextTick(()=>{Ce.replace()})},themeCheck(){if(this.userTheme=="dark"||!this.userTheme&&this.systemTheme){document.documentElement.classList.add("dark"),this.moonIcon.classList.add("display-none"),this.$nextTick(()=>{j0(()=>Promise.resolve({}),__vite__mapDeps([0]))});return}this.$nextTick(()=>{j0(()=>Promise.resolve({}),__vite__mapDeps([1]))})},refreshPage(){window.location.href.split("/").length>4?window.location.href="/":window.location.reload(!0)},handleOk(t){console.log("Input text:",t)}}},Bbn={class:"topbar-content"},Fbn=["title"],Ubn=["fill"],qbn={href:"https://github.com/ParisNeo/lollms-webui",target:"_blank",rel:"noopener noreferrer",class:"inline-flex items-center gap-2 px-3 py-1.5 text-sm text-gray-700 hover:text-gray-900 bg-gray-100 hover:bg-gray-200 rounded-md transition-colors duration-200 my-4 mx-2"},Gbn={key:0,class:"font-medium"},jbn={class:"relative ml-2"},zbn=["aria-expanded"],Ybn={class:"font-medium"},Wbn={key:0,ref:"languageMenu",class:"absolute left-0 mt-1 w-64 rounded-lg shadow-lg bg-white border border-gray-200 z-10",role:"menu"},Kbn={class:"py-2 max-h-72 overflow-y-auto"},Zbn=["onClick","aria-label"],Xbn=["onClick"],Jbn={class:"px-3 py-2 border-t border-gray-100"},eEn={class:"relative inline-flex ml-2"},tEn={class:"flex items-center space-x-2 overflow-hidden"},nEn={class:"font-medium truncate"},rEn={key:0,class:"absolute left-0 z-50 w-48 mt-2 context-menu overflow-hidden bg-white dark:bg-gray-800 border border-blue-200 dark:border-blue-700 rounded-lg shadow-lg"},iEn={class:"max-h-60 overflow-y-auto scrollbar-thin scrollbar-thumb-blue-500 scrollbar-track-blue-100"},oEn=["onClick"],sEn={class:"font-medium truncate"},aEn={class:"relative inline-block"},lEn={class:"p-4 container flex flex-col lg:flex-row items-center gap-2"},cEn={class:"flex gap-3 flex-1 items-center justify-end"},uEn={key:0,title:"Model is ok",class:"btn-on cursor-pointer transition-transform hover:scale-110"},dEn={key:1,title:"Model is not ok",class:"btn-off cursor-pointer transition-transform hover:scale-110"},TEn={key:2,title:"Text is not being generated. Ready to generate",class:"btn-on cursor-pointer transition-transform hover:scale-110"},fEn={key:3,title:"Generation in progress...",class:"svg-button cursor-pointer transition-transform hover:scale-110"},pEn={key:4,title:"Connection status: Connected",class:"btn-on cursor-pointer transition-transform hover:scale-110"},hEn={key:5,title:"Connection status: Not connected",class:"btn-off cursor-pointer transition-transform hover:scale-110"},mEn={class:"flex items-center space-x-4"},gEn={class:"relative group",title:"Lollms News"},_En={role:"status",class:"fixed m-0 p-2 left-2 bottom-2 min-w-[24rem] max-w-[24rem] h-20 flex flex-col justify-center items-center pb-4 bg-blue-500 rounded-lg shadow-lg z-50 background-a"},QEn={class:"text-2xl animate-pulse mt-2 text-light-text-panel dark:text-dark-text-panel"};function vEn(t,e,n,o,r,i){const s=ze("Navigation"),a=ze("ActionButton"),l=ze("SocialIcon"),c=ze("ProgressBar"),u=ze("InputBox"),d=ze("Toast"),f=ze("MessageBox"),T=ze("YesNoDialog"),h=ze("UniversalForm");return N(),H(xe,null,[S("div",{ref:"topbar-container",class:Ee(["topbar-container",{"h-0":!r.isPinned}])},[S("div",{class:"hover-zone",onMouseenter:e[0]||(e[0]=(...g)=>i.show&&i.show(...g)),style:{position:"fixed",top:"0",left:"0",width:"100%",height:"10px","z-index":"50"}},null,32),S("div",{class:Ee(["topbar",{"topbar-hidden":!r.isVisible}]),onMouseleave:e[12]||(e[12]=(...g)=>i.hide&&i.hide(...g))},[S("div",Bbn,[_n(t.$slots,"navigation",{},void 0,!0),S("button",{class:"pin-button",onClick:e[1]||(e[1]=(...g)=>i.togglePin&&i.togglePin(...g)),title:r.isPinned?"Unpin":"Pin"},[(N(),H("svg",{fill:r.isPinned?"#FF0000":"#000000",height:"24px",width:"24px",version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 490.125 490.125","xml:space":"preserve"},e[13]||(e[13]=[S("g",null,[S("path",{d:`M300.625,5.025c-6.7-6.7-17.6-6.7-24.3,0l-72.6,72.6c-6.7,6.7-6.7,17.6,0,24.3l16.3,16.3l-40.3,40.3l-63.5-7\r c-3-0.3-6-0.5-8.9-0.5c-21.7,0-42.2,8.5-57.5,23.8l-20.8,20.8c-6.7,6.7-6.7,17.6,0,24.3l108.5,108.5l-132.4,132.4\r c-6.7,6.7-6.7,17.6,0,24.3c3.3,3.3,7.7,5,12.1,5s8.8-1.7,12.1-5l132.5-132.5l108.5,108.5c3.3,3.3,7.7,5,12.1,5s8.8-1.7,12.1-5\r l20.8-20.8c17.6-17.6,26.1-41.8,23.3-66.4l-7-63.5l40.3-40.3l16.2,16.2c6.7,6.7,17.6,6.7,24.3,0l72.6-72.6c3.2-3.2,5-7.6,5-12.1\r s-1.8-8.9-5-12.1L300.625,5.025z M400.425,250.025l-16.2-16.3c-6.4-6.4-17.8-6.4-24.3,0l-58.2,58.3c-3.7,3.7-5.5,8.8-4.9,14\r l7.9,71.6c1.6,14.3-3.3,28.3-13.5,38.4l-8.7,8.7l-217.1-217.1l8.7-8.6c10.1-10.1,24.2-15,38.4-13.5l71.7,7.9\r - c5.2,0.6,10.3-1.2,14-4.9l58.2-58.2c6.7-6.7,6.7-17.6,0-24.3l-16.3-16.3l48.3-48.3l160.3,160.3L400.425,250.025z`})],-1)]),8,Ubn))],8,Fbn),ne(s),S("div",null,[S("a",qbn,[e[14]||(e[14]=S("svg",{class:"w-5 h-5",viewBox:"0 0 16 16",fill:"currentColor"},[S("path",{d:"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"})],-1)),r.starCount?(N(),H("span",Gbn,J(r.starCount),1)):Z("",!0)])]),e[31]||(e[31]=S("div",{class:"relative"},null,-1)),r.isDarkMode?(N(),H("div",{key:0,class:"text-2xl svg-button hover:text-primary duration-150 cursor-pointer w-50 h-50 ml-2",title:"Switch to Light theme",onClick:e[2]||(e[2]=g=>i.themeSwitch())},e[15]||(e[15]=[S("i",{"data-feather":"sun"},null,-1)]))):(N(),H("div",{key:1,class:"text-2xl svg-button hover:text-primary duration-150 cursor-pointer w-50 h-50 ml-2",title:"Switch to Dark theme",onClick:e[3]||(e[3]=g=>i.themeSwitch())},e[16]||(e[16]=[S("i",{"data-feather":"moon"},null,-1)]))),S("div",jbn,[S("button",{onClick:e[4]||(e[4]=(...g)=>i.toggleLanguageMenu&&i.toggleLanguageMenu(...g)),class:"flex items-center gap-2 px-3 py-2 rounded-md hover:bg-gray-100 transition-colors","aria-haspopup":"true","aria-expanded":r.isLanguageMenuVisible},[S("span",Ybn,J(t.$store.state.language.slice(0,2)),1),(N(),H("svg",{class:Ee(["w-4 h-4 transition-transform",{"rotate-180":r.isLanguageMenuVisible}]),viewBox:"0 0 24 24"},e[17]||(e[17]=[S("path",{d:"M7 10l5 5 5-5z",fill:"currentColor"},null,-1)]),2))],8,zbn),ne(Nr,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"transform scale-95 opacity-0","enter-to-class":"transform scale-100 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"transform scale-100 opacity-100","leave-to-class":"transform scale-95 opacity-0"},{default:Ge(()=>[r.isLanguageMenuVisible?(N(),H("div",Wbn,[S("ul",Kbn,[(N(!0),H(xe,null,Pe(i.languages,g=>(N(),H("li",{key:g,class:"group flex items-center px-3 py-2 hover:bg-gray-50"},[S("button",{onClick:Q=>i.deleteLanguage(g),class:"p-1 rounded-full opacity-0 group-hover:opacity-100 transition-opacity text-gray-400 hover:text-red-500 hover:bg-red-50","aria-label":`Delete ${g}`},e[18]||(e[18]=[S("svg",{class:"w-4 h-4",viewBox:"0 0 24 24"},[S("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z",fill:"currentColor"})],-1)]),8,Zbn),S("div",{onClick:Q=>i.selectLanguage(g),class:Ee(["flex-grow px-3 py-1 cursor-pointer rounded-md transition-colors",g===t.$store.state.language?"bg-blue-50 text-blue-600":"hover:bg-gray-100"]),role:"menuitem"},J(g),11,Xbn)]))),128)),S("li",Jbn,[Le(S("input",{type:"text","onUpdate:modelValue":e[5]||(e[5]=g=>t.customLanguage=g),onKeyup:e[6]||(e[6]=Qn(oe((...g)=>i.addCustomLanguage&&i.addCustomLanguage(...g),["prevent"]),["enter"])),placeholder:"Add new language...",class:"w-full px-3 py-2 rounded-md border border-gray-200 focus:border-blue-500 focus:ring-1 focus:ring-blue-500 outline-none transition-all"},null,544),[[Je,t.customLanguage]])])])],512)):Z("",!0)]),_:1})]),S("div",eEn,[S("button",{onClick:e[7]||(e[7]=oe((...g)=>i.toggleThemeDropDown&&i.toggleThemeDropDown(...g),["stop"])),class:"inline-flex items-center justify-between w-40 px-4 py-2 bg-gradient-to-r from-blue-500/10 to-purple-500/10 dark:from-blue-400/20 dark:to-purple-400/20 border border-blue-200 dark:border-blue-700 rounded-lg shadow-sm hover:from-blue-500/20 hover:to-purple-500/20 dark:hover:from-blue-400/30 dark:hover:to-purple-400/30 hover:border-blue-300 dark:hover:border-blue-600 hover:shadow-md focus:outline-none focus:ring-2 focus:ring-blue-500/50 transition-all duration-300 ease-in-out backdrop-blur-sm"},[S("div",tEn,[e[19]||(e[19]=S("svg",{class:"w-5 h-5 flex-shrink-0",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M7 21a4 4 0 01-4-4V5a2 2 0 012-2h4a2 2 0 012 2v12a4 4 0 01-4 4zm0 0h12a2 2 0 002-2v-4a2 2 0 00-2-2h-2.343M11 7.343l1.657-1.657a2 2 0 012.828 0l2.829 2.829a2 2 0 010 2.828l-8.486 8.485M7 17h.01"})],-1)),S("span",nEn,J(r.currentTheme),1)]),(N(),H("svg",{class:Ee(["w-5 h-5 flex-shrink-0 text-blue-500 dark:text-blue-400 transition-transform duration-300",{"rotate-180":r.themeDropdownOpen}]),xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"},e[20]||(e[20]=[S("path",{"fill-rule":"evenodd",d:"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z","clip-rule":"evenodd"},null,-1)]),2))]),ne(Nr,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"transform scale-95 opacity-0","enter-to-class":"transform scale-100 opacity-100","leave-active-class":"transition duration-75 ease-in","leave-from-class":"transform scale-100 opacity-100","leave-to-class":"transform scale-95 opacity-0"},{default:Ge(()=>[r.themeDropdownOpen?(N(),H("div",rEn,[S("div",iEn,[(N(!0),H(xe,null,Pe(r.availableThemes,g=>(N(),H("a",{key:g,onClick:Q=>{i.loadTheme(g),r.currentTheme=g,r.themeDropdownOpen=!1},class:"flex items-center space-x-3 px-4 py-3 text-gray-700 dark:text-gray-200 hover:bg-gradient-to-r hover:from-blue-50 hover:to-purple-50 dark:hover:from-blue-900/30 dark:hover:to-purple-900/30 cursor-pointer transition-colors duration-150 group"},[e[21]||(e[21]=S("div",{class:"w-2 h-2 rounded-full bg-blue-400 group-hover:bg-blue-500 transition-colors duration-150"},null,-1)),S("span",sEn,J(g),1)],8,oEn))),128))])])):Z("",!0)]),_:1})]),S("div",{class:"toolbar-button",onMouseleave:e[11]||(e[11]=(...g)=>i.hideInfosMenu&&i.hideInfosMenu(...g))},[S("div",aEn,[r.isInfosMenuVisible?(N(),H("div",{key:0,onMouseenter:e[9]||(e[9]=(...g)=>i.showInfosMenu&&i.showInfosMenu(...g)),class:"absolute context-menu m-0 p-0 z-50 top-full right-0 transform rounded-md shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",lEn,[S("div",cEn,[i.isModelOK?(N(),H("div",uEn,e[22]||(e[22]=[S("svg",{class:"w-8 h-8",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}),S("path",{d:"M9 12L11 14L15 10",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})],-1)]))):(N(),H("div",dEn,e[23]||(e[23]=[S("svg",{class:"w-8 h-8",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}),S("path",{d:"M15 9L9 15",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}),S("path",{d:"M9 9L15 15",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})],-1)]))),i.isGenerating?(N(),H("div",fEn,e[25]||(e[25]=[S("svg",{class:"w-6 h-6 animate-spin",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1)]))):(N(),H("div",TEn,e[24]||(e[24]=[S("svg",{class:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M3 21v-4m0 0V5a2 2 0 012-2h6.5l1 1H21l-3 6 3 6h-8.5l-1-1H5a2 2 0 00-2 2zm9-13.5V9"})],-1)]))),i.isConnected?(N(),H("div",pEn,e[26]||(e[26]=[S("svg",{class:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 10V3L4 14h7v7l9-11h-7z"})],-1)]))):(N(),H("div",hEn,e[27]||(e[27]=[S("svg",{class:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M18.364 18.364A9 9 0 005.636 5.636m12.728 12.728A9 9 0 015.636 5.636m12.728 12.728L5.636 5.636"})],-1)])))]),S("div",mEn,[ne(a,{onClick:t.restartProgram,icon:"power",title:"restart program"},null,8,["onClick"]),ne(a,{onClick:i.refreshPage,icon:"refresh-ccw",title:"refresh page"},null,8,["onClick"]),ne(a,{href:"/docs",icon:"file-text",title:"Fast API doc"})]),ne(l,{href:"https://github.com/ParisNeo/lollms-webui",icon:"github"}),ne(l,{href:"https://www.youtube.com/channel/UCJzrg0cyQV2Z30SQ1v2FdSQ",icon:"youtube"}),ne(l,{href:"https://x.com/ParisNeo_AI",icon:"x"}),ne(l,{href:"https://discord.com/channels/1092918764925882418",icon:"discord"}),S("div",gEn,[S("div",{onClick:e[8]||(e[8]=g=>i.showNews()),class:"text-2xl w-8 h-8 cursor-pointer transition-colors duration-300 svg-button"},e[28]||(e[28]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-full h-full"},[S("path",{d:"M19 20H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v1m2 13a2 2 0 0 1-2-2V7m2 13a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2m-4-3H9M7 16h6M7 8h6v4H7V8z"})],-1)])),e[29]||(e[29]=S("span",{class:"absolute hidden group-hover:block text-xs rounded py-1 px-2 top-full left-1/2 transform -translate-x-1/2 mt-2 whitespace-nowrap"}," Lollms News ",-1))])])],32)):Z("",!0),S("div",{onMouseenter:e[10]||(e[10]=(...g)=>i.showInfosMenu&&i.showInfosMenu(...g)),class:"infos-hover-area"},e[30]||(e[30]=[tr('',1)]),32)])],32)])],34)],2),Le(S("div",_En,[ne(c,{ref:"progress",progress:t.progress_value,class:"w-full h-4"},null,8,["progress"]),S("p",QEn,J(t.loading_infos)+" ...",1)],512),[[An,i.progress_visibility]]),ne(u,{"prompt-text":"Enter the url to the page to use as discussion support",onOk:t.addWebpage,ref:"web_url_input_box"},null,8,["onOk"]),ne(d,{ref:"toast"},null,512),ne(f,{ref:"messageBox"},null,512),ne(T,{ref:"yesNoDialog",class:"z-20"},null,512),ne(h,{ref:"universalForm",class:"z-20"},null,512)],64)}const yEn=Ye(Vbn,[["render",vEn],["__scopeId","data-v-67d4295d"]]),bEn={class:"flex overflow-hidden flex-grow w-full"},EEn={__name:"App",setup(t){return(e,n)=>(N(),H("div",{class:Ee([e.currentTheme,"flex flex-col h-screen font-sans background-color text-slate-950 dark:bg-bg-dark dark:text-slate-50 w-full overflow-hidden"])},[ne(yEn),S("div",bEn,[ne(gt(xN),null,{default:Ge(({Component:o})=>[(N(),ot(JP,null,[(N(),ot(Vc(o)))],1024))]),_:1})])],2))}},ss=Object.create(null);ss.open="0";ss.close="1";ss.ping="2";ss.pong="3";ss.message="4";ss.upgrade="5";ss.noop="6";const W6=Object.create(null);Object.keys(ss).forEach(t=>{W6[ss[t]]=t});const Rf={type:"error",data:"parser error"},JI=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",ek=typeof ArrayBuffer=="function",tk=t=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(t):t&&t.buffer instanceof ArrayBuffer,uh=({type:t,data:e},n,o)=>JI&&e instanceof Blob?n?o(e):pO(e,o):ek&&(e instanceof ArrayBuffer||tk(e))?n?o(e):pO(new Blob([e]),o):o(ss[t]+(e||"")),pO=(t,e)=>{const n=new FileReader;return n.onload=function(){const o=n.result.split(",")[1];e("b"+(o||""))},n.readAsDataURL(t)};function hO(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}let KT;function SEn(t,e){if(JI&&t.data instanceof Blob)return t.data.arrayBuffer().then(hO).then(e);if(ek&&(t.data instanceof ArrayBuffer||tk(t.data)))return e(hO(t.data));uh(t,!1,n=>{KT||(KT=new TextEncoder),e(KT.encode(n))})}const mO="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",lc=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let t=0;t{let e=t.length*.75,n=t.length,o,r=0,i,s,a,l;t[t.length-1]==="="&&(e--,t[t.length-2]==="="&&e--);const c=new ArrayBuffer(e),u=new Uint8Array(c);for(o=0;o>4,u[r++]=(s&15)<<4|a>>2,u[r++]=(a&3)<<6|l&63;return c},LEn=typeof ArrayBuffer=="function",dh=(t,e)=>{if(typeof t!="string")return{type:"message",data:nk(t,e)};const n=t.charAt(0);return n==="b"?{type:"message",data:CEn(t.substring(1),e)}:W6[n]?t.length>1?{type:W6[n],data:t.substring(1)}:{type:W6[n]}:Rf},CEn=(t,e)=>{if(LEn){const n=xEn(t);return nk(n,e)}else return{base64:!0,data:t}},nk=(t,e)=>{switch(e){case"blob":return t instanceof Blob?t:new Blob([t]);case"arraybuffer":default:return t instanceof ArrayBuffer?t:t.buffer}},rk="",AEn=(t,e)=>{const n=t.length,o=new Array(n);let r=0;t.forEach((i,s)=>{uh(i,!1,a=>{o[s]=a,++r===n&&e(o.join(rk))})})},wEn=(t,e)=>{const n=t.split(rk),o=[];for(let r=0;r{const o=n.length;let r;if(o<126)r=new Uint8Array(1),new DataView(r.buffer).setUint8(0,o);else if(o<65536){r=new Uint8Array(3);const i=new DataView(r.buffer);i.setUint8(0,126),i.setUint16(1,o)}else{r=new Uint8Array(9);const i=new DataView(r.buffer);i.setUint8(0,127),i.setBigUint64(1,BigInt(o))}t.data&&typeof t.data!="string"&&(r[0]|=128),e.enqueue(r),e.enqueue(n)})}})}let ZT;function w6(t){return t.reduce((e,n)=>e+n.length,0)}function O6(t,e){if(t[0].length===e)return t.shift();const n=new Uint8Array(e);let o=0;for(let r=0;rMath.pow(2,21)-1){a.enqueue(Rf);break}r=u*Math.pow(2,32)+c.getUint32(4),o=3}else{if(w6(n)t){a.enqueue(Rf);break}}}})}const ik=4;function wn(t){if(t)return REn(t)}function REn(t){for(var e in wn.prototype)t[e]=wn.prototype[e];return t}wn.prototype.on=wn.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+t]=this._callbacks["$"+t]||[]).push(e),this};wn.prototype.once=function(t,e){function n(){this.off(t,n),e.apply(this,arguments)}return n.fn=e,this.on(t,n),this};wn.prototype.off=wn.prototype.removeListener=wn.prototype.removeAllListeners=wn.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var n=this._callbacks["$"+t];if(!n)return this;if(arguments.length==1)return delete this._callbacks["$"+t],this;for(var o,r=0;rPromise.resolve().then(e):(e,n)=>n(e,0),Pi=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),NEn="arraybuffer";function ok(t,...e){return e.reduce((n,o)=>(t.hasOwnProperty(o)&&(n[o]=t[o]),n),{})}const DEn=Pi.setTimeout,IEn=Pi.clearTimeout;function y0(t,e){e.useNativeTimers?(t.setTimeoutFn=DEn.bind(Pi),t.clearTimeoutFn=IEn.bind(Pi)):(t.setTimeoutFn=Pi.setTimeout.bind(Pi),t.clearTimeoutFn=Pi.clearTimeout.bind(Pi))}const kEn=1.33;function HEn(t){return typeof t=="string"?PEn(t):Math.ceil((t.byteLength||t.size)*kEn)}function PEn(t){let e=0,n=0;for(let o=0,r=t.length;o=57344?n+=3:(o++,n+=4);return n}function sk(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function $En(t){let e="";for(let n in t)t.hasOwnProperty(n)&&(e.length&&(e+="&"),e+=encodeURIComponent(n)+"="+encodeURIComponent(t[n]));return e}function VEn(t){let e={},n=t.split("&");for(let o=0,r=n.length;o{this.readyState="paused",e()};if(this._polling||!this.writable){let o=0;this._polling&&(o++,this.once("pollComplete",function(){--o||n()})),this.writable||(o++,this.once("drain",function(){--o||n()}))}else n()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const n=o=>{if(this.readyState==="opening"&&o.type==="open"&&this.onOpen(),o.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(o)};wEn(e,this.socket.binaryType).forEach(n),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,AEn(e,n=>{this.doWrite(n,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",n=this.query||{};return this.opts.timestampRequests!==!1&&(n[this.opts.timestampParam]=sk()),!this.supportsBinary&&!n.sid&&(n.b64=1),this.createUri(e,n)}}let ak=!1;try{ak=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const UEn=ak;function qEn(){}class GEn extends FEn{constructor(e){if(super(e),typeof location<"u"){const n=location.protocol==="https:";let o=location.port;o||(o=n?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||o!==e.port}}doWrite(e,n){const o=this.request({method:"POST",data:e});o.on("success",n),o.on("error",(r,i)=>{this.onError("xhr post error",r,i)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(n,o)=>{this.onError("xhr poll error",n,o)}),this.pollXhr=e}}let hl=class K6 extends wn{constructor(e,n,o){super(),this.createRequest=e,y0(this,o),this._opts=o,this._method=o.method||"GET",this._uri=n,this._data=o.data!==void 0?o.data:null,this._create()}_create(){var e;const n=ok(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");n.xdomain=!!this._opts.xd;const o=this._xhr=this.createRequest(n);try{o.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){o.setDisableHeaderCheck&&o.setDisableHeaderCheck(!0);for(let r in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(r)&&o.setRequestHeader(r,this._opts.extraHeaders[r])}}catch{}if(this._method==="POST")try{o.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{o.setRequestHeader("Accept","*/*")}catch{}(e=this._opts.cookieJar)===null||e===void 0||e.addCookies(o),"withCredentials"in o&&(o.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(o.timeout=this._opts.requestTimeout),o.onreadystatechange=()=>{var r;o.readyState===3&&((r=this._opts.cookieJar)===null||r===void 0||r.parseCookies(o.getResponseHeader("set-cookie"))),o.readyState===4&&(o.status===200||o.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof o.status=="number"?o.status:0)},0))},o.send(this._data)}catch(r){this.setTimeoutFn(()=>{this._onError(r)},0);return}typeof document<"u"&&(this._index=K6.requestsCount++,K6.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=qEn,e)try{this._xhr.abort()}catch{}typeof document<"u"&&delete K6.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}};hl.requestsCount=0;hl.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",gO);else if(typeof addEventListener=="function"){const t="onpagehide"in Pi?"pagehide":"unload";addEventListener(t,gO,!1)}}function gO(){for(let t in hl.requests)hl.requests.hasOwnProperty(t)&&hl.requests[t].abort()}const jEn=function(){const t=lk({xdomain:!1});return t&&t.responseType!==null}();class zEn extends GEn{constructor(e){super(e);const n=e&&e.forceBase64;this.supportsBinary=jEn&&!n}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new hl(lk,this.uri(),e)}}function lk(t){const e=t.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||UEn))return new XMLHttpRequest}catch{}if(!e)try{return new Pi[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const ck=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class YEn extends Th{get name(){return"websocket"}doOpen(){const e=this.uri(),n=this.opts.protocols,o=ck?{}:ok(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(o.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,n,o)}catch(r){return this.emitReserved("error",r)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let n=0;n{try{this.doWrite(o,i)}catch{}r&&v0(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",n=this.query||{};return this.opts.timestampRequests&&(n[this.opts.timestampParam]=sk()),this.supportsBinary||(n.b64=1),this.createUri(e,n)}}const XT=Pi.WebSocket||Pi.MozWebSocket;class WEn extends YEn{createSocket(e,n,o){return ck?new XT(e,n,o):n?new XT(e,n):new XT(e)}doWrite(e,n){this.ws.send(n)}}class KEn extends Th{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const n=MEn(Number.MAX_SAFE_INTEGER,this.socket.binaryType),o=e.readable.pipeThrough(n).getReader(),r=OEn();r.readable.pipeTo(e.writable),this._writer=r.writable.getWriter();const i=()=>{o.read().then(({done:a,value:l})=>{a||(this.onPacket(l),i())}).catch(a=>{})};i();const s={type:"open"};this.query.sid&&(s.data=`{"sid":"${this.query.sid}"}`),this._writer.write(s).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let n=0;n{r&&v0(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}const ZEn={websocket:WEn,webtransport:KEn,polling:zEn},XEn=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,JEn=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Nf(t){if(t.length>8e3)throw"URI too long";const e=t,n=t.indexOf("["),o=t.indexOf("]");n!=-1&&o!=-1&&(t=t.substring(0,n)+t.substring(n,o).replace(/:/g,";")+t.substring(o,t.length));let r=XEn.exec(t||""),i={},s=14;for(;s--;)i[JEn[s]]=r[s]||"";return n!=-1&&o!=-1&&(i.source=e,i.host=i.host.substring(1,i.host.length-1).replace(/;/g,":"),i.authority=i.authority.replace("[","").replace("]","").replace(/;/g,":"),i.ipv6uri=!0),i.pathNames=eSn(i,i.path),i.queryKey=tSn(i,i.query),i}function eSn(t,e){const n=/\/{2,9}/g,o=e.replace(n,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&o.splice(0,1),e.slice(-1)=="/"&&o.splice(o.length-1,1),o}function tSn(t,e){const n={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(o,r,i){r&&(n[r]=i)}),n}const Df=typeof addEventListener=="function"&&typeof removeEventListener=="function",Z6=[];Df&&addEventListener("offline",()=>{Z6.forEach(t=>t())},!1);class z1 extends wn{constructor(e,n){if(super(),this.binaryType=NEn,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&typeof e=="object"&&(n=e,e=null),e){const o=Nf(e);n.hostname=o.host,n.secure=o.protocol==="https"||o.protocol==="wss",n.port=o.port,o.query&&(n.query=o.query)}else n.host&&(n.hostname=Nf(n.host).host);y0(this,n),this.secure=n.secure!=null?n.secure:typeof location<"u"&&location.protocol==="https:",n.hostname&&!n.port&&(n.port=this.secure?"443":"80"),this.hostname=n.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=n.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},n.transports.forEach(o=>{const r=o.prototype.name;this.transports.push(r),this._transportsByName[r]=o}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},n),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=VEn(this.opts.query)),Df&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},Z6.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){const n=Object.assign({},this.opts.query);n.EIO=ik,n.transport=e,this.id&&(n.sid=this.id);const o=Object.assign({},this.opts,{query:n,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new this._transportsByName[e](o)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const e=this.opts.rememberUpgrade&&z1.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const n=this.createTransport(e);n.open(),this.setTransport(n)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",n=>this._onClose("transport close",n))}onOpen(){this.readyState="open",z1.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const n=new Error("server error");n.code=e.data,this._onError(n);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let n=1;for(let o=0;o0&&n>this._maxPayload)return this.writeBuffer.slice(0,o);n+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(this._pingTimeoutTime=0,v0(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,n,o){return this._sendPacket("message",e,n,o),this}send(e,n,o){return this._sendPacket("message",e,n,o),this}_sendPacket(e,n,o,r){if(typeof n=="function"&&(r=n,n=void 0),typeof o=="function"&&(r=o,o=null),this.readyState==="closing"||this.readyState==="closed")return;o=o||{},o.compress=o.compress!==!1;const i={type:e,data:n,options:o};this.emitReserved("packetCreate",i),this.writeBuffer.push(i),r&&this.once("flush",r),this.flush()}close(){const e=()=>{this._onClose("forced close"),this.transport.close()},n=()=>{this.off("upgrade",n),this.off("upgradeError",n),e()},o=()=>{this.once("upgrade",n),this.once("upgradeError",n)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?o():e()}):this.upgrading?o():e()),this}_onError(e){if(z1.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,n){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),Df&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const o=Z6.indexOf(this._offlineEventListener);o!==-1&&Z6.splice(o,1)}this.readyState="closed",this.id=null,this.emitReserved("close",e,n),this.writeBuffer=[],this._prevBufferLen=0}}}z1.protocol=ik;class nSn extends z1{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let e=0;e{o||(n.send([{type:"ping",data:"probe"}]),n.once("packet",d=>{if(!o)if(d.type==="pong"&&d.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",n),!n)return;z1.priorWebsocketSuccess=n.name==="websocket",this.transport.pause(()=>{o||this.readyState!=="closed"&&(u(),this.setTransport(n),n.send([{type:"upgrade"}]),this.emitReserved("upgrade",n),n=null,this.upgrading=!1,this.flush())})}else{const f=new Error("probe error");f.transport=n.name,this.emitReserved("upgradeError",f)}}))};function i(){o||(o=!0,u(),n.close(),n=null)}const s=d=>{const f=new Error("probe error: "+d);f.transport=n.name,i(),this.emitReserved("upgradeError",f)};function a(){s("transport closed")}function l(){s("socket closed")}function c(d){n&&d.name!==n.name&&i()}const u=()=>{n.removeListener("open",r),n.removeListener("error",s),n.removeListener("close",a),this.off("close",l),this.off("upgrading",c)};n.once("open",r),n.once("error",s),n.once("close",a),this.once("close",l),this.once("upgrading",c),this._upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{o||n.open()},200):n.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const n=[];for(let o=0;oZEn[r]).filter(r=>!!r)),super(e,o)}};function iSn(t,e="",n){let o=t;n=n||typeof location<"u"&&location,t==null&&(t=n.protocol+"//"+n.host),typeof t=="string"&&(t.charAt(0)==="/"&&(t.charAt(1)==="/"?t=n.protocol+t:t=n.host+t),/^(https?|wss?):\/\//.test(t)||(typeof n<"u"?t=n.protocol+"//"+t:t="https://"+t),o=Nf(t)),o.port||(/^(http|ws)$/.test(o.protocol)?o.port="80":/^(http|ws)s$/.test(o.protocol)&&(o.port="443")),o.path=o.path||"/";const i=o.host.indexOf(":")!==-1?"["+o.host+"]":o.host;return o.id=o.protocol+"://"+i+":"+o.port+e,o.href=o.protocol+"://"+i+(n&&n.port===o.port?"":":"+o.port),o}const oSn=typeof ArrayBuffer=="function",sSn=t=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(t):t.buffer instanceof ArrayBuffer,uk=Object.prototype.toString,aSn=typeof Blob=="function"||typeof Blob<"u"&&uk.call(Blob)==="[object BlobConstructor]",lSn=typeof File=="function"||typeof File<"u"&&uk.call(File)==="[object FileConstructor]";function fh(t){return oSn&&(t instanceof ArrayBuffer||sSn(t))||aSn&&t instanceof Blob||lSn&&t instanceof File}function X6(t,e){if(!t||typeof t!="object")return!1;if(Array.isArray(t)){for(let n=0,o=t.length;n=0&&t.num{delete this.acks[e];for(let a=0;a{this.io.clearTimeoutFn(i),n.apply(this,a)};s.withError=!0,this.acks[e]=s}emitWithAck(e,...n){return new Promise((o,r)=>{const i=(s,a)=>s?r(s):o(a);i.withError=!0,n.push(i),this.emit(e,...n)})}_addToQueue(e){let n;typeof e[e.length-1]=="function"&&(n=e.pop());const o={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((r,...i)=>o!==this._queue[0]?void 0:(r!==null?o.tryCount>this._opts.retries&&(this._queue.shift(),n&&n(r)):(this._queue.shift(),n&&n(null,...i)),o.pending=!1,this._drainQueue())),this._queue.push(o),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const n=this._queue[0];n.pending&&!e||(n.pending=!0,n.tryCount++,this.flags=n.flags,this.emit.apply(this,n.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:wt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,n){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,n),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(o=>String(o.id)===e)){const o=this.acks[e];delete this.acks[e],o.withError&&o.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case wt.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case wt.EVENT:case wt.BINARY_EVENT:this.onevent(e);break;case wt.ACK:case wt.BINARY_ACK:this.onack(e);break;case wt.DISCONNECT:this.ondisconnect();break;case wt.CONNECT_ERROR:this.destroy();const o=new Error(e.data.message);o.data=e.data.data,this.emitReserved("connect_error",o);break}}onevent(e){const n=e.data||[];e.id!=null&&n.push(this.ack(e.id)),this.connected?this.emitEvent(n):this.receiveBuffer.push(Object.freeze(n))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const n=this._anyListeners.slice();for(const o of n)o.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const n=this;let o=!1;return function(...r){o||(o=!0,n.packet({type:wt.ACK,id:e,data:r}))}}onack(e){const n=this.acks[e.id];typeof n=="function"&&(delete this.acks[e.id],n.withError&&e.data.unshift(null),n.apply(this,e.data))}onconnect(e,n){this.id=e,this.recovered=n&&this._pid===n,this._pid=n,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:wt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const n=this._anyListeners;for(let o=0;o0&&t.jitter<=1?t.jitter:0,this.attempts=0}ql.prototype.duration=function(){var t=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),n=Math.floor(e*this.jitter*t);t=(Math.floor(e*10)&1)==0?t-n:t+n}return Math.min(t,this.max)|0};ql.prototype.reset=function(){this.attempts=0};ql.prototype.setMin=function(t){this.ms=t};ql.prototype.setMax=function(t){this.max=t};ql.prototype.setJitter=function(t){this.jitter=t};class Hf extends wn{constructor(e,n){var o;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(n=e,e=void 0),n=n||{},n.path=n.path||"/socket.io",this.opts=n,y0(this,n),this.reconnection(n.reconnection!==!1),this.reconnectionAttempts(n.reconnectionAttempts||1/0),this.reconnectionDelay(n.reconnectionDelay||1e3),this.reconnectionDelayMax(n.reconnectionDelayMax||5e3),this.randomizationFactor((o=n.randomizationFactor)!==null&&o!==void 0?o:.5),this.backoff=new ql({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(n.timeout==null?2e4:n.timeout),this._readyState="closed",this.uri=e;const r=n.parser||hSn;this.encoder=new r.Encoder,this.decoder=new r.Decoder,this._autoConnect=n.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var n;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(n=this.backoff)===null||n===void 0||n.setMin(e),this)}randomizationFactor(e){var n;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(n=this.backoff)===null||n===void 0||n.setJitter(e),this)}reconnectionDelayMax(e){var n;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(n=this.backoff)===null||n===void 0||n.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new rSn(this.uri,this.opts);const n=this.engine,o=this;this._readyState="opening",this.skipReconnect=!1;const r=Ho(n,"open",function(){o.onopen(),e&&e()}),i=a=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",a),e?e(a):this.maybeReconnectOnOpen()},s=Ho(n,"error",i);if(this._timeout!==!1){const a=this._timeout,l=this.setTimeoutFn(()=>{r(),i(new Error("timeout")),n.close()},a);this.opts.autoUnref&&l.unref(),this.subs.push(()=>{this.clearTimeoutFn(l)})}return this.subs.push(r),this.subs.push(s),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(Ho(e,"ping",this.onping.bind(this)),Ho(e,"data",this.ondata.bind(this)),Ho(e,"error",this.onerror.bind(this)),Ho(e,"close",this.onclose.bind(this)),Ho(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(n){this.onclose("parse error",n)}}ondecoded(e){v0(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,n){let o=this.nsps[e];return o?this._autoConnect&&!o.active&&o.connect():(o=new dk(this,e,n),this.nsps[e]=o),o}_destroy(e){const n=Object.keys(this.nsps);for(const o of n)if(this.nsps[o].active)return;this._close()}_packet(e){const n=this.encoder.encode(e);for(let o=0;oe()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,n){var o;this.cleanup(),(o=this.engine)===null||o===void 0||o.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,n),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const n=this.backoff.duration();this._reconnecting=!0;const o=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(r=>{r?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",r)):e.onreconnect()}))},n);this.opts.autoUnref&&o.unref(),this.subs.push(()=>{this.clearTimeoutFn(o)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const ic={};function J6(t,e){typeof t=="object"&&(e=t,t=void 0),e=e||{};const n=iSn(t,e.path||"/socket.io"),o=n.source,r=n.id,i=n.path,s=ic[r]&&i in ic[r].nsps,a=e.forceNew||e["force new connection"]||e.multiplex===!1||s;let l;return a?l=new Hf(o,e):(ic[r]||(ic[r]=new Hf(o,e)),l=ic[r]),n.query&&!e.query&&(e.query=n.queryKey),l.socket(n.path,e)}Object.assign(J6,{Manager:Hf,Socket:dk,io:J6,connect:J6});const Tk="/";console.log(Tk);const Ze=new J6(Tk,{reconnection:!0,reconnectionAttempts:10,reconnectionDelay:1e3}),gSn={props:{value:String,inputType:{type:String,default:"text",validator:t=>["text","email","password","file","path","integer","float"].includes(t)},fileAccept:String},data(){return{inputValue:this.value,placeholderText:this.getPlaceholderText()}},watch:{value(t){console.log("Changing value to ",t),this.inputValue=t}},mounted(){Se(()=>{Ce.replace()}),console.log("Changing value to ",this.value),this.inputValue=this.value},methods:{handleSliderInput(t){this.inputValue=t.target.value,this.$emit("input",t.target.value)},getPlaceholderText(){switch(this.inputType){case"text":return"Enter text here";case"email":return"Enter your email";case"password":return"Enter your password";case"file":case"path":return"Choose a file";case"integer":return"Enter an integer";case"float":return"Enter a float";default:return"Enter value here"}},handleInput(t){if(this.inputType==="integer"){const e=t.target.value.replace(/[^0-9]/g,"");this.inputValue=e}console.log("handling input : ",t.target.value),this.$emit("input",t.target.value)},async pasteFromClipboard(){try{const t=await navigator.clipboard.readText();this.handleClipboardData(t)}catch(t){console.error("Failed to read from clipboard:",t)}},handlePaste(t){const e=t.clipboardData.getData("text");this.handleClipboardData(e)},handleClipboardData(t){switch(this.inputType){case"email":this.inputValue=this.isValidEmail(t)?t:"";break;case"password":this.inputValue=t;break;case"file":case"path":this.inputValue="";break;case"integer":this.inputValue=this.parseInteger(t);break;case"float":this.inputValue=this.parseFloat(t);break;default:this.inputValue=t;break}},isValidEmail(t){return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)},parseInteger(t){const e=parseInt(t);return isNaN(e)?"":e},parseFloat(t){const e=parseFloat(t);return isNaN(e)?"":e},openFileInput(){this.$refs.fileInput.click()},handleFileInputChange(t){const e=t.target.files[0];e&&(this.inputValue=e.name)}}},_Sn={class:"flex items-center space-x-2"},QSn=["value","type","placeholder"],vSn=["value","min","max"],ySn=["accept"];function bSn(t,e,n,o,r,i){return N(),H("div",_Sn,[t.useSlider?(N(),H("input",{key:1,type:"range",value:parseInt(r.inputValue),min:t.minSliderValue,max:t.maxSliderValue,onInput:e[2]||(e[2]=(...s)=>i.handleSliderInput&&i.handleSliderInput(...s)),class:"flex-1 px-4 py-2 text-lg border dark:bg-gray-600 border-gray-300 rounded-md focus:outline-none focus:ring focus:border-blue-500"},null,40,vSn)):(N(),H("input",{key:0,value:r.inputValue,type:n.inputType,placeholder:r.placeholderText,onInput:e[0]||(e[0]=(...s)=>i.handleInput&&i.handleInput(...s)),onPaste:e[1]||(e[1]=(...s)=>i.handlePaste&&i.handlePaste(...s)),class:"flex-1 px-4 py-2 text-lg dark:bg-gray-600 border border-gray-300 rounded-md focus:outline-none focus:ring focus:border-blue-500"},null,40,QSn)),S("button",{onClick:e[3]||(e[3]=(...s)=>i.pasteFromClipboard&&i.pasteFromClipboard(...s)),class:"p-2 bg-blue-500 dark:bg-gray-600 text-white rounded-md hover:bg-blue-600 focus:outline-none focus:ring focus:border-blue-300"},e[6]||(e[6]=[S("i",{"data-feather":"clipboard"},null,-1)])),n.inputType==="file"?(N(),H("button",{key:2,onClick:e[4]||(e[4]=(...s)=>i.openFileInput&&i.openFileInput(...s)),class:"p-2 bg-blue-500 text-white rounded-md hover:bg-blue-600 focus:outline-none focus:ring focus:border-blue-300"},e[7]||(e[7]=[S("i",{"data-feather":"upload"},null,-1)]))):Z("",!0),n.inputType==="file"?(N(),H("input",{key:3,ref:"fileInput",type:"file",style:{display:"none"},accept:n.fileAccept,onChange:e[5]||(e[5]=(...s)=>i.handleFileInputChange&&i.handleFileInputChange(...s))},null,40,ySn)):Z("",!0)])}const hh=Ye(gSn,[["render",bSn],["__scopeId","data-v-81c70e8d"]]),ESn={name:"TokensHighlighter",props:{namedTokens:{type:Object,required:!0}},data(){return{colors:["#FF6633","#FFB399","#FF33FF","#FFFF99","#00B3E6","#E6B333","#3366E6","#999966","#99FF99","#B34D4D","#80B300","#809900","#E6B3B3","#6680B3","#66991A","#FF99E6","#CCFF1A","#FF1A66","#E6331A","#33FFCC","#66994D","#B366CC","#4D8000","#B33300","#CC80CC","#66664D","#991AFF","#E666FF","#4DB3FF","#1AB399","#E666B3","#33991A","#CC9999","#B3B31A","#00E680","#4D8066","#809980","#E6FF80","#1AFF33","#999933","#FF3380","#CCCC00","#66E64D","#4D80CC","#9900B3","#E64D66","#4DB380","#FF4D4D","#99E6E6","#6666FF"]}}},SSn={class:"w-full"},xSn={class:"break-words"},LSn={class:"break-words mt-2"},CSn={class:"mt-4"};function ASn(t,e,n,o,r,i){return N(),H("div",SSn,[S("div",xSn,[(N(!0),H(xe,null,Pe(n.namedTokens,(s,a)=>(N(),H("span",{key:a},[S("span",{class:"inline-block whitespace-pre-wrap",style:an({backgroundColor:r.colors[a%r.colors.length]})},J(s[0]),5)]))),128))]),S("div",LSn,[(N(!0),H(xe,null,Pe(n.namedTokens,(s,a)=>(N(),H("span",{key:a},[S("span",{class:"inline-block px-1 whitespace-pre-wrap",style:an({backgroundColor:r.colors[a%r.colors.length]})},J(s[1]),5)]))),128))]),S("div",CSn,[S("strong",null,"Total Tokens: "+J(n.namedTokens.length),1)])])}const wSn=Ye(ESn,[["render",ASn]]),OSn={name:"ChatBarButton",emits:["click"]};function MSn(t,e,n,o,r,i){return N(),H("button",_R({class:"svg-button"},t.$attrs,{onClick:e[0]||(e[0]=s=>t.$emit("click",s))}),[_n(t.$slots,"icon"),_n(t.$slots,"default")],16)}const b0=Ye(OSn,[["render",MSn]]),RSn={name:"EnhancedCard",props:{isSubcard:{type:Boolean,default:!1},initiallyShrunk:{type:Boolean,default:!1},canShrink:{type:Boolean,default:!0},title:{type:String,default:""},isHorizontal:{type:Boolean,default:!1},cardWidth:{type:String,default:"w-full"},marginClass:{type:String,default:"m-2"},disableHoverAnimation:{type:Boolean,default:!1},disableFocus:{type:Boolean,default:!1}},emits:["shrunk","expanded","focused","blurred"],setup(t,{emit:e}){const n=Ve(t.initiallyShrunk),o=Ve(!1),r=je(()=>`card-content-${Math.random().toString(36).substring(2,9)}`),i=()=>{t.canShrink&&!n.value&&(n.value=!0,e("shrunk"),o.value&&c())},s=()=>{t.canShrink&&n.value&&(n.value=!1,e("expanded"))},a=()=>{t.canShrink&&(n.value?s():i())},l=()=>{!t.disableFocus&&!o.value&&(o.value=!0,e("focused"),document.body.style.overflow="hidden")},c=()=>{o.value&&(o.value=!1,e("blurred"),document.body.style.overflow="")},u=d=>{d.key==="Escape"&&o.value&&c()};return Hr(()=>{document.addEventListener("keydown",u)}),D2(()=>{document.removeEventListener("keydown",u),o.value&&(document.body.style.overflow="")}),{isShrunkInternal:n,isActive:o,contentId:r,shrinkCard:i,expandCard:s,toggleShrink:a,focusCard:l,blurCard:c}}},NSn=["id"],DSn=["aria-expanded","aria-controls","tabindex"],ISn={key:0,class:"ml-2 text-sm"},kSn=["aria-label"];function HSn(t,e,n,o,r,i){return N(),H("div",{class:Ee(n.marginClass)},[o.isActive?(N(),H("div",{key:0,class:"overlay",onClick:e[0]||(e[0]=(...s)=>o.blurCard&&o.blurCard(...s))})):Z("",!0),Le(S("div",{id:o.contentId,class:Ee(["card-container relative border rounded-lg shadow-lg p-4 transition-all duration-300 ease-in-out",n.cardWidth,"bg-clip-padding backdrop-filter backdrop-blur-xl bg-opacity-60","border border-gray-200/30",{"bg-gray-100 dark:bg-gray-800":n.isSubcard},{"bg-white dark:bg-gray-900":!n.isSubcard},{"scale-110 z-[1001]":o.isActive},{"cursor-pointer":!n.disableFocus}]),onClick:e[4]||(e[4]=oe((...s)=>o.focusCard&&o.focusCard(...s),["self"]))},[o.isActive?(N(),H("button",{key:0,onClick:e[1]||(e[1]=(...s)=>o.blurCard&&o.blurCard(...s)),class:"absolute top-2 right-2 text-gray-700 hover:text-black dark:text-gray-300 dark:hover:text-white text-2xl leading-none z-10 transition-colors","aria-label":"Close"}," × ")):Z("",!0),n.title?(N(),H("div",{key:1,class:Ee(["flex justify-between items-center rounded-t-lg pl-3 pr-3 pt-2 pb-2 mb-3 font-bold","text-gray-800 dark:text-gray-100",{"cursor-pointer":n.canShrink}]),onClick:e[2]||(e[2]=(...s)=>o.toggleShrink&&o.toggleShrink(...s)),role:"button","aria-expanded":!o.isShrunkInternal,"aria-controls":o.contentId,tabindex:n.canShrink?0:-1,onKeydown:e[3]||(e[3]=Qn((...s)=>o.toggleShrink&&o.toggleShrink(...s),["enter","space"]))},[S("span",null,J(n.title),1),n.canShrink?(N(),H("span",ISn,J(o.isShrunkInternal?"▼":"▲"),1)):Z("",!0)],42,DSn)):Z("",!0),S("div",{class:Ee(["text-gray-700 dark:text-gray-200",{"flex flex-wrap":n.isHorizontal,"mb-2":!n.isHorizontal}])},[_n(t.$slots,"default",{},void 0,!0)],2)],10,NSn),[[An,!o.isShrunkInternal]]),n.canShrink?Le((N(),H("div",{key:1,onClick:e[5]||(e[5]=(...s)=>o.expandCard&&o.expandCard(...s)),class:Ee(["shrunk-card border rounded-lg shadow-lg p-2 text-center cursor-pointer transition-all duration-300 ease-in-out",n.cardWidth,"bg-clip-padding backdrop-filter backdrop-blur-md bg-opacity-70","border border-gray-200/30",{"bg-gray-100 dark:bg-gray-800":n.isSubcard},{"bg-white dark:bg-gray-900":!n.isSubcard},"hover:bg-opacity-80 dark:hover:bg-opacity-80",{"text-lg font-semibold text-gray-800 dark:text-gray-200":n.isSubcard},{"text-xl font-bold text-gray-800 dark:text-gray-200":!n.isSubcard}]),role:"button","aria-label":`Expand ${n.title||"Card"}`,tabindex:"0",onKeydown:e[6]||(e[6]=Qn((...s)=>o.expandCard&&o.expandCard(...s),["enter","space"]))},[Re(J(n.title||"Show Card")+" ",1),e[7]||(e[7]=S("span",{class:"text-sm"},"▼",-1))],42,kSn)),[[An,o.isShrunkInternal]]):Z("",!0)],2)}const mh=Ye(RSn,[["render",HSn],["__scopeId","data-v-c3cec55e"]]),fk="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='utf-8'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20fill='%23000000'%20width='800px'%20height='800px'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M20%203H4c-1.103%200-2%20.897-2%202v14c0%201.103.897%202%202%202h16c1.103%200%202-.897%202-2V5c0-1.103-.897-2-2-2zM4%2019V7h16l.002%2012H4z'/%3e%3cpath%20d='M9.293%209.293%205.586%2013l3.707%203.707%201.414-1.414L8.414%2013l2.293-2.293zm5.414%200-1.414%201.414L15.586%2013l-2.293%202.293%201.414%201.414L18.414%2013z'/%3e%3c/svg%3e",pk="/assets/python_block-Bt12VGEE.png",hk="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='utf-8'?%3e%3c!--%20Generator:%20Adobe%20Illustrator%2024.3.0,%20SVG%20Export%20Plug-In%20.%20SVG%20Version:%206.00%20Build%200)%20--%3e%3csvg%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%20630%20630'%20style='enable-background:new%200%200%20630%20630;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e%20.st0{fill:%23EDBF4A;}%20.st1{fill:%230C0C0C;}%20%3c/style%3e%3crect%20class='st0'%20width='630'%20height='630'/%3e%3cpath%20class='st1'%20d='M423.2,492.2c12.7,20.7,29.2,36,58.4,36c24.5,0,40.2-12.3,40.2-29.2c0-20.3-16.1-27.5-43.1-39.3l-14.8-6.4%20c-42.7-18.2-71.1-41-71.1-89.2c0-44.4,33.8-78.2,86.7-78.2c37.6,0,64.7,13.1,84.2,47.4l-46.1,29.6c-10.1-18.2-21.1-25.4-38.1-25.4%20c-17.3,0-28.3,11-28.3,25.4c0,17.8,11,25,36.4,36l14.8,6.3c50.3,21.6,78.7,43.6,78.7,93c0,53.3-41.9,82.5-98.1,82.5%20c-55,0-90.5-26.2-107.9-60.5L423.2,492.2z%20M214.1,497.3c9.3,16.5,17.8,30.5,38.1,30.5c19.5,0,31.7-7.6,31.7-37.2V289.3h59.2v202.1%20c0,61.3-35.9,89.2-88.4,89.2c-47.4,0-74.9-24.5-88.8-54.1L214.1,497.3z'/%3e%3c/svg%3e",mk="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAOeSURBVGhD7ZhNaBNBGIZHW/EPbSioRSpi0FRpVdRSjQfxkFilB5UciuChIL0JLaKIhR5KIYKIiBSF0mLVS7AIavUgPQjiT4+KB0EP3gwS8VDBgj8d33d2ZrNJt2lCppKWfeBh5pvdncyXmZ3sZokQQsIFz1JdLni8M8L6QkSNf9HMSJBIpREkUmkEiVQaQSKVRpCIH8lkUtbW1sre3l7fB9FoNCrD4fC8PaSyYyudNzU1yZGRkYJ9dXV1yUQiYTMZNX6rM5LJZERHR0fBh0/MmJDSZh4OVhOZmprStf+P1UQmJyd1zaGvr09NuxM5VFVViYmJCR3Zw1oiPT09koP00tjYKNrb23XkEIlERHV1tY7sMuNbK5XR0VGJwcnBwcGi+uns7Cz7Mz24fVnpdGhoSDY0NBTbjxweHi77MzXu+N2KBebsh7PW0tJi6/OIGr/Vm72mpkbXssTj8ZxBp9NpUV9fryN7WE0kn1QqJcfHx3U0v1hNJBQKqXtFh2JsbEx0d3frKMv09LSu2UWtMadaHm1tberxQ+9Koq6uLqff1tZW2dzcLPXviy3c8bsVG/T398+6I8ViMTkwMGDtszRq/MEfdJVGkEilESRSaZSSyCa43anmsAPGII/7wWd7nnMEbmaDD2G41anmsA76tfui9mGnWpAPkOftVpEQuyDfkMz19Bv0cg56j9NP8AQ07IXm2Es2eHgK2b5RRf6Ya7OVOchP5D1kfA0m4GX4CxouQR7/A6/DC/CObqNRSA5A00Y7oeG/JMJBM65TUS7rIV/gefw4GzzchWx/rKJsIu90+REaik6knJv9hy5vw4NO1WU/XAG/w0ds8MABk326NLyGL+A2eJYNpVBOIhd1eRS+gs/hTjYAc4M+06WX+7rkt7zKqbrc0OV5WNIjUzmJDME9MKUiIQ5DvnyshOZfCL/+l+uSz/I/narLA8gvhLsb77miKScR8haegqfhb7gBcoa4M5G4Lr0069Kck88VXZ6B+TNWEHWzONWCpCHPM78lZhkZ3kAePwa36DpthQYulwxke5INwNzst1Tk8ASa66mVXYtLgFPOc7iVroUtOh6F3Gbv6fgLXAPJVWj65vU3IW9oxl+hWWJ+iRyC5lpqJZHP0JxjbnBO+UP4F5pjXNsnoRf+IJqZpNySmRSXoMEvEeL9Iqwkwm20Cfqt12UwAleraHZCcLbHEzLz75fiUeMP3hArjUWTiHdpLWgWyYwI8Q8rrSjH5vAr6AAAAABJRU5ErkJggg==",gk="/assets/cpp_block-kkmuBJ_E.png",_k="/assets/html5_block-beC_-Wtz.png",Qk="/assets/LaTeX_block-BNFNi2yr.png",vk="/assets/bash_block-DZNRrwlz.png",PSn="data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNTAgNTAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+DQogIDxjaXJjbGUgY3g9IjI1IiBjeT0iMjUiIHI9IjI1IiBmaWxsPSJkZWVwc2t5Ymx1ZSIvPg0KICA8dGV4dCB4PSIyNSIgeT0iMzciIGZvbnQtc2l6ZT0iMzYiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGZpbGw9IndoaXRlIiBmb250LXdlaWdodD0iYm9sZCI+VDwvdGV4dD4NCjwvc3ZnPg0K",$Sn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='red'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'%3e%3c/circle%3e%3cpath%20d='M16%2016s-1.5-2-4-2-4%202-4%202'%20stroke='currentColor'%3e%3c/path%3e%3cline%20x1='9'%20y1='9'%20x2='15'%20y2='15'%20stroke='currentColor'%3e%3c/line%3e%3c/svg%3e",VSn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'%3e%3c/circle%3e%3cpath%20d='M16%2016s-1.5-2-4-2-4%202-4%202'%3e%3c/path%3e%3cline%20x1='9'%20y1='9'%20x2='15'%20y2='15'%3e%3c/line%3e%3c/svg%3e",BSn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='50'%20height='50'%20viewBox='0%200%2050%2050'%3e%3ccircle%20cx='25'%20cy='25'%20r='24'%20fill='white'%20stroke='black'%20stroke-width='2'/%3e%3ccircle%20id='heartbeat'%20cx='25'%20cy='25'%20r='20'%20fill='red'%3e%3canimate%20attributeName='r'%20dur='1s'%20repeatCount='indefinite'%20keyTimes='0;0.25;0.5;0.75;1'%20values='20;24;20;22;20'/%3e%3c/circle%3e%3c/svg%3e",FSn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='50'%20height='50'%20viewBox='0%200%2050%2050'%3e%3ccircle%20cx='25'%20cy='25'%20r='24'%20fill='white'%20stroke='black'%20stroke-width='2'/%3e%3ccircle%20cx='25'%20cy='25'%20r='20'%20fill='red'/%3e%3c/svg%3e",yk="data:image/svg+xml,%3csvg%20viewBox='0%200%2050%2050'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20transform='translate(25,25)'%3e%3ccircle%20cx='0'%20cy='-15'%20r='3'%20fill='%23f00'%3e%3canimateTransform%20attributeName='transform'%20type='rotate'%20from='0'%20to='360'%20dur='1s'%20repeatCount='indefinite'%20/%3e%3c/circle%3e%3ccircle%20cx='0'%20cy='-15'%20r='3'%20fill='%230f0'%20transform='rotate(90)'%3e%3canimateTransform%20attributeName='transform'%20type='rotate'%20from='0'%20to='360'%20dur='1.2s'%20repeatCount='indefinite'%20/%3e%3c/circle%3e%3ccircle%20cx='0'%20cy='-15'%20r='3'%20fill='%2300f'%20transform='rotate(180)'%3e%3canimateTransform%20attributeName='transform'%20type='rotate'%20from='0'%20to='360'%20dur='1.4s'%20repeatCount='indefinite'%20/%3e%3c/circle%3e%3ccircle%20cx='0'%20cy='-15'%20r='3'%20fill='%23ff0'%20transform='rotate(270)'%3e%3canimateTransform%20attributeName='transform'%20type='rotate'%20from='0'%20to='360'%20dur='1.6s'%20repeatCount='indefinite'%20/%3e%3c/circle%3e%3c/g%3e%3c/svg%3e",USn={props:{icon:{type:String,required:!0},title:{type:String,required:!0}},computed:{iconPath(){return this.getIconPath()}},methods:{emit_click(){console.log("emitting click"),this.$emit("click")},getIconPath(){switch(this.icon){case"x":return'';case"check":return'';case"code":return'';case"python":return'';case"js":return'JS';case"typescript":return'TS';case"braces":return'';case"cplusplus":case"c++":return'C++';case"csharp":return'C#';case"go":return'Go';case"r-project":return'R';case"rust":return'';case"swift":return'';case"kotlin":return'';case"java":return'';case"html5":return'';case"css3":return'';case"vuejs":return'';case"react":return'';case"angular":return'';case"xml":return'';case"json":return'';case"yaml":return'';case"markdown":return'';case"latex":return'TEX';case"bash":return'';case"powershell":return'';case"perl":return'';case"mermaid":return'';case"graphviz":return'';case"plantuml":return'';case"sql":return'';case"mongodb":return'';case"mathFunction":return'';case"terminal":return'';case"edit":return'';case"copy":return'';case"send":return'';case"globe":return'';case"fastForward":return'';case"sendSimple":return'';default:return""}}}},qSn=["title"],GSn={class:"w-6 h-6",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1","stroke-linecap":"round","stroke-linejoin":"round"},jSn=["innerHTML"];function zSn(t,e,n,o,r,i){return N(),H("button",{class:"text-lg hover:text-secondary duration-75 active:scale-90 p-2 cursor-pointer",title:n.title,onClick:e[0]||(e[0]=(...s)=>i.emit_click&&i.emit_click(...s))},[(N(),H("svg",GSn,[S("g",{innerHTML:i.iconPath},null,8,jSn)]))],8,qSn)}const gh=Ye(USn,[["render",zSn]]);var qr="top",zi="bottom",Yi="right",Gr="left",_h="auto",e6=[qr,zi,Yi,Gr],xl="start",Dc="end",YSn="clippingParents",bk="viewport",oc="popper",WSn="reference",QO=e6.reduce(function(t,e){return t.concat([e+"-"+xl,e+"-"+Dc])},[]),Ek=[].concat(e6,[_h]).reduce(function(t,e){return t.concat([e,e+"-"+xl,e+"-"+Dc])},[]),KSn="beforeRead",ZSn="read",XSn="afterRead",JSn="beforeMain",exn="main",txn="afterMain",nxn="beforeWrite",rxn="write",ixn="afterWrite",oxn=[KSn,ZSn,XSn,JSn,exn,txn,nxn,rxn,ixn];function as(t){return t?(t.nodeName||"").toLowerCase():null}function Li(t){if(t==null)return window;if(t.toString()!=="[object Window]"){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function R2(t){var e=Li(t).Element;return t instanceof e||t instanceof Element}function qi(t){var e=Li(t).HTMLElement;return t instanceof e||t instanceof HTMLElement}function Qh(t){if(typeof ShadowRoot>"u")return!1;var e=Li(t).ShadowRoot;return t instanceof e||t instanceof ShadowRoot}function sxn(t){var e=t.state;Object.keys(e.elements).forEach(function(n){var o=e.styles[n]||{},r=e.attributes[n]||{},i=e.elements[n];!qi(i)||!as(i)||(Object.assign(i.style,o),Object.keys(r).forEach(function(s){var a=r[s];a===!1?i.removeAttribute(s):i.setAttribute(s,a===!0?"":a)}))})}function axn(t){var e=t.state,n={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,n.popper),e.styles=n,e.elements.arrow&&Object.assign(e.elements.arrow.style,n.arrow),function(){Object.keys(e.elements).forEach(function(o){var r=e.elements[o],i=e.attributes[o]||{},s=Object.keys(e.styles.hasOwnProperty(o)?e.styles[o]:n[o]),a=s.reduce(function(l,c){return l[c]="",l},{});!qi(r)||!as(r)||(Object.assign(r.style,a),Object.keys(i).forEach(function(l){r.removeAttribute(l)}))})}}const lxn={name:"applyStyles",enabled:!0,phase:"write",fn:sxn,effect:axn,requires:["computeStyles"]};function is(t){return t.split("-")[0]}var L2=Math.max,C5=Math.min,Ll=Math.round;function Pf(){var t=navigator.userAgentData;return t!=null&&t.brands&&Array.isArray(t.brands)?t.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function Sk(){return!/^((?!chrome|android).)*safari/i.test(Pf())}function Cl(t,e,n){e===void 0&&(e=!1),n===void 0&&(n=!1);var o=t.getBoundingClientRect(),r=1,i=1;e&&qi(t)&&(r=t.offsetWidth>0&&Ll(o.width)/t.offsetWidth||1,i=t.offsetHeight>0&&Ll(o.height)/t.offsetHeight||1);var s=R2(t)?Li(t):window,a=s.visualViewport,l=!Sk()&&n,c=(o.left+(l&&a?a.offsetLeft:0))/r,u=(o.top+(l&&a?a.offsetTop:0))/i,d=o.width/r,f=o.height/i;return{width:d,height:f,top:u,right:c+d,bottom:u+f,left:c,x:c,y:u}}function vh(t){var e=Cl(t),n=t.offsetWidth,o=t.offsetHeight;return Math.abs(e.width-n)<=1&&(n=e.width),Math.abs(e.height-o)<=1&&(o=e.height),{x:t.offsetLeft,y:t.offsetTop,width:n,height:o}}function xk(t,e){var n=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(n&&Qh(n)){var o=e;do{if(o&&t.isSameNode(o))return!0;o=o.parentNode||o.host}while(o)}return!1}function b1(t){return Li(t).getComputedStyle(t)}function cxn(t){return["table","td","th"].indexOf(as(t))>=0}function ra(t){return((R2(t)?t.ownerDocument:t.document)||window.document).documentElement}function E0(t){return as(t)==="html"?t:t.assignedSlot||t.parentNode||(Qh(t)?t.host:null)||ra(t)}function vO(t){return!qi(t)||b1(t).position==="fixed"?null:t.offsetParent}function uxn(t){var e=/firefox/i.test(Pf()),n=/Trident/i.test(Pf());if(n&&qi(t)){var o=b1(t);if(o.position==="fixed")return null}var r=E0(t);for(Qh(r)&&(r=r.host);qi(r)&&["html","body"].indexOf(as(r))<0;){var i=b1(r);if(i.transform!=="none"||i.perspective!=="none"||i.contain==="paint"||["transform","perspective"].indexOf(i.willChange)!==-1||e&&i.willChange==="filter"||e&&i.filter&&i.filter!=="none")return r;r=r.parentNode}return null}function t6(t){for(var e=Li(t),n=vO(t);n&&cxn(n)&&b1(n).position==="static";)n=vO(n);return n&&(as(n)==="html"||as(n)==="body"&&b1(n).position==="static")?e:n||uxn(t)||e}function yh(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function _c(t,e,n){return L2(t,C5(e,n))}function dxn(t,e,n){var o=_c(t,e,n);return o>n?n:o}function Lk(){return{top:0,right:0,bottom:0,left:0}}function Ck(t){return Object.assign({},Lk(),t)}function Ak(t,e){return e.reduce(function(n,o){return n[o]=t,n},{})}var Txn=function(e,n){return e=typeof e=="function"?e(Object.assign({},n.rects,{placement:n.placement})):e,Ck(typeof e!="number"?e:Ak(e,e6))};function fxn(t){var e,n=t.state,o=t.name,r=t.options,i=n.elements.arrow,s=n.modifiersData.popperOffsets,a=is(n.placement),l=yh(a),c=[Gr,Yi].indexOf(a)>=0,u=c?"height":"width";if(!(!i||!s)){var d=Txn(r.padding,n),f=vh(i),T=l==="y"?qr:Gr,h=l==="y"?zi:Yi,g=n.rects.reference[u]+n.rects.reference[l]-s[l]-n.rects.popper[u],Q=s[l]-n.rects.reference[l],m=t6(i),_=m?l==="y"?m.clientHeight||0:m.clientWidth||0:0,v=g/2-Q/2,b=d[T],y=_-f[u]-d[h],E=_/2-f[u]/2+v,x=_c(b,E,y),L=l;n.modifiersData[o]=(e={},e[L]=x,e.centerOffset=x-E,e)}}function pxn(t){var e=t.state,n=t.options,o=n.element,r=o===void 0?"[data-popper-arrow]":o;r!=null&&(typeof r=="string"&&(r=e.elements.popper.querySelector(r),!r)||xk(e.elements.popper,r)&&(e.elements.arrow=r))}const hxn={name:"arrow",enabled:!0,phase:"main",fn:fxn,effect:pxn,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Al(t){return t.split("-")[1]}var mxn={top:"auto",right:"auto",bottom:"auto",left:"auto"};function gxn(t,e){var n=t.x,o=t.y,r=e.devicePixelRatio||1;return{x:Ll(n*r)/r||0,y:Ll(o*r)/r||0}}function yO(t){var e,n=t.popper,o=t.popperRect,r=t.placement,i=t.variation,s=t.offsets,a=t.position,l=t.gpuAcceleration,c=t.adaptive,u=t.roundOffsets,d=t.isFixed,f=s.x,T=f===void 0?0:f,h=s.y,g=h===void 0?0:h,Q=typeof u=="function"?u({x:T,y:g}):{x:T,y:g};T=Q.x,g=Q.y;var m=s.hasOwnProperty("x"),_=s.hasOwnProperty("y"),v=Gr,b=qr,y=window;if(c){var E=t6(n),x="clientHeight",L="clientWidth";if(E===Li(n)&&(E=ra(n),b1(E).position!=="static"&&a==="absolute"&&(x="scrollHeight",L="scrollWidth")),E=E,r===qr||(r===Gr||r===Yi)&&i===Dc){b=zi;var C=d&&E===y&&y.visualViewport?y.visualViewport.height:E[x];g-=C-o.height,g*=l?1:-1}if(r===Gr||(r===qr||r===zi)&&i===Dc){v=Yi;var A=d&&E===y&&y.visualViewport?y.visualViewport.width:E[L];T-=A-o.width,T*=l?1:-1}}var O=Object.assign({position:a},c&&mxn),R=u===!0?gxn({x:T,y:g},Li(n)):{x:T,y:g};if(T=R.x,g=R.y,l){var I;return Object.assign({},O,(I={},I[b]=_?"0":"",I[v]=m?"0":"",I.transform=(y.devicePixelRatio||1)<=1?"translate("+T+"px, "+g+"px)":"translate3d("+T+"px, "+g+"px, 0)",I))}return Object.assign({},O,(e={},e[b]=_?g+"px":"",e[v]=m?T+"px":"",e.transform="",e))}function _xn(t){var e=t.state,n=t.options,o=n.gpuAcceleration,r=o===void 0?!0:o,i=n.adaptive,s=i===void 0?!0:i,a=n.roundOffsets,l=a===void 0?!0:a,c={placement:is(e.placement),variation:Al(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:r,isFixed:e.options.strategy==="fixed"};e.modifiersData.popperOffsets!=null&&(e.styles.popper=Object.assign({},e.styles.popper,yO(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:s,roundOffsets:l})))),e.modifiersData.arrow!=null&&(e.styles.arrow=Object.assign({},e.styles.arrow,yO(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})}const Qxn={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:_xn,data:{}};var M6={passive:!0};function vxn(t){var e=t.state,n=t.instance,o=t.options,r=o.scroll,i=r===void 0?!0:r,s=o.resize,a=s===void 0?!0:s,l=Li(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return i&&c.forEach(function(u){u.addEventListener("scroll",n.update,M6)}),a&&l.addEventListener("resize",n.update,M6),function(){i&&c.forEach(function(u){u.removeEventListener("scroll",n.update,M6)}),a&&l.removeEventListener("resize",n.update,M6)}}const yxn={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:vxn,data:{}};var bxn={left:"right",right:"left",bottom:"top",top:"bottom"};function e5(t){return t.replace(/left|right|bottom|top/g,function(e){return bxn[e]})}var Exn={start:"end",end:"start"};function bO(t){return t.replace(/start|end/g,function(e){return Exn[e]})}function bh(t){var e=Li(t),n=e.pageXOffset,o=e.pageYOffset;return{scrollLeft:n,scrollTop:o}}function Eh(t){return Cl(ra(t)).left+bh(t).scrollLeft}function Sxn(t,e){var n=Li(t),o=ra(t),r=n.visualViewport,i=o.clientWidth,s=o.clientHeight,a=0,l=0;if(r){i=r.width,s=r.height;var c=Sk();(c||!c&&e==="fixed")&&(a=r.offsetLeft,l=r.offsetTop)}return{width:i,height:s,x:a+Eh(t),y:l}}function xxn(t){var e,n=ra(t),o=bh(t),r=(e=t.ownerDocument)==null?void 0:e.body,i=L2(n.scrollWidth,n.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),s=L2(n.scrollHeight,n.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),a=-o.scrollLeft+Eh(t),l=-o.scrollTop;return b1(r||n).direction==="rtl"&&(a+=L2(n.clientWidth,r?r.clientWidth:0)-i),{width:i,height:s,x:a,y:l}}function Sh(t){var e=b1(t),n=e.overflow,o=e.overflowX,r=e.overflowY;return/auto|scroll|overlay|hidden/.test(n+r+o)}function wk(t){return["html","body","#document"].indexOf(as(t))>=0?t.ownerDocument.body:qi(t)&&Sh(t)?t:wk(E0(t))}function Qc(t,e){var n;e===void 0&&(e=[]);var o=wk(t),r=o===((n=t.ownerDocument)==null?void 0:n.body),i=Li(o),s=r?[i].concat(i.visualViewport||[],Sh(o)?o:[]):o,a=e.concat(s);return r?a:a.concat(Qc(E0(s)))}function $f(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function Lxn(t,e){var n=Cl(t,!1,e==="fixed");return n.top=n.top+t.clientTop,n.left=n.left+t.clientLeft,n.bottom=n.top+t.clientHeight,n.right=n.left+t.clientWidth,n.width=t.clientWidth,n.height=t.clientHeight,n.x=n.left,n.y=n.top,n}function EO(t,e,n){return e===bk?$f(Sxn(t,n)):R2(e)?Lxn(e,n):$f(xxn(ra(t)))}function Cxn(t){var e=Qc(E0(t)),n=["absolute","fixed"].indexOf(b1(t).position)>=0,o=n&&qi(t)?t6(t):t;return R2(o)?e.filter(function(r){return R2(r)&&xk(r,o)&&as(r)!=="body"}):[]}function Axn(t,e,n,o){var r=e==="clippingParents"?Cxn(t):[].concat(e),i=[].concat(r,[n]),s=i[0],a=i.reduce(function(l,c){var u=EO(t,c,o);return l.top=L2(u.top,l.top),l.right=C5(u.right,l.right),l.bottom=C5(u.bottom,l.bottom),l.left=L2(u.left,l.left),l},EO(t,s,o));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function Ok(t){var e=t.reference,n=t.element,o=t.placement,r=o?is(o):null,i=o?Al(o):null,s=e.x+e.width/2-n.width/2,a=e.y+e.height/2-n.height/2,l;switch(r){case qr:l={x:s,y:e.y-n.height};break;case zi:l={x:s,y:e.y+e.height};break;case Yi:l={x:e.x+e.width,y:a};break;case Gr:l={x:e.x-n.width,y:a};break;default:l={x:e.x,y:e.y}}var c=r?yh(r):null;if(c!=null){var u=c==="y"?"height":"width";switch(i){case xl:l[c]=l[c]-(e[u]/2-n[u]/2);break;case Dc:l[c]=l[c]+(e[u]/2-n[u]/2);break}}return l}function Ic(t,e){e===void 0&&(e={});var n=e,o=n.placement,r=o===void 0?t.placement:o,i=n.strategy,s=i===void 0?t.strategy:i,a=n.boundary,l=a===void 0?YSn:a,c=n.rootBoundary,u=c===void 0?bk:c,d=n.elementContext,f=d===void 0?oc:d,T=n.altBoundary,h=T===void 0?!1:T,g=n.padding,Q=g===void 0?0:g,m=Ck(typeof Q!="number"?Q:Ak(Q,e6)),_=f===oc?WSn:oc,v=t.rects.popper,b=t.elements[h?_:f],y=Axn(R2(b)?b:b.contextElement||ra(t.elements.popper),l,u,s),E=Cl(t.elements.reference),x=Ok({reference:E,element:v,placement:r}),L=$f(Object.assign({},v,x)),C=f===oc?L:E,A={top:y.top-C.top+m.top,bottom:C.bottom-y.bottom+m.bottom,left:y.left-C.left+m.left,right:C.right-y.right+m.right},O=t.modifiersData.offset;if(f===oc&&O){var R=O[r];Object.keys(A).forEach(function(I){var M=[Yi,zi].indexOf(I)>=0?1:-1,$=[qr,zi].indexOf(I)>=0?"y":"x";A[I]+=R[$]*M})}return A}function wxn(t,e){e===void 0&&(e={});var n=e,o=n.placement,r=n.boundary,i=n.rootBoundary,s=n.padding,a=n.flipVariations,l=n.allowedAutoPlacements,c=l===void 0?Ek:l,u=Al(o),d=u?a?QO:QO.filter(function(h){return Al(h)===u}):e6,f=d.filter(function(h){return c.indexOf(h)>=0});f.length===0&&(f=d);var T=f.reduce(function(h,g){return h[g]=Ic(t,{placement:g,boundary:r,rootBoundary:i,padding:s})[is(g)],h},{});return Object.keys(T).sort(function(h,g){return T[h]-T[g]})}function Oxn(t){if(is(t)===_h)return[];var e=e5(t);return[bO(t),e,bO(e)]}function Mxn(t){var e=t.state,n=t.options,o=t.name;if(!e.modifiersData[o]._skip){for(var r=n.mainAxis,i=r===void 0?!0:r,s=n.altAxis,a=s===void 0?!0:s,l=n.fallbackPlacements,c=n.padding,u=n.boundary,d=n.rootBoundary,f=n.altBoundary,T=n.flipVariations,h=T===void 0?!0:T,g=n.allowedAutoPlacements,Q=e.options.placement,m=is(Q),_=m===Q,v=l||(_||!h?[e5(Q)]:Oxn(Q)),b=[Q].concat(v).reduce(function(j,ue){return j.concat(is(ue)===_h?wxn(e,{placement:ue,boundary:u,rootBoundary:d,padding:c,flipVariations:h,allowedAutoPlacements:g}):ue)},[]),y=e.rects.reference,E=e.rects.popper,x=new Map,L=!0,C=b[0],A=0;A=0,$=M?"width":"height",U=Ic(e,{placement:O,boundary:u,rootBoundary:d,altBoundary:f,padding:c}),G=M?I?Yi:Gr:I?zi:qr;y[$]>E[$]&&(G=e5(G));var P=e5(G),F=[];if(i&&F.push(U[R]<=0),a&&F.push(U[G]<=0,U[P]<=0),F.every(function(j){return j})){C=O,L=!1;break}x.set(O,F)}if(L)for(var B=h?3:1,q=function(ue){var pe=b.find(function(z){var te=x.get(z);if(te)return te.slice(0,ue).every(function(ae){return ae})});if(pe)return C=pe,"break"},ee=B;ee>0;ee--){var K=q(ee);if(K==="break")break}e.placement!==C&&(e.modifiersData[o]._skip=!0,e.placement=C,e.reset=!0)}}const Rxn={name:"flip",enabled:!0,phase:"main",fn:Mxn,requiresIfExists:["offset"],data:{_skip:!1}};function SO(t,e,n){return n===void 0&&(n={x:0,y:0}),{top:t.top-e.height-n.y,right:t.right-e.width+n.x,bottom:t.bottom-e.height+n.y,left:t.left-e.width-n.x}}function xO(t){return[qr,Yi,zi,Gr].some(function(e){return t[e]>=0})}function Nxn(t){var e=t.state,n=t.name,o=e.rects.reference,r=e.rects.popper,i=e.modifiersData.preventOverflow,s=Ic(e,{elementContext:"reference"}),a=Ic(e,{altBoundary:!0}),l=SO(s,o),c=SO(a,r,i),u=xO(l),d=xO(c);e.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:u,hasPopperEscaped:d},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}const Dxn={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Nxn};function Ixn(t,e,n){var o=is(t),r=[Gr,qr].indexOf(o)>=0?-1:1,i=typeof n=="function"?n(Object.assign({},e,{placement:t})):n,s=i[0],a=i[1];return s=s||0,a=(a||0)*r,[Gr,Yi].indexOf(o)>=0?{x:a,y:s}:{x:s,y:a}}function kxn(t){var e=t.state,n=t.options,o=t.name,r=n.offset,i=r===void 0?[0,0]:r,s=Ek.reduce(function(u,d){return u[d]=Ixn(d,e.rects,i),u},{}),a=s[e.placement],l=a.x,c=a.y;e.modifiersData.popperOffsets!=null&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=c),e.modifiersData[o]=s}const Hxn={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:kxn};function Pxn(t){var e=t.state,n=t.name;e.modifiersData[n]=Ok({reference:e.rects.reference,element:e.rects.popper,placement:e.placement})}const $xn={name:"popperOffsets",enabled:!0,phase:"read",fn:Pxn,data:{}};function Vxn(t){return t==="x"?"y":"x"}function Bxn(t){var e=t.state,n=t.options,o=t.name,r=n.mainAxis,i=r===void 0?!0:r,s=n.altAxis,a=s===void 0?!1:s,l=n.boundary,c=n.rootBoundary,u=n.altBoundary,d=n.padding,f=n.tether,T=f===void 0?!0:f,h=n.tetherOffset,g=h===void 0?0:h,Q=Ic(e,{boundary:l,rootBoundary:c,padding:d,altBoundary:u}),m=is(e.placement),_=Al(e.placement),v=!_,b=yh(m),y=Vxn(b),E=e.modifiersData.popperOffsets,x=e.rects.reference,L=e.rects.popper,C=typeof g=="function"?g(Object.assign({},e.rects,{placement:e.placement})):g,A=typeof C=="number"?{mainAxis:C,altAxis:C}:Object.assign({mainAxis:0,altAxis:0},C),O=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,R={x:0,y:0};if(E){if(i){var I,M=b==="y"?qr:Gr,$=b==="y"?zi:Yi,U=b==="y"?"height":"width",G=E[b],P=G+Q[M],F=G-Q[$],B=T?-L[U]/2:0,q=_===xl?x[U]:L[U],ee=_===xl?-L[U]:-x[U],K=e.elements.arrow,j=T&&K?vh(K):{width:0,height:0},ue=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:Lk(),pe=ue[M],z=ue[$],te=_c(0,x[U],j[U]),ae=v?x[U]/2-B-te-pe-A.mainAxis:q-te-pe-A.mainAxis,fe=v?-x[U]/2+B+te+z+A.mainAxis:ee+te+z+A.mainAxis,Qe=e.elements.arrow&&t6(e.elements.arrow),Y=Qe?b==="y"?Qe.clientTop||0:Qe.clientLeft||0:0,W=(I=O==null?void 0:O[b])!=null?I:0,X=G+ae-W-Y,se=G+fe-W,le=_c(T?C5(P,X):P,G,T?L2(F,se):F);E[b]=le,R[b]=le-G}if(a){var de,Te=b==="x"?qr:Gr,ge=b==="x"?zi:Yi,_e=E[y],ve=y==="y"?"height":"width",$e=_e+Q[Te],be=_e-Q[ge],Ne=[qr,Gr].indexOf(m)!==-1,Be=(de=O==null?void 0:O[y])!=null?de:0,Ue=Ne?$e:_e-x[ve]-L[ve]-Be+A.altAxis,ct=Ne?_e+x[ve]+L[ve]-Be-A.altAxis:be,at=T&&Ne?dxn(Ue,_e,ct):_c(T?Ue:$e,_e,T?ct:be);E[y]=at,R[y]=at-_e}e.modifiersData[o]=R}}const Fxn={name:"preventOverflow",enabled:!0,phase:"main",fn:Bxn,requiresIfExists:["offset"]};function Uxn(t){return{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}}function qxn(t){return t===Li(t)||!qi(t)?bh(t):Uxn(t)}function Gxn(t){var e=t.getBoundingClientRect(),n=Ll(e.width)/t.offsetWidth||1,o=Ll(e.height)/t.offsetHeight||1;return n!==1||o!==1}function jxn(t,e,n){n===void 0&&(n=!1);var o=qi(e),r=qi(e)&&Gxn(e),i=ra(e),s=Cl(t,r,n),a={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(o||!o&&!n)&&((as(e)!=="body"||Sh(i))&&(a=qxn(e)),qi(e)?(l=Cl(e,!0),l.x+=e.clientLeft,l.y+=e.clientTop):i&&(l.x=Eh(i))),{x:s.left+a.scrollLeft-l.x,y:s.top+a.scrollTop-l.y,width:s.width,height:s.height}}function zxn(t){var e=new Map,n=new Set,o=[];t.forEach(function(i){e.set(i.name,i)});function r(i){n.add(i.name);var s=[].concat(i.requires||[],i.requiresIfExists||[]);s.forEach(function(a){if(!n.has(a)){var l=e.get(a);l&&r(l)}}),o.push(i)}return t.forEach(function(i){n.has(i.name)||r(i)}),o}function Yxn(t){var e=zxn(t);return oxn.reduce(function(n,o){return n.concat(e.filter(function(r){return r.phase===o}))},[])}function Wxn(t){var e;return function(){return e||(e=new Promise(function(n){Promise.resolve().then(function(){e=void 0,n(t())})})),e}}function Kxn(t){var e=t.reduce(function(n,o){var r=n[o.name];return n[o.name]=r?Object.assign({},r,o,{options:Object.assign({},r.options,o.options),data:Object.assign({},r.data,o.data)}):o,n},{});return Object.keys(e).map(function(n){return e[n]})}var LO={placement:"bottom",modifiers:[],strategy:"absolute"};function CO(){for(var t=arguments.length,e=new Array(t),n=0;n{this.createPopper()})},closeMenu(t){var e;!this.$el.contains(t.target)&&!((e=this.$refs.dropdown)!=null&&e.contains(t.target))&&(this.isOpen=!1)},createPopper(){const t=this.$el.querySelector("button"),e=this.$refs.dropdown;t&&e&&(this.popperInstance=S0(t,e,{placement:"bottom-end",modifiers:[{name:"flip",options:{fallbackPlacements:["top-end","bottom-start","top-start"]}},{name:"preventOverflow",options:{boundary:document.body}}]}))}}},eLn={class:"relative inline-block text-left"},tLn={key:0,ref:"dropdown",class:"z-50 w-56 rounded-md shadow-lg bg-white dark:bg-gray-800 ring-1 ring-black ring-opacity-5 dark:ring-white dark:ring-opacity-20 focus:outline-none dropdown-shadow text-gray-700 dark:text-white"},nLn={class:"py-1",role:"menu","aria-orientation":"vertical","aria-labelledby":"options-menu"};function rLn(t,e,n,o,r,i){const s=ze("ToolbarButton");return N(),H("div",eLn,[S("div",null,[ne(s,{onClick:oe(i.toggleMenu,["stop"]),title:n.title,icon:"code"},null,8,["onClick","title"])]),(N(),ot(WP,{to:"body"},[r.isOpen?(N(),H("div",tLn,[S("div",nLn,[_n(t.$slots,"default",{},void 0,!0)])],512)):Z("",!0)]))])}const Mk=Ye(Jxn,[["render",rLn],["__scopeId","data-v-6c3ea3a5"]]);async function AO(t,e="",n=[]){return new Promise((o,r)=>{const i=document.createElement("div");i.className="fixed inset-0 flex items-center justify-center bg-black bg-opacity-50 z-50",n.length===0?i.innerHTML=` + c5.2,0.6,10.3-1.2,14-4.9l58.2-58.2c6.7-6.7,6.7-17.6,0-24.3l-16.3-16.3l48.3-48.3l160.3,160.3L400.425,250.025z`})],-1)]),8,Ubn))],8,Fbn),ne(s),S("div",null,[S("a",qbn,[e[14]||(e[14]=S("svg",{class:"w-5 h-5",viewBox:"0 0 16 16",fill:"currentColor"},[S("path",{d:"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"})],-1)),r.starCount?(N(),H("span",Gbn,J(r.starCount),1)):Z("",!0)])]),e[31]||(e[31]=S("div",{class:"relative"},null,-1)),r.isDarkMode?(N(),H("div",{key:0,class:"text-2xl svg-button hover:text-primary duration-150 cursor-pointer w-50 h-50 ml-2",title:"Switch to Light theme",onClick:e[2]||(e[2]=g=>i.themeSwitch())},e[15]||(e[15]=[S("i",{"data-feather":"sun"},null,-1)]))):(N(),H("div",{key:1,class:"text-2xl svg-button hover:text-primary duration-150 cursor-pointer w-50 h-50 ml-2",title:"Switch to Dark theme",onClick:e[3]||(e[3]=g=>i.themeSwitch())},e[16]||(e[16]=[S("i",{"data-feather":"moon"},null,-1)]))),S("div",jbn,[S("button",{onClick:e[4]||(e[4]=(...g)=>i.toggleLanguageMenu&&i.toggleLanguageMenu(...g)),class:"flex items-center gap-2 px-3 py-2 rounded-md hover:bg-gray-100 transition-colors","aria-haspopup":"true","aria-expanded":r.isLanguageMenuVisible},[S("span",Ybn,J(t.$store.state.language.slice(0,2)),1),(N(),H("svg",{class:Ee(["w-4 h-4 transition-transform",{"rotate-180":r.isLanguageMenuVisible}]),viewBox:"0 0 24 24"},e[17]||(e[17]=[S("path",{d:"M7 10l5 5 5-5z",fill:"currentColor"},null,-1)]),2))],8,zbn),ne(Nr,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"transform scale-95 opacity-0","enter-to-class":"transform scale-100 opacity-100","leave-active-class":"transition duration-150 ease-in","leave-from-class":"transform scale-100 opacity-100","leave-to-class":"transform scale-95 opacity-0"},{default:Ge(()=>[r.isLanguageMenuVisible?(N(),H("div",Wbn,[S("ul",Kbn,[(N(!0),H(xe,null,Pe(i.languages,g=>(N(),H("li",{key:g,class:"group flex items-center px-3 py-2 hover:bg-gray-50"},[S("button",{onClick:Q=>i.deleteLanguage(g),class:"p-1 rounded-full opacity-0 group-hover:opacity-100 transition-opacity text-gray-400 hover:text-red-500 hover:bg-red-50","aria-label":`Delete ${g}`},e[18]||(e[18]=[S("svg",{class:"w-4 h-4",viewBox:"0 0 24 24"},[S("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z",fill:"currentColor"})],-1)]),8,Zbn),S("div",{onClick:Q=>i.selectLanguage(g),class:Ee(["flex-grow px-3 py-1 cursor-pointer rounded-md transition-colors",g===t.$store.state.language?"bg-blue-50 text-blue-600":"hover:bg-gray-100"]),role:"menuitem"},J(g),11,Xbn)]))),128)),S("li",Jbn,[Le(S("input",{type:"text","onUpdate:modelValue":e[5]||(e[5]=g=>t.customLanguage=g),onKeyup:e[6]||(e[6]=Qn(oe((...g)=>i.addCustomLanguage&&i.addCustomLanguage(...g),["prevent"]),["enter"])),placeholder:"Add new language...",class:"w-full px-3 py-2 rounded-md border border-gray-200 focus:border-blue-500 focus:ring-1 focus:ring-blue-500 outline-none transition-all"},null,544),[[Je,t.customLanguage]])])])],512)):Z("",!0)]),_:1})]),S("div",eEn,[S("button",{onClick:e[7]||(e[7]=oe((...g)=>i.toggleThemeDropDown&&i.toggleThemeDropDown(...g),["stop"])),class:"inline-flex items-center justify-between w-40 px-4 py-2 bg-gradient-to-r from-blue-500/10 to-purple-500/10 dark:from-blue-400/20 dark:to-purple-400/20 border border-blue-200 dark:border-blue-700 rounded-lg shadow-sm hover:from-blue-500/20 hover:to-purple-500/20 dark:hover:from-blue-400/30 dark:hover:to-purple-400/30 hover:border-blue-300 dark:hover:border-blue-600 hover:shadow-md focus:outline-none focus:ring-2 focus:ring-blue-500/50 transition-all duration-300 ease-in-out backdrop-blur-sm"},[S("div",tEn,[e[19]||(e[19]=S("svg",{class:"w-5 h-5 flex-shrink-0",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M7 21a4 4 0 01-4-4V5a2 2 0 012-2h4a2 2 0 012 2v12a4 4 0 01-4 4zm0 0h12a2 2 0 002-2v-4a2 2 0 00-2-2h-2.343M11 7.343l1.657-1.657a2 2 0 012.828 0l2.829 2.829a2 2 0 010 2.828l-8.486 8.485M7 17h.01"})],-1)),S("span",nEn,J(r.currentTheme),1)]),(N(),H("svg",{class:Ee(["w-5 h-5 flex-shrink-0 text-blue-500 dark:text-blue-400 transition-transform duration-300",{"rotate-180":r.themeDropdownOpen}]),xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"},e[20]||(e[20]=[S("path",{"fill-rule":"evenodd",d:"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z","clip-rule":"evenodd"},null,-1)]),2))]),ne(Nr,{"enter-active-class":"transition duration-200 ease-out","enter-from-class":"transform scale-95 opacity-0","enter-to-class":"transform scale-100 opacity-100","leave-active-class":"transition duration-75 ease-in","leave-from-class":"transform scale-100 opacity-100","leave-to-class":"transform scale-95 opacity-0"},{default:Ge(()=>[r.themeDropdownOpen?(N(),H("div",rEn,[S("div",iEn,[(N(!0),H(xe,null,Pe(r.availableThemes,g=>(N(),H("a",{key:g,onClick:Q=>{i.loadTheme(g),r.currentTheme=g,r.themeDropdownOpen=!1},class:"flex items-center space-x-3 px-4 py-3 text-gray-700 dark:text-gray-200 hover:bg-gradient-to-r hover:from-blue-50 hover:to-purple-50 dark:hover:from-blue-900/30 dark:hover:to-purple-900/30 cursor-pointer transition-colors duration-150 group"},[e[21]||(e[21]=S("div",{class:"w-2 h-2 rounded-full bg-blue-400 group-hover:bg-blue-500 transition-colors duration-150"},null,-1)),S("span",sEn,J(g),1)],8,oEn))),128))])])):Z("",!0)]),_:1})]),S("div",{class:"toolbar-button",onMouseleave:e[11]||(e[11]=(...g)=>i.hideInfosMenu&&i.hideInfosMenu(...g))},[S("div",aEn,[r.isInfosMenuVisible?(N(),H("div",{key:0,onMouseenter:e[9]||(e[9]=(...g)=>i.showInfosMenu&&i.showInfosMenu(...g)),class:"absolute context-menu m-0 p-0 z-50 top-full right-0 transform rounded-md shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",lEn,[S("div",cEn,[i.isModelOK?(N(),H("div",uEn,e[22]||(e[22]=[S("svg",{class:"w-8 h-8",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}),S("path",{d:"M9 12L11 14L15 10",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})],-1)]))):(N(),H("div",dEn,e[23]||(e[23]=[S("svg",{class:"w-8 h-8",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}),S("path",{d:"M15 9L9 15",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}),S("path",{d:"M9 9L15 15",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})],-1)]))),i.isGenerating?(N(),H("div",fEn,e[25]||(e[25]=[S("svg",{class:"w-6 h-6 animate-spin",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1)]))):(N(),H("div",TEn,e[24]||(e[24]=[S("svg",{class:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M3 21v-4m0 0V5a2 2 0 012-2h6.5l1 1H21l-3 6 3 6h-8.5l-1-1H5a2 2 0 00-2 2zm9-13.5V9"})],-1)]))),i.isConnected?(N(),H("div",pEn,e[26]||(e[26]=[S("svg",{class:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 10V3L4 14h7v7l9-11h-7z"})],-1)]))):(N(),H("div",hEn,e[27]||(e[27]=[S("svg",{class:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M18.364 18.364A9 9 0 005.636 5.636m12.728 12.728A9 9 0 015.636 5.636m12.728 12.728L5.636 5.636"})],-1)])))]),S("div",mEn,[ne(a,{onClick:t.restartProgram,icon:"power",title:"restart program"},null,8,["onClick"]),ne(a,{onClick:i.refreshPage,icon:"refresh-ccw",title:"refresh page"},null,8,["onClick"]),ne(a,{href:"/docs",icon:"file-text",title:"Fast API doc"})]),ne(l,{href:"https://github.com/ParisNeo/lollms-webui",icon:"github"}),ne(l,{href:"https://www.youtube.com/channel/UCJzrg0cyQV2Z30SQ1v2FdSQ",icon:"youtube"}),ne(l,{href:"https://x.com/ParisNeo_AI",icon:"x"}),ne(l,{href:"https://discord.com/channels/1092918764925882418",icon:"discord"}),S("div",gEn,[S("div",{onClick:e[8]||(e[8]=g=>i.showNews()),class:"text-2xl w-8 h-8 cursor-pointer transition-colors duration-300 svg-button"},e[28]||(e[28]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-full h-full"},[S("path",{d:"M19 20H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v1m2 13a2 2 0 0 1-2-2V7m2 13a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2m-4-3H9M7 16h6M7 8h6v4H7V8z"})],-1)])),e[29]||(e[29]=S("span",{class:"absolute hidden group-hover:block text-xs rounded py-1 px-2 top-full left-1/2 transform -translate-x-1/2 mt-2 whitespace-nowrap"}," Lollms News ",-1))])])],32)):Z("",!0),S("div",{onMouseenter:e[10]||(e[10]=(...g)=>i.showInfosMenu&&i.showInfosMenu(...g)),class:"infos-hover-area"},e[30]||(e[30]=[tr('',1)]),32)])],32)])],34)],2),Le(S("div",_En,[ne(c,{ref:"progress",progress:t.progress_value,class:"w-full h-4"},null,8,["progress"]),S("p",QEn,J(t.loading_infos)+" ...",1)],512),[[An,i.progress_visibility]]),ne(u,{"prompt-text":"Enter the url to the page to use as discussion support",onOk:t.addWebpage,ref:"web_url_input_box"},null,8,["onOk"]),ne(d,{ref:"toast"},null,512),ne(f,{ref:"messageBox"},null,512),ne(T,{ref:"yesNoDialog",class:"z-20"},null,512),ne(h,{ref:"universalForm",class:"z-20"},null,512)],64)}const yEn=Ye(Vbn,[["render",vEn],["__scopeId","data-v-67d4295d"]]),bEn={class:"flex overflow-hidden flex-grow w-full"},EEn={__name:"App",setup(t){return(e,n)=>(N(),H("div",{class:Ee([e.currentTheme,"flex flex-col h-screen font-sans background-color text-slate-950 dark:bg-bg-dark dark:text-slate-50 w-full overflow-hidden"])},[ne(yEn),S("div",bEn,[ne(gt(xN),null,{default:Ge(({Component:o})=>[(N(),ot(JP,null,[(N(),ot(Vc(o)))],1024))]),_:1})])],2))}},ss=Object.create(null);ss.open="0";ss.close="1";ss.ping="2";ss.pong="3";ss.message="4";ss.upgrade="5";ss.noop="6";const W6=Object.create(null);Object.keys(ss).forEach(t=>{W6[ss[t]]=t});const Rf={type:"error",data:"parser error"},JI=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",ek=typeof ArrayBuffer=="function",tk=t=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(t):t&&t.buffer instanceof ArrayBuffer,uh=({type:t,data:e},n,o)=>JI&&e instanceof Blob?n?o(e):pO(e,o):ek&&(e instanceof ArrayBuffer||tk(e))?n?o(e):pO(new Blob([e]),o):o(ss[t]+(e||"")),pO=(t,e)=>{const n=new FileReader;return n.onload=function(){const o=n.result.split(",")[1];e("b"+(o||""))},n.readAsDataURL(t)};function hO(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}let KT;function SEn(t,e){if(JI&&t.data instanceof Blob)return t.data.arrayBuffer().then(hO).then(e);if(ek&&(t.data instanceof ArrayBuffer||tk(t.data)))return e(hO(t.data));uh(t,!1,n=>{KT||(KT=new TextEncoder),e(KT.encode(n))})}const mO="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",lc=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let t=0;t{let e=t.length*.75,n=t.length,o,r=0,i,s,a,l;t[t.length-1]==="="&&(e--,t[t.length-2]==="="&&e--);const c=new ArrayBuffer(e),u=new Uint8Array(c);for(o=0;o>4,u[r++]=(s&15)<<4|a>>2,u[r++]=(a&3)<<6|l&63;return c},LEn=typeof ArrayBuffer=="function",dh=(t,e)=>{if(typeof t!="string")return{type:"message",data:nk(t,e)};const n=t.charAt(0);return n==="b"?{type:"message",data:CEn(t.substring(1),e)}:W6[n]?t.length>1?{type:W6[n],data:t.substring(1)}:{type:W6[n]}:Rf},CEn=(t,e)=>{if(LEn){const n=xEn(t);return nk(n,e)}else return{base64:!0,data:t}},nk=(t,e)=>{switch(e){case"blob":return t instanceof Blob?t:new Blob([t]);case"arraybuffer":default:return t instanceof ArrayBuffer?t:t.buffer}},rk="",AEn=(t,e)=>{const n=t.length,o=new Array(n);let r=0;t.forEach((i,s)=>{uh(i,!1,a=>{o[s]=a,++r===n&&e(o.join(rk))})})},wEn=(t,e)=>{const n=t.split(rk),o=[];for(let r=0;r{const o=n.length;let r;if(o<126)r=new Uint8Array(1),new DataView(r.buffer).setUint8(0,o);else if(o<65536){r=new Uint8Array(3);const i=new DataView(r.buffer);i.setUint8(0,126),i.setUint16(1,o)}else{r=new Uint8Array(9);const i=new DataView(r.buffer);i.setUint8(0,127),i.setBigUint64(1,BigInt(o))}t.data&&typeof t.data!="string"&&(r[0]|=128),e.enqueue(r),e.enqueue(n)})}})}let ZT;function w6(t){return t.reduce((e,n)=>e+n.length,0)}function O6(t,e){if(t[0].length===e)return t.shift();const n=new Uint8Array(e);let o=0;for(let r=0;rMath.pow(2,21)-1){a.enqueue(Rf);break}r=u*Math.pow(2,32)+c.getUint32(4),o=3}else{if(w6(n)t){a.enqueue(Rf);break}}}})}const ik=4;function wn(t){if(t)return REn(t)}function REn(t){for(var e in wn.prototype)t[e]=wn.prototype[e];return t}wn.prototype.on=wn.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+t]=this._callbacks["$"+t]||[]).push(e),this};wn.prototype.once=function(t,e){function n(){this.off(t,n),e.apply(this,arguments)}return n.fn=e,this.on(t,n),this};wn.prototype.off=wn.prototype.removeListener=wn.prototype.removeAllListeners=wn.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var n=this._callbacks["$"+t];if(!n)return this;if(arguments.length==1)return delete this._callbacks["$"+t],this;for(var o,r=0;rPromise.resolve().then(e):(e,n)=>n(e,0),Pi=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),NEn="arraybuffer";function ok(t,...e){return e.reduce((n,o)=>(t.hasOwnProperty(o)&&(n[o]=t[o]),n),{})}const DEn=Pi.setTimeout,IEn=Pi.clearTimeout;function y0(t,e){e.useNativeTimers?(t.setTimeoutFn=DEn.bind(Pi),t.clearTimeoutFn=IEn.bind(Pi)):(t.setTimeoutFn=Pi.setTimeout.bind(Pi),t.clearTimeoutFn=Pi.clearTimeout.bind(Pi))}const kEn=1.33;function HEn(t){return typeof t=="string"?PEn(t):Math.ceil((t.byteLength||t.size)*kEn)}function PEn(t){let e=0,n=0;for(let o=0,r=t.length;o=57344?n+=3:(o++,n+=4);return n}function sk(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function $En(t){let e="";for(let n in t)t.hasOwnProperty(n)&&(e.length&&(e+="&"),e+=encodeURIComponent(n)+"="+encodeURIComponent(t[n]));return e}function VEn(t){let e={},n=t.split("&");for(let o=0,r=n.length;o{this.readyState="paused",e()};if(this._polling||!this.writable){let o=0;this._polling&&(o++,this.once("pollComplete",function(){--o||n()})),this.writable||(o++,this.once("drain",function(){--o||n()}))}else n()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const n=o=>{if(this.readyState==="opening"&&o.type==="open"&&this.onOpen(),o.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(o)};wEn(e,this.socket.binaryType).forEach(n),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,AEn(e,n=>{this.doWrite(n,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",n=this.query||{};return this.opts.timestampRequests!==!1&&(n[this.opts.timestampParam]=sk()),!this.supportsBinary&&!n.sid&&(n.b64=1),this.createUri(e,n)}}let ak=!1;try{ak=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const UEn=ak;function qEn(){}class GEn extends FEn{constructor(e){if(super(e),typeof location<"u"){const n=location.protocol==="https:";let o=location.port;o||(o=n?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||o!==e.port}}doWrite(e,n){const o=this.request({method:"POST",data:e});o.on("success",n),o.on("error",(r,i)=>{this.onError("xhr post error",r,i)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(n,o)=>{this.onError("xhr poll error",n,o)}),this.pollXhr=e}}let hl=class K6 extends wn{constructor(e,n,o){super(),this.createRequest=e,y0(this,o),this._opts=o,this._method=o.method||"GET",this._uri=n,this._data=o.data!==void 0?o.data:null,this._create()}_create(){var e;const n=ok(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");n.xdomain=!!this._opts.xd;const o=this._xhr=this.createRequest(n);try{o.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){o.setDisableHeaderCheck&&o.setDisableHeaderCheck(!0);for(let r in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(r)&&o.setRequestHeader(r,this._opts.extraHeaders[r])}}catch{}if(this._method==="POST")try{o.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{o.setRequestHeader("Accept","*/*")}catch{}(e=this._opts.cookieJar)===null||e===void 0||e.addCookies(o),"withCredentials"in o&&(o.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(o.timeout=this._opts.requestTimeout),o.onreadystatechange=()=>{var r;o.readyState===3&&((r=this._opts.cookieJar)===null||r===void 0||r.parseCookies(o.getResponseHeader("set-cookie"))),o.readyState===4&&(o.status===200||o.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof o.status=="number"?o.status:0)},0))},o.send(this._data)}catch(r){this.setTimeoutFn(()=>{this._onError(r)},0);return}typeof document<"u"&&(this._index=K6.requestsCount++,K6.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=qEn,e)try{this._xhr.abort()}catch{}typeof document<"u"&&delete K6.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}};hl.requestsCount=0;hl.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",gO);else if(typeof addEventListener=="function"){const t="onpagehide"in Pi?"pagehide":"unload";addEventListener(t,gO,!1)}}function gO(){for(let t in hl.requests)hl.requests.hasOwnProperty(t)&&hl.requests[t].abort()}const jEn=function(){const t=lk({xdomain:!1});return t&&t.responseType!==null}();class zEn extends GEn{constructor(e){super(e);const n=e&&e.forceBase64;this.supportsBinary=jEn&&!n}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new hl(lk,this.uri(),e)}}function lk(t){const e=t.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||UEn))return new XMLHttpRequest}catch{}if(!e)try{return new Pi[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const ck=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class YEn extends Th{get name(){return"websocket"}doOpen(){const e=this.uri(),n=this.opts.protocols,o=ck?{}:ok(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(o.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,n,o)}catch(r){return this.emitReserved("error",r)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let n=0;n{try{this.doWrite(o,i)}catch{}r&&v0(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",n=this.query||{};return this.opts.timestampRequests&&(n[this.opts.timestampParam]=sk()),this.supportsBinary||(n.b64=1),this.createUri(e,n)}}const XT=Pi.WebSocket||Pi.MozWebSocket;class WEn extends YEn{createSocket(e,n,o){return ck?new XT(e,n,o):n?new XT(e,n):new XT(e)}doWrite(e,n){this.ws.send(n)}}class KEn extends Th{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const n=MEn(Number.MAX_SAFE_INTEGER,this.socket.binaryType),o=e.readable.pipeThrough(n).getReader(),r=OEn();r.readable.pipeTo(e.writable),this._writer=r.writable.getWriter();const i=()=>{o.read().then(({done:a,value:l})=>{a||(this.onPacket(l),i())}).catch(a=>{})};i();const s={type:"open"};this.query.sid&&(s.data=`{"sid":"${this.query.sid}"}`),this._writer.write(s).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let n=0;n{r&&v0(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}const ZEn={websocket:WEn,webtransport:KEn,polling:zEn},XEn=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,JEn=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Nf(t){if(t.length>8e3)throw"URI too long";const e=t,n=t.indexOf("["),o=t.indexOf("]");n!=-1&&o!=-1&&(t=t.substring(0,n)+t.substring(n,o).replace(/:/g,";")+t.substring(o,t.length));let r=XEn.exec(t||""),i={},s=14;for(;s--;)i[JEn[s]]=r[s]||"";return n!=-1&&o!=-1&&(i.source=e,i.host=i.host.substring(1,i.host.length-1).replace(/;/g,":"),i.authority=i.authority.replace("[","").replace("]","").replace(/;/g,":"),i.ipv6uri=!0),i.pathNames=eSn(i,i.path),i.queryKey=tSn(i,i.query),i}function eSn(t,e){const n=/\/{2,9}/g,o=e.replace(n,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&o.splice(0,1),e.slice(-1)=="/"&&o.splice(o.length-1,1),o}function tSn(t,e){const n={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(o,r,i){r&&(n[r]=i)}),n}const Df=typeof addEventListener=="function"&&typeof removeEventListener=="function",Z6=[];Df&&addEventListener("offline",()=>{Z6.forEach(t=>t())},!1);class z1 extends wn{constructor(e,n){if(super(),this.binaryType=NEn,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&typeof e=="object"&&(n=e,e=null),e){const o=Nf(e);n.hostname=o.host,n.secure=o.protocol==="https"||o.protocol==="wss",n.port=o.port,o.query&&(n.query=o.query)}else n.host&&(n.hostname=Nf(n.host).host);y0(this,n),this.secure=n.secure!=null?n.secure:typeof location<"u"&&location.protocol==="https:",n.hostname&&!n.port&&(n.port=this.secure?"443":"80"),this.hostname=n.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=n.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},n.transports.forEach(o=>{const r=o.prototype.name;this.transports.push(r),this._transportsByName[r]=o}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},n),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=VEn(this.opts.query)),Df&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},Z6.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){const n=Object.assign({},this.opts.query);n.EIO=ik,n.transport=e,this.id&&(n.sid=this.id);const o=Object.assign({},this.opts,{query:n,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new this._transportsByName[e](o)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const e=this.opts.rememberUpgrade&&z1.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const n=this.createTransport(e);n.open(),this.setTransport(n)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",n=>this._onClose("transport close",n))}onOpen(){this.readyState="open",z1.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const n=new Error("server error");n.code=e.data,this._onError(n);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let n=1;for(let o=0;o0&&n>this._maxPayload)return this.writeBuffer.slice(0,o);n+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(this._pingTimeoutTime=0,v0(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,n,o){return this._sendPacket("message",e,n,o),this}send(e,n,o){return this._sendPacket("message",e,n,o),this}_sendPacket(e,n,o,r){if(typeof n=="function"&&(r=n,n=void 0),typeof o=="function"&&(r=o,o=null),this.readyState==="closing"||this.readyState==="closed")return;o=o||{},o.compress=o.compress!==!1;const i={type:e,data:n,options:o};this.emitReserved("packetCreate",i),this.writeBuffer.push(i),r&&this.once("flush",r),this.flush()}close(){const e=()=>{this._onClose("forced close"),this.transport.close()},n=()=>{this.off("upgrade",n),this.off("upgradeError",n),e()},o=()=>{this.once("upgrade",n),this.once("upgradeError",n)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?o():e()}):this.upgrading?o():e()),this}_onError(e){if(z1.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,n){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),Df&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const o=Z6.indexOf(this._offlineEventListener);o!==-1&&Z6.splice(o,1)}this.readyState="closed",this.id=null,this.emitReserved("close",e,n),this.writeBuffer=[],this._prevBufferLen=0}}}z1.protocol=ik;class nSn extends z1{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let e=0;e{o||(n.send([{type:"ping",data:"probe"}]),n.once("packet",d=>{if(!o)if(d.type==="pong"&&d.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",n),!n)return;z1.priorWebsocketSuccess=n.name==="websocket",this.transport.pause(()=>{o||this.readyState!=="closed"&&(u(),this.setTransport(n),n.send([{type:"upgrade"}]),this.emitReserved("upgrade",n),n=null,this.upgrading=!1,this.flush())})}else{const f=new Error("probe error");f.transport=n.name,this.emitReserved("upgradeError",f)}}))};function i(){o||(o=!0,u(),n.close(),n=null)}const s=d=>{const f=new Error("probe error: "+d);f.transport=n.name,i(),this.emitReserved("upgradeError",f)};function a(){s("transport closed")}function l(){s("socket closed")}function c(d){n&&d.name!==n.name&&i()}const u=()=>{n.removeListener("open",r),n.removeListener("error",s),n.removeListener("close",a),this.off("close",l),this.off("upgrading",c)};n.once("open",r),n.once("error",s),n.once("close",a),this.once("close",l),this.once("upgrading",c),this._upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{o||n.open()},200):n.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const n=[];for(let o=0;oZEn[r]).filter(r=>!!r)),super(e,o)}};function iSn(t,e="",n){let o=t;n=n||typeof location<"u"&&location,t==null&&(t=n.protocol+"//"+n.host),typeof t=="string"&&(t.charAt(0)==="/"&&(t.charAt(1)==="/"?t=n.protocol+t:t=n.host+t),/^(https?|wss?):\/\//.test(t)||(typeof n<"u"?t=n.protocol+"//"+t:t="https://"+t),o=Nf(t)),o.port||(/^(http|ws)$/.test(o.protocol)?o.port="80":/^(http|ws)s$/.test(o.protocol)&&(o.port="443")),o.path=o.path||"/";const i=o.host.indexOf(":")!==-1?"["+o.host+"]":o.host;return o.id=o.protocol+"://"+i+":"+o.port+e,o.href=o.protocol+"://"+i+(n&&n.port===o.port?"":":"+o.port),o}const oSn=typeof ArrayBuffer=="function",sSn=t=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(t):t.buffer instanceof ArrayBuffer,uk=Object.prototype.toString,aSn=typeof Blob=="function"||typeof Blob<"u"&&uk.call(Blob)==="[object BlobConstructor]",lSn=typeof File=="function"||typeof File<"u"&&uk.call(File)==="[object FileConstructor]";function fh(t){return oSn&&(t instanceof ArrayBuffer||sSn(t))||aSn&&t instanceof Blob||lSn&&t instanceof File}function X6(t,e){if(!t||typeof t!="object")return!1;if(Array.isArray(t)){for(let n=0,o=t.length;n=0&&t.num{delete this.acks[e];for(let a=0;a{this.io.clearTimeoutFn(i),n.apply(this,a)};s.withError=!0,this.acks[e]=s}emitWithAck(e,...n){return new Promise((o,r)=>{const i=(s,a)=>s?r(s):o(a);i.withError=!0,n.push(i),this.emit(e,...n)})}_addToQueue(e){let n;typeof e[e.length-1]=="function"&&(n=e.pop());const o={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((r,...i)=>o!==this._queue[0]?void 0:(r!==null?o.tryCount>this._opts.retries&&(this._queue.shift(),n&&n(r)):(this._queue.shift(),n&&n(null,...i)),o.pending=!1,this._drainQueue())),this._queue.push(o),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const n=this._queue[0];n.pending&&!e||(n.pending=!0,n.tryCount++,this.flags=n.flags,this.emit.apply(this,n.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:wt.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,n){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,n),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(o=>String(o.id)===e)){const o=this.acks[e];delete this.acks[e],o.withError&&o.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case wt.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case wt.EVENT:case wt.BINARY_EVENT:this.onevent(e);break;case wt.ACK:case wt.BINARY_ACK:this.onack(e);break;case wt.DISCONNECT:this.ondisconnect();break;case wt.CONNECT_ERROR:this.destroy();const o=new Error(e.data.message);o.data=e.data.data,this.emitReserved("connect_error",o);break}}onevent(e){const n=e.data||[];e.id!=null&&n.push(this.ack(e.id)),this.connected?this.emitEvent(n):this.receiveBuffer.push(Object.freeze(n))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const n=this._anyListeners.slice();for(const o of n)o.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const n=this;let o=!1;return function(...r){o||(o=!0,n.packet({type:wt.ACK,id:e,data:r}))}}onack(e){const n=this.acks[e.id];typeof n=="function"&&(delete this.acks[e.id],n.withError&&e.data.unshift(null),n.apply(this,e.data))}onconnect(e,n){this.id=e,this.recovered=n&&this._pid===n,this._pid=n,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:wt.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const n=this._anyListeners;for(let o=0;o0&&t.jitter<=1?t.jitter:0,this.attempts=0}ql.prototype.duration=function(){var t=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),n=Math.floor(e*this.jitter*t);t=(Math.floor(e*10)&1)==0?t-n:t+n}return Math.min(t,this.max)|0};ql.prototype.reset=function(){this.attempts=0};ql.prototype.setMin=function(t){this.ms=t};ql.prototype.setMax=function(t){this.max=t};ql.prototype.setJitter=function(t){this.jitter=t};class Hf extends wn{constructor(e,n){var o;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(n=e,e=void 0),n=n||{},n.path=n.path||"/socket.io",this.opts=n,y0(this,n),this.reconnection(n.reconnection!==!1),this.reconnectionAttempts(n.reconnectionAttempts||1/0),this.reconnectionDelay(n.reconnectionDelay||1e3),this.reconnectionDelayMax(n.reconnectionDelayMax||5e3),this.randomizationFactor((o=n.randomizationFactor)!==null&&o!==void 0?o:.5),this.backoff=new ql({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(n.timeout==null?2e4:n.timeout),this._readyState="closed",this.uri=e;const r=n.parser||hSn;this.encoder=new r.Encoder,this.decoder=new r.Decoder,this._autoConnect=n.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var n;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(n=this.backoff)===null||n===void 0||n.setMin(e),this)}randomizationFactor(e){var n;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(n=this.backoff)===null||n===void 0||n.setJitter(e),this)}reconnectionDelayMax(e){var n;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(n=this.backoff)===null||n===void 0||n.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new rSn(this.uri,this.opts);const n=this.engine,o=this;this._readyState="opening",this.skipReconnect=!1;const r=Ho(n,"open",function(){o.onopen(),e&&e()}),i=a=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",a),e?e(a):this.maybeReconnectOnOpen()},s=Ho(n,"error",i);if(this._timeout!==!1){const a=this._timeout,l=this.setTimeoutFn(()=>{r(),i(new Error("timeout")),n.close()},a);this.opts.autoUnref&&l.unref(),this.subs.push(()=>{this.clearTimeoutFn(l)})}return this.subs.push(r),this.subs.push(s),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(Ho(e,"ping",this.onping.bind(this)),Ho(e,"data",this.ondata.bind(this)),Ho(e,"error",this.onerror.bind(this)),Ho(e,"close",this.onclose.bind(this)),Ho(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(n){this.onclose("parse error",n)}}ondecoded(e){v0(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,n){let o=this.nsps[e];return o?this._autoConnect&&!o.active&&o.connect():(o=new dk(this,e,n),this.nsps[e]=o),o}_destroy(e){const n=Object.keys(this.nsps);for(const o of n)if(this.nsps[o].active)return;this._close()}_packet(e){const n=this.encoder.encode(e);for(let o=0;oe()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,n){var o;this.cleanup(),(o=this.engine)===null||o===void 0||o.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,n),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const n=this.backoff.duration();this._reconnecting=!0;const o=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(r=>{r?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",r)):e.onreconnect()}))},n);this.opts.autoUnref&&o.unref(),this.subs.push(()=>{this.clearTimeoutFn(o)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const ic={};function J6(t,e){typeof t=="object"&&(e=t,t=void 0),e=e||{};const n=iSn(t,e.path||"/socket.io"),o=n.source,r=n.id,i=n.path,s=ic[r]&&i in ic[r].nsps,a=e.forceNew||e["force new connection"]||e.multiplex===!1||s;let l;return a?l=new Hf(o,e):(ic[r]||(ic[r]=new Hf(o,e)),l=ic[r]),n.query&&!e.query&&(e.query=n.queryKey),l.socket(n.path,e)}Object.assign(J6,{Manager:Hf,Socket:dk,io:J6,connect:J6});const Tk="/";console.log(Tk);const Ze=new J6(Tk,{reconnection:!0,reconnectionAttempts:10,reconnectionDelay:1e3}),gSn={props:{value:String,inputType:{type:String,default:"text",validator:t=>["text","email","password","file","path","integer","float"].includes(t)},fileAccept:String},data(){return{inputValue:this.value,placeholderText:this.getPlaceholderText()}},watch:{value(t){console.log("Changing value to ",t),this.inputValue=t}},mounted(){Se(()=>{Ce.replace()}),console.log("Changing value to ",this.value),this.inputValue=this.value},methods:{handleSliderInput(t){this.inputValue=t.target.value,this.$emit("input",t.target.value)},getPlaceholderText(){switch(this.inputType){case"text":return"Enter text here";case"email":return"Enter your email";case"password":return"Enter your password";case"file":case"path":return"Choose a file";case"integer":return"Enter an integer";case"float":return"Enter a float";default:return"Enter value here"}},handleInput(t){if(this.inputType==="integer"){const e=t.target.value.replace(/[^0-9]/g,"");this.inputValue=e}console.log("handling input : ",t.target.value),this.$emit("input",t.target.value)},async pasteFromClipboard(){try{const t=await navigator.clipboard.readText();this.handleClipboardData(t)}catch(t){console.error("Failed to read from clipboard:",t)}},handlePaste(t){const e=t.clipboardData.getData("text");this.handleClipboardData(e)},handleClipboardData(t){switch(this.inputType){case"email":this.inputValue=this.isValidEmail(t)?t:"";break;case"password":this.inputValue=t;break;case"file":case"path":this.inputValue="";break;case"integer":this.inputValue=this.parseInteger(t);break;case"float":this.inputValue=this.parseFloat(t);break;default:this.inputValue=t;break}},isValidEmail(t){return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)},parseInteger(t){const e=parseInt(t);return isNaN(e)?"":e},parseFloat(t){const e=parseFloat(t);return isNaN(e)?"":e},openFileInput(){this.$refs.fileInput.click()},handleFileInputChange(t){const e=t.target.files[0];e&&(this.inputValue=e.name)}}},_Sn={class:"flex items-center space-x-2"},QSn=["value","type","placeholder"],vSn=["value","min","max"],ySn=["accept"];function bSn(t,e,n,o,r,i){return N(),H("div",_Sn,[t.useSlider?(N(),H("input",{key:1,type:"range",value:parseInt(r.inputValue),min:t.minSliderValue,max:t.maxSliderValue,onInput:e[2]||(e[2]=(...s)=>i.handleSliderInput&&i.handleSliderInput(...s)),class:"flex-1 px-4 py-2 text-lg border dark:bg-gray-600 border-gray-300 rounded-md focus:outline-none focus:ring focus:border-blue-500"},null,40,vSn)):(N(),H("input",{key:0,value:r.inputValue,type:n.inputType,placeholder:r.placeholderText,onInput:e[0]||(e[0]=(...s)=>i.handleInput&&i.handleInput(...s)),onPaste:e[1]||(e[1]=(...s)=>i.handlePaste&&i.handlePaste(...s)),class:"flex-1 px-4 py-2 text-lg dark:bg-gray-600 border border-gray-300 rounded-md focus:outline-none focus:ring focus:border-blue-500"},null,40,QSn)),S("button",{onClick:e[3]||(e[3]=(...s)=>i.pasteFromClipboard&&i.pasteFromClipboard(...s)),class:"p-2 bg-blue-500 dark:bg-gray-600 text-white rounded-md hover:bg-blue-600 focus:outline-none focus:ring focus:border-blue-300"},e[6]||(e[6]=[S("i",{"data-feather":"clipboard"},null,-1)])),n.inputType==="file"?(N(),H("button",{key:2,onClick:e[4]||(e[4]=(...s)=>i.openFileInput&&i.openFileInput(...s)),class:"p-2 bg-blue-500 text-white rounded-md hover:bg-blue-600 focus:outline-none focus:ring focus:border-blue-300"},e[7]||(e[7]=[S("i",{"data-feather":"upload"},null,-1)]))):Z("",!0),n.inputType==="file"?(N(),H("input",{key:3,ref:"fileInput",type:"file",style:{display:"none"},accept:n.fileAccept,onChange:e[5]||(e[5]=(...s)=>i.handleFileInputChange&&i.handleFileInputChange(...s))},null,40,ySn)):Z("",!0)])}const hh=Ye(gSn,[["render",bSn],["__scopeId","data-v-81c70e8d"]]),ESn={name:"TokensHighlighter",props:{namedTokens:{type:Object,required:!0}},data(){return{colors:["#FF6633","#FFB399","#FF33FF","#FFFF99","#00B3E6","#E6B333","#3366E6","#999966","#99FF99","#B34D4D","#80B300","#809900","#E6B3B3","#6680B3","#66991A","#FF99E6","#CCFF1A","#FF1A66","#E6331A","#33FFCC","#66994D","#B366CC","#4D8000","#B33300","#CC80CC","#66664D","#991AFF","#E666FF","#4DB3FF","#1AB399","#E666B3","#33991A","#CC9999","#B3B31A","#00E680","#4D8066","#809980","#E6FF80","#1AFF33","#999933","#FF3380","#CCCC00","#66E64D","#4D80CC","#9900B3","#E64D66","#4DB380","#FF4D4D","#99E6E6","#6666FF"]}}},SSn={class:"w-full"},xSn={class:"break-words"},LSn={class:"break-words mt-2"},CSn={class:"mt-4"};function ASn(t,e,n,o,r,i){return N(),H("div",SSn,[S("div",xSn,[(N(!0),H(xe,null,Pe(n.namedTokens,(s,a)=>(N(),H("span",{key:a},[S("span",{class:"inline-block whitespace-pre-wrap",style:an({backgroundColor:r.colors[a%r.colors.length]})},J(s[0]),5)]))),128))]),S("div",LSn,[(N(!0),H(xe,null,Pe(n.namedTokens,(s,a)=>(N(),H("span",{key:a},[S("span",{class:"inline-block px-1 whitespace-pre-wrap",style:an({backgroundColor:r.colors[a%r.colors.length]})},J(s[1]),5)]))),128))]),S("div",CSn,[S("strong",null,"Total Tokens: "+J(n.namedTokens.length),1)])])}const wSn=Ye(ESn,[["render",ASn]]),OSn={name:"ChatBarButton",emits:["click"]};function MSn(t,e,n,o,r,i){return N(),H("button",_R({class:"svg-button"},t.$attrs,{onClick:e[0]||(e[0]=s=>t.$emit("click",s))}),[_n(t.$slots,"icon"),_n(t.$slots,"default")],16)}const b0=Ye(OSn,[["render",MSn]]),RSn={name:"EnhancedCard",props:{isSubcard:{type:Boolean,default:!1},initiallyShrunk:{type:Boolean,default:!1},canShrink:{type:Boolean,default:!0},title:{type:String,default:""},isHorizontal:{type:Boolean,default:!1},cardWidth:{type:String,default:"w-full"},marginClass:{type:String,default:"m-2"},disableHoverAnimation:{type:Boolean,default:!1},disableFocus:{type:Boolean,default:!1}},emits:["shrunk","expanded","focused","blurred"],setup(t,{emit:e}){const n=Ve(t.initiallyShrunk),o=Ve(!1),r=je(()=>`card-content-${Math.random().toString(36).substring(2,9)}`),i=()=>{t.canShrink&&!n.value&&(n.value=!0,e("shrunk"),o.value&&c())},s=()=>{t.canShrink&&n.value&&(n.value=!1,e("expanded"))},a=()=>{t.canShrink&&(n.value?s():i())},l=()=>{!t.disableFocus&&!o.value&&(o.value=!0,e("focused"),document.body.style.overflow="hidden")},c=()=>{o.value&&(o.value=!1,e("blurred"),document.body.style.overflow="")},u=d=>{d.key==="Escape"&&o.value&&c()};return Hr(()=>{document.addEventListener("keydown",u)}),D2(()=>{document.removeEventListener("keydown",u),o.value&&(document.body.style.overflow="")}),{isShrunkInternal:n,isActive:o,contentId:r,shrinkCard:i,expandCard:s,toggleShrink:a,focusCard:l,blurCard:c}}},NSn=["id"],DSn=["aria-expanded","aria-controls","tabindex"],ISn={key:0,class:"ml-2 text-sm"},kSn=["aria-label"];function HSn(t,e,n,o,r,i){return N(),H("div",{class:Ee(n.marginClass)},[o.isActive?(N(),H("div",{key:0,class:"overlay",onClick:e[0]||(e[0]=(...s)=>o.blurCard&&o.blurCard(...s))})):Z("",!0),Le(S("div",{id:o.contentId,class:Ee(["card-container relative border rounded-lg shadow-lg p-4 transition-all duration-300 ease-in-out",n.cardWidth,"bg-clip-padding backdrop-filter backdrop-blur-xl bg-opacity-60","border border-gray-200/30",{"bg-gray-100 dark:bg-gray-800":n.isSubcard},{"bg-white dark:bg-gray-900":!n.isSubcard},{"scale-110 z-[1001]":o.isActive},{"cursor-pointer":!n.disableFocus}]),onClick:e[4]||(e[4]=oe((...s)=>o.focusCard&&o.focusCard(...s),["self"]))},[o.isActive?(N(),H("button",{key:0,onClick:e[1]||(e[1]=(...s)=>o.blurCard&&o.blurCard(...s)),class:"absolute top-2 right-2 text-gray-700 hover:text-black dark:text-gray-300 dark:hover:text-white text-2xl leading-none z-10 transition-colors","aria-label":"Close"}," × ")):Z("",!0),n.title?(N(),H("div",{key:1,class:Ee(["flex justify-between items-center rounded-t-lg pl-3 pr-3 pt-2 pb-2 mb-3 font-bold","text-gray-800 dark:text-gray-100",{"cursor-pointer":n.canShrink}]),onClick:e[2]||(e[2]=(...s)=>o.toggleShrink&&o.toggleShrink(...s)),role:"button","aria-expanded":!o.isShrunkInternal,"aria-controls":o.contentId,tabindex:n.canShrink?0:-1,onKeydown:e[3]||(e[3]=Qn((...s)=>o.toggleShrink&&o.toggleShrink(...s),["enter","space"]))},[S("span",null,J(n.title),1),n.canShrink?(N(),H("span",ISn,J(o.isShrunkInternal?"▼":"▲"),1)):Z("",!0)],42,DSn)):Z("",!0),S("div",{class:Ee(["text-gray-700 dark:text-gray-200",{"flex flex-wrap":n.isHorizontal,"mb-2":!n.isHorizontal}])},[_n(t.$slots,"default",{},void 0,!0)],2)],10,NSn),[[An,!o.isShrunkInternal]]),n.canShrink?Le((N(),H("div",{key:1,onClick:e[5]||(e[5]=(...s)=>o.expandCard&&o.expandCard(...s)),class:Ee(["shrunk-card border rounded-lg shadow-lg p-2 text-center cursor-pointer transition-all duration-300 ease-in-out",n.cardWidth,"bg-clip-padding backdrop-filter backdrop-blur-md bg-opacity-70","border border-gray-200/30",{"bg-gray-100 dark:bg-gray-800":n.isSubcard},{"bg-white dark:bg-gray-900":!n.isSubcard},"hover:bg-opacity-80 dark:hover:bg-opacity-80",{"text-lg font-semibold text-gray-800 dark:text-gray-200":n.isSubcard},{"text-xl font-bold text-gray-800 dark:text-gray-200":!n.isSubcard}]),role:"button","aria-label":`Expand ${n.title||"Card"}`,tabindex:"0",onKeydown:e[6]||(e[6]=Qn((...s)=>o.expandCard&&o.expandCard(...s),["enter","space"]))},[Me(J(n.title||"Show Card")+" ",1),e[7]||(e[7]=S("span",{class:"text-sm"},"▼",-1))],42,kSn)),[[An,o.isShrunkInternal]]):Z("",!0)],2)}const mh=Ye(RSn,[["render",HSn],["__scopeId","data-v-c3cec55e"]]),fk="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='utf-8'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20fill='%23000000'%20width='800px'%20height='800px'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M20%203H4c-1.103%200-2%20.897-2%202v14c0%201.103.897%202%202%202h16c1.103%200%202-.897%202-2V5c0-1.103-.897-2-2-2zM4%2019V7h16l.002%2012H4z'/%3e%3cpath%20d='M9.293%209.293%205.586%2013l3.707%203.707%201.414-1.414L8.414%2013l2.293-2.293zm5.414%200-1.414%201.414L15.586%2013l-2.293%202.293%201.414%201.414L18.414%2013z'/%3e%3c/svg%3e",pk="/assets/python_block-Bt12VGEE.png",hk="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='utf-8'?%3e%3c!--%20Generator:%20Adobe%20Illustrator%2024.3.0,%20SVG%20Export%20Plug-In%20.%20SVG%20Version:%206.00%20Build%200)%20--%3e%3csvg%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%20630%20630'%20style='enable-background:new%200%200%20630%20630;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e%20.st0{fill:%23EDBF4A;}%20.st1{fill:%230C0C0C;}%20%3c/style%3e%3crect%20class='st0'%20width='630'%20height='630'/%3e%3cpath%20class='st1'%20d='M423.2,492.2c12.7,20.7,29.2,36,58.4,36c24.5,0,40.2-12.3,40.2-29.2c0-20.3-16.1-27.5-43.1-39.3l-14.8-6.4%20c-42.7-18.2-71.1-41-71.1-89.2c0-44.4,33.8-78.2,86.7-78.2c37.6,0,64.7,13.1,84.2,47.4l-46.1,29.6c-10.1-18.2-21.1-25.4-38.1-25.4%20c-17.3,0-28.3,11-28.3,25.4c0,17.8,11,25,36.4,36l14.8,6.3c50.3,21.6,78.7,43.6,78.7,93c0,53.3-41.9,82.5-98.1,82.5%20c-55,0-90.5-26.2-107.9-60.5L423.2,492.2z%20M214.1,497.3c9.3,16.5,17.8,30.5,38.1,30.5c19.5,0,31.7-7.6,31.7-37.2V289.3h59.2v202.1%20c0,61.3-35.9,89.2-88.4,89.2c-47.4,0-74.9-24.5-88.8-54.1L214.1,497.3z'/%3e%3c/svg%3e",mk="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAOeSURBVGhD7ZhNaBNBGIZHW/EPbSioRSpi0FRpVdRSjQfxkFilB5UciuChIL0JLaKIhR5KIYKIiBSF0mLVS7AIavUgPQjiT4+KB0EP3gwS8VDBgj8d33d2ZrNJt2lCppKWfeBh5pvdncyXmZ3sZokQQsIFz1JdLni8M8L6QkSNf9HMSJBIpREkUmkEiVQaQSKVRpCIH8lkUtbW1sre3l7fB9FoNCrD4fC8PaSyYyudNzU1yZGRkYJ9dXV1yUQiYTMZNX6rM5LJZERHR0fBh0/MmJDSZh4OVhOZmprStf+P1UQmJyd1zaGvr09NuxM5VFVViYmJCR3Zw1oiPT09koP00tjYKNrb23XkEIlERHV1tY7sMuNbK5XR0VGJwcnBwcGi+uns7Cz7Mz24fVnpdGhoSDY0NBTbjxweHi77MzXu+N2KBebsh7PW0tJi6/OIGr/Vm72mpkbXssTj8ZxBp9NpUV9fryN7WE0kn1QqJcfHx3U0v1hNJBQKqXtFh2JsbEx0d3frKMv09LSu2UWtMadaHm1tberxQ+9Koq6uLqff1tZW2dzcLPXviy3c8bsVG/T398+6I8ViMTkwMGDtszRq/MEfdJVGkEilESRSaZSSyCa43anmsAPGII/7wWd7nnMEbmaDD2G41anmsA76tfui9mGnWpAPkOftVpEQuyDfkMz19Bv0cg56j9NP8AQ07IXm2Es2eHgK2b5RRf6Ya7OVOchP5D1kfA0m4GX4CxouQR7/A6/DC/CObqNRSA5A00Y7oeG/JMJBM65TUS7rIV/gefw4GzzchWx/rKJsIu90+REaik6knJv9hy5vw4NO1WU/XAG/w0ds8MABk326NLyGL+A2eJYNpVBOIhd1eRS+gs/hTjYAc4M+06WX+7rkt7zKqbrc0OV5WNIjUzmJDME9MKUiIQ5DvnyshOZfCL/+l+uSz/I/narLA8gvhLsb77miKScR8haegqfhb7gBcoa4M5G4Lr0069Kck88VXZ6B+TNWEHWzONWCpCHPM78lZhkZ3kAePwa36DpthQYulwxke5INwNzst1Tk8ASa66mVXYtLgFPOc7iVroUtOh6F3Gbv6fgLXAPJVWj65vU3IW9oxl+hWWJ+iRyC5lpqJZHP0JxjbnBO+UP4F5pjXNsnoRf+IJqZpNySmRSXoMEvEeL9Iqwkwm20Cfqt12UwAleraHZCcLbHEzLz75fiUeMP3hArjUWTiHdpLWgWyYwI8Q8rrSjH5vAr6AAAAABJRU5ErkJggg==",gk="/assets/cpp_block-kkmuBJ_E.png",_k="/assets/html5_block-beC_-Wtz.png",Qk="/assets/LaTeX_block-BNFNi2yr.png",vk="/assets/bash_block-DZNRrwlz.png",PSn="data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNTAgNTAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+DQogIDxjaXJjbGUgY3g9IjI1IiBjeT0iMjUiIHI9IjI1IiBmaWxsPSJkZWVwc2t5Ymx1ZSIvPg0KICA8dGV4dCB4PSIyNSIgeT0iMzciIGZvbnQtc2l6ZT0iMzYiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGZpbGw9IndoaXRlIiBmb250LXdlaWdodD0iYm9sZCI+VDwvdGV4dD4NCjwvc3ZnPg0K",$Sn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='red'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'%3e%3c/circle%3e%3cpath%20d='M16%2016s-1.5-2-4-2-4%202-4%202'%20stroke='currentColor'%3e%3c/path%3e%3cline%20x1='9'%20y1='9'%20x2='15'%20y2='15'%20stroke='currentColor'%3e%3c/line%3e%3c/svg%3e",VSn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'%3e%3c/circle%3e%3cpath%20d='M16%2016s-1.5-2-4-2-4%202-4%202'%3e%3c/path%3e%3cline%20x1='9'%20y1='9'%20x2='15'%20y2='15'%3e%3c/line%3e%3c/svg%3e",BSn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='50'%20height='50'%20viewBox='0%200%2050%2050'%3e%3ccircle%20cx='25'%20cy='25'%20r='24'%20fill='white'%20stroke='black'%20stroke-width='2'/%3e%3ccircle%20id='heartbeat'%20cx='25'%20cy='25'%20r='20'%20fill='red'%3e%3canimate%20attributeName='r'%20dur='1s'%20repeatCount='indefinite'%20keyTimes='0;0.25;0.5;0.75;1'%20values='20;24;20;22;20'/%3e%3c/circle%3e%3c/svg%3e",FSn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='50'%20height='50'%20viewBox='0%200%2050%2050'%3e%3ccircle%20cx='25'%20cy='25'%20r='24'%20fill='white'%20stroke='black'%20stroke-width='2'/%3e%3ccircle%20cx='25'%20cy='25'%20r='20'%20fill='red'/%3e%3c/svg%3e",yk="data:image/svg+xml,%3csvg%20viewBox='0%200%2050%2050'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20transform='translate(25,25)'%3e%3ccircle%20cx='0'%20cy='-15'%20r='3'%20fill='%23f00'%3e%3canimateTransform%20attributeName='transform'%20type='rotate'%20from='0'%20to='360'%20dur='1s'%20repeatCount='indefinite'%20/%3e%3c/circle%3e%3ccircle%20cx='0'%20cy='-15'%20r='3'%20fill='%230f0'%20transform='rotate(90)'%3e%3canimateTransform%20attributeName='transform'%20type='rotate'%20from='0'%20to='360'%20dur='1.2s'%20repeatCount='indefinite'%20/%3e%3c/circle%3e%3ccircle%20cx='0'%20cy='-15'%20r='3'%20fill='%2300f'%20transform='rotate(180)'%3e%3canimateTransform%20attributeName='transform'%20type='rotate'%20from='0'%20to='360'%20dur='1.4s'%20repeatCount='indefinite'%20/%3e%3c/circle%3e%3ccircle%20cx='0'%20cy='-15'%20r='3'%20fill='%23ff0'%20transform='rotate(270)'%3e%3canimateTransform%20attributeName='transform'%20type='rotate'%20from='0'%20to='360'%20dur='1.6s'%20repeatCount='indefinite'%20/%3e%3c/circle%3e%3c/g%3e%3c/svg%3e",USn={props:{icon:{type:String,required:!0},title:{type:String,required:!0}},computed:{iconPath(){return this.getIconPath()}},methods:{emit_click(){console.log("emitting click"),this.$emit("click")},getIconPath(){switch(this.icon){case"x":return'';case"check":return'';case"code":return'';case"python":return'';case"js":return'JS';case"typescript":return'TS';case"braces":return'';case"cplusplus":case"c++":return'C++';case"csharp":return'C#';case"go":return'Go';case"r-project":return'R';case"rust":return'';case"swift":return'';case"kotlin":return'';case"java":return'';case"html5":return'';case"css3":return'';case"vuejs":return'';case"react":return'';case"angular":return'';case"xml":return'';case"json":return'';case"yaml":return'';case"markdown":return'';case"latex":return'TEX';case"bash":return'';case"powershell":return'';case"perl":return'';case"mermaid":return'';case"graphviz":return'';case"plantuml":return'';case"sql":return'';case"mongodb":return'';case"mathFunction":return'';case"terminal":return'';case"edit":return'';case"copy":return'';case"send":return'';case"globe":return'';case"fastForward":return'';case"sendSimple":return'';default:return""}}}},qSn=["title"],GSn={class:"w-6 h-6",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1","stroke-linecap":"round","stroke-linejoin":"round"},jSn=["innerHTML"];function zSn(t,e,n,o,r,i){return N(),H("button",{class:"text-lg hover:text-secondary duration-75 active:scale-90 p-2 cursor-pointer",title:n.title,onClick:e[0]||(e[0]=(...s)=>i.emit_click&&i.emit_click(...s))},[(N(),H("svg",GSn,[S("g",{innerHTML:i.iconPath},null,8,jSn)]))],8,qSn)}const gh=Ye(USn,[["render",zSn]]);var qr="top",zi="bottom",Yi="right",Gr="left",_h="auto",e6=[qr,zi,Yi,Gr],xl="start",Dc="end",YSn="clippingParents",bk="viewport",oc="popper",WSn="reference",QO=e6.reduce(function(t,e){return t.concat([e+"-"+xl,e+"-"+Dc])},[]),Ek=[].concat(e6,[_h]).reduce(function(t,e){return t.concat([e,e+"-"+xl,e+"-"+Dc])},[]),KSn="beforeRead",ZSn="read",XSn="afterRead",JSn="beforeMain",exn="main",txn="afterMain",nxn="beforeWrite",rxn="write",ixn="afterWrite",oxn=[KSn,ZSn,XSn,JSn,exn,txn,nxn,rxn,ixn];function as(t){return t?(t.nodeName||"").toLowerCase():null}function Li(t){if(t==null)return window;if(t.toString()!=="[object Window]"){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function R2(t){var e=Li(t).Element;return t instanceof e||t instanceof Element}function qi(t){var e=Li(t).HTMLElement;return t instanceof e||t instanceof HTMLElement}function Qh(t){if(typeof ShadowRoot>"u")return!1;var e=Li(t).ShadowRoot;return t instanceof e||t instanceof ShadowRoot}function sxn(t){var e=t.state;Object.keys(e.elements).forEach(function(n){var o=e.styles[n]||{},r=e.attributes[n]||{},i=e.elements[n];!qi(i)||!as(i)||(Object.assign(i.style,o),Object.keys(r).forEach(function(s){var a=r[s];a===!1?i.removeAttribute(s):i.setAttribute(s,a===!0?"":a)}))})}function axn(t){var e=t.state,n={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,n.popper),e.styles=n,e.elements.arrow&&Object.assign(e.elements.arrow.style,n.arrow),function(){Object.keys(e.elements).forEach(function(o){var r=e.elements[o],i=e.attributes[o]||{},s=Object.keys(e.styles.hasOwnProperty(o)?e.styles[o]:n[o]),a=s.reduce(function(l,c){return l[c]="",l},{});!qi(r)||!as(r)||(Object.assign(r.style,a),Object.keys(i).forEach(function(l){r.removeAttribute(l)}))})}}const lxn={name:"applyStyles",enabled:!0,phase:"write",fn:sxn,effect:axn,requires:["computeStyles"]};function is(t){return t.split("-")[0]}var L2=Math.max,C5=Math.min,Ll=Math.round;function Pf(){var t=navigator.userAgentData;return t!=null&&t.brands&&Array.isArray(t.brands)?t.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function Sk(){return!/^((?!chrome|android).)*safari/i.test(Pf())}function Cl(t,e,n){e===void 0&&(e=!1),n===void 0&&(n=!1);var o=t.getBoundingClientRect(),r=1,i=1;e&&qi(t)&&(r=t.offsetWidth>0&&Ll(o.width)/t.offsetWidth||1,i=t.offsetHeight>0&&Ll(o.height)/t.offsetHeight||1);var s=R2(t)?Li(t):window,a=s.visualViewport,l=!Sk()&&n,c=(o.left+(l&&a?a.offsetLeft:0))/r,u=(o.top+(l&&a?a.offsetTop:0))/i,d=o.width/r,f=o.height/i;return{width:d,height:f,top:u,right:c+d,bottom:u+f,left:c,x:c,y:u}}function vh(t){var e=Cl(t),n=t.offsetWidth,o=t.offsetHeight;return Math.abs(e.width-n)<=1&&(n=e.width),Math.abs(e.height-o)<=1&&(o=e.height),{x:t.offsetLeft,y:t.offsetTop,width:n,height:o}}function xk(t,e){var n=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(n&&Qh(n)){var o=e;do{if(o&&t.isSameNode(o))return!0;o=o.parentNode||o.host}while(o)}return!1}function b1(t){return Li(t).getComputedStyle(t)}function cxn(t){return["table","td","th"].indexOf(as(t))>=0}function ra(t){return((R2(t)?t.ownerDocument:t.document)||window.document).documentElement}function E0(t){return as(t)==="html"?t:t.assignedSlot||t.parentNode||(Qh(t)?t.host:null)||ra(t)}function vO(t){return!qi(t)||b1(t).position==="fixed"?null:t.offsetParent}function uxn(t){var e=/firefox/i.test(Pf()),n=/Trident/i.test(Pf());if(n&&qi(t)){var o=b1(t);if(o.position==="fixed")return null}var r=E0(t);for(Qh(r)&&(r=r.host);qi(r)&&["html","body"].indexOf(as(r))<0;){var i=b1(r);if(i.transform!=="none"||i.perspective!=="none"||i.contain==="paint"||["transform","perspective"].indexOf(i.willChange)!==-1||e&&i.willChange==="filter"||e&&i.filter&&i.filter!=="none")return r;r=r.parentNode}return null}function t6(t){for(var e=Li(t),n=vO(t);n&&cxn(n)&&b1(n).position==="static";)n=vO(n);return n&&(as(n)==="html"||as(n)==="body"&&b1(n).position==="static")?e:n||uxn(t)||e}function yh(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function _c(t,e,n){return L2(t,C5(e,n))}function dxn(t,e,n){var o=_c(t,e,n);return o>n?n:o}function Lk(){return{top:0,right:0,bottom:0,left:0}}function Ck(t){return Object.assign({},Lk(),t)}function Ak(t,e){return e.reduce(function(n,o){return n[o]=t,n},{})}var Txn=function(e,n){return e=typeof e=="function"?e(Object.assign({},n.rects,{placement:n.placement})):e,Ck(typeof e!="number"?e:Ak(e,e6))};function fxn(t){var e,n=t.state,o=t.name,r=t.options,i=n.elements.arrow,s=n.modifiersData.popperOffsets,a=is(n.placement),l=yh(a),c=[Gr,Yi].indexOf(a)>=0,u=c?"height":"width";if(!(!i||!s)){var d=Txn(r.padding,n),f=vh(i),T=l==="y"?qr:Gr,h=l==="y"?zi:Yi,g=n.rects.reference[u]+n.rects.reference[l]-s[l]-n.rects.popper[u],Q=s[l]-n.rects.reference[l],m=t6(i),_=m?l==="y"?m.clientHeight||0:m.clientWidth||0:0,v=g/2-Q/2,b=d[T],y=_-f[u]-d[h],E=_/2-f[u]/2+v,x=_c(b,E,y),L=l;n.modifiersData[o]=(e={},e[L]=x,e.centerOffset=x-E,e)}}function pxn(t){var e=t.state,n=t.options,o=n.element,r=o===void 0?"[data-popper-arrow]":o;r!=null&&(typeof r=="string"&&(r=e.elements.popper.querySelector(r),!r)||xk(e.elements.popper,r)&&(e.elements.arrow=r))}const hxn={name:"arrow",enabled:!0,phase:"main",fn:fxn,effect:pxn,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Al(t){return t.split("-")[1]}var mxn={top:"auto",right:"auto",bottom:"auto",left:"auto"};function gxn(t,e){var n=t.x,o=t.y,r=e.devicePixelRatio||1;return{x:Ll(n*r)/r||0,y:Ll(o*r)/r||0}}function yO(t){var e,n=t.popper,o=t.popperRect,r=t.placement,i=t.variation,s=t.offsets,a=t.position,l=t.gpuAcceleration,c=t.adaptive,u=t.roundOffsets,d=t.isFixed,f=s.x,T=f===void 0?0:f,h=s.y,g=h===void 0?0:h,Q=typeof u=="function"?u({x:T,y:g}):{x:T,y:g};T=Q.x,g=Q.y;var m=s.hasOwnProperty("x"),_=s.hasOwnProperty("y"),v=Gr,b=qr,y=window;if(c){var E=t6(n),x="clientHeight",L="clientWidth";if(E===Li(n)&&(E=ra(n),b1(E).position!=="static"&&a==="absolute"&&(x="scrollHeight",L="scrollWidth")),E=E,r===qr||(r===Gr||r===Yi)&&i===Dc){b=zi;var C=d&&E===y&&y.visualViewport?y.visualViewport.height:E[x];g-=C-o.height,g*=l?1:-1}if(r===Gr||(r===qr||r===zi)&&i===Dc){v=Yi;var A=d&&E===y&&y.visualViewport?y.visualViewport.width:E[L];T-=A-o.width,T*=l?1:-1}}var O=Object.assign({position:a},c&&mxn),R=u===!0?gxn({x:T,y:g},Li(n)):{x:T,y:g};if(T=R.x,g=R.y,l){var I;return Object.assign({},O,(I={},I[b]=_?"0":"",I[v]=m?"0":"",I.transform=(y.devicePixelRatio||1)<=1?"translate("+T+"px, "+g+"px)":"translate3d("+T+"px, "+g+"px, 0)",I))}return Object.assign({},O,(e={},e[b]=_?g+"px":"",e[v]=m?T+"px":"",e.transform="",e))}function _xn(t){var e=t.state,n=t.options,o=n.gpuAcceleration,r=o===void 0?!0:o,i=n.adaptive,s=i===void 0?!0:i,a=n.roundOffsets,l=a===void 0?!0:a,c={placement:is(e.placement),variation:Al(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:r,isFixed:e.options.strategy==="fixed"};e.modifiersData.popperOffsets!=null&&(e.styles.popper=Object.assign({},e.styles.popper,yO(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:s,roundOffsets:l})))),e.modifiersData.arrow!=null&&(e.styles.arrow=Object.assign({},e.styles.arrow,yO(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})}const Qxn={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:_xn,data:{}};var M6={passive:!0};function vxn(t){var e=t.state,n=t.instance,o=t.options,r=o.scroll,i=r===void 0?!0:r,s=o.resize,a=s===void 0?!0:s,l=Li(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return i&&c.forEach(function(u){u.addEventListener("scroll",n.update,M6)}),a&&l.addEventListener("resize",n.update,M6),function(){i&&c.forEach(function(u){u.removeEventListener("scroll",n.update,M6)}),a&&l.removeEventListener("resize",n.update,M6)}}const yxn={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:vxn,data:{}};var bxn={left:"right",right:"left",bottom:"top",top:"bottom"};function e5(t){return t.replace(/left|right|bottom|top/g,function(e){return bxn[e]})}var Exn={start:"end",end:"start"};function bO(t){return t.replace(/start|end/g,function(e){return Exn[e]})}function bh(t){var e=Li(t),n=e.pageXOffset,o=e.pageYOffset;return{scrollLeft:n,scrollTop:o}}function Eh(t){return Cl(ra(t)).left+bh(t).scrollLeft}function Sxn(t,e){var n=Li(t),o=ra(t),r=n.visualViewport,i=o.clientWidth,s=o.clientHeight,a=0,l=0;if(r){i=r.width,s=r.height;var c=Sk();(c||!c&&e==="fixed")&&(a=r.offsetLeft,l=r.offsetTop)}return{width:i,height:s,x:a+Eh(t),y:l}}function xxn(t){var e,n=ra(t),o=bh(t),r=(e=t.ownerDocument)==null?void 0:e.body,i=L2(n.scrollWidth,n.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),s=L2(n.scrollHeight,n.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),a=-o.scrollLeft+Eh(t),l=-o.scrollTop;return b1(r||n).direction==="rtl"&&(a+=L2(n.clientWidth,r?r.clientWidth:0)-i),{width:i,height:s,x:a,y:l}}function Sh(t){var e=b1(t),n=e.overflow,o=e.overflowX,r=e.overflowY;return/auto|scroll|overlay|hidden/.test(n+r+o)}function wk(t){return["html","body","#document"].indexOf(as(t))>=0?t.ownerDocument.body:qi(t)&&Sh(t)?t:wk(E0(t))}function Qc(t,e){var n;e===void 0&&(e=[]);var o=wk(t),r=o===((n=t.ownerDocument)==null?void 0:n.body),i=Li(o),s=r?[i].concat(i.visualViewport||[],Sh(o)?o:[]):o,a=e.concat(s);return r?a:a.concat(Qc(E0(s)))}function $f(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function Lxn(t,e){var n=Cl(t,!1,e==="fixed");return n.top=n.top+t.clientTop,n.left=n.left+t.clientLeft,n.bottom=n.top+t.clientHeight,n.right=n.left+t.clientWidth,n.width=t.clientWidth,n.height=t.clientHeight,n.x=n.left,n.y=n.top,n}function EO(t,e,n){return e===bk?$f(Sxn(t,n)):R2(e)?Lxn(e,n):$f(xxn(ra(t)))}function Cxn(t){var e=Qc(E0(t)),n=["absolute","fixed"].indexOf(b1(t).position)>=0,o=n&&qi(t)?t6(t):t;return R2(o)?e.filter(function(r){return R2(r)&&xk(r,o)&&as(r)!=="body"}):[]}function Axn(t,e,n,o){var r=e==="clippingParents"?Cxn(t):[].concat(e),i=[].concat(r,[n]),s=i[0],a=i.reduce(function(l,c){var u=EO(t,c,o);return l.top=L2(u.top,l.top),l.right=C5(u.right,l.right),l.bottom=C5(u.bottom,l.bottom),l.left=L2(u.left,l.left),l},EO(t,s,o));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function Ok(t){var e=t.reference,n=t.element,o=t.placement,r=o?is(o):null,i=o?Al(o):null,s=e.x+e.width/2-n.width/2,a=e.y+e.height/2-n.height/2,l;switch(r){case qr:l={x:s,y:e.y-n.height};break;case zi:l={x:s,y:e.y+e.height};break;case Yi:l={x:e.x+e.width,y:a};break;case Gr:l={x:e.x-n.width,y:a};break;default:l={x:e.x,y:e.y}}var c=r?yh(r):null;if(c!=null){var u=c==="y"?"height":"width";switch(i){case xl:l[c]=l[c]-(e[u]/2-n[u]/2);break;case Dc:l[c]=l[c]+(e[u]/2-n[u]/2);break}}return l}function Ic(t,e){e===void 0&&(e={});var n=e,o=n.placement,r=o===void 0?t.placement:o,i=n.strategy,s=i===void 0?t.strategy:i,a=n.boundary,l=a===void 0?YSn:a,c=n.rootBoundary,u=c===void 0?bk:c,d=n.elementContext,f=d===void 0?oc:d,T=n.altBoundary,h=T===void 0?!1:T,g=n.padding,Q=g===void 0?0:g,m=Ck(typeof Q!="number"?Q:Ak(Q,e6)),_=f===oc?WSn:oc,v=t.rects.popper,b=t.elements[h?_:f],y=Axn(R2(b)?b:b.contextElement||ra(t.elements.popper),l,u,s),E=Cl(t.elements.reference),x=Ok({reference:E,element:v,placement:r}),L=$f(Object.assign({},v,x)),C=f===oc?L:E,A={top:y.top-C.top+m.top,bottom:C.bottom-y.bottom+m.bottom,left:y.left-C.left+m.left,right:C.right-y.right+m.right},O=t.modifiersData.offset;if(f===oc&&O){var R=O[r];Object.keys(A).forEach(function(I){var M=[Yi,zi].indexOf(I)>=0?1:-1,$=[qr,zi].indexOf(I)>=0?"y":"x";A[I]+=R[$]*M})}return A}function wxn(t,e){e===void 0&&(e={});var n=e,o=n.placement,r=n.boundary,i=n.rootBoundary,s=n.padding,a=n.flipVariations,l=n.allowedAutoPlacements,c=l===void 0?Ek:l,u=Al(o),d=u?a?QO:QO.filter(function(h){return Al(h)===u}):e6,f=d.filter(function(h){return c.indexOf(h)>=0});f.length===0&&(f=d);var T=f.reduce(function(h,g){return h[g]=Ic(t,{placement:g,boundary:r,rootBoundary:i,padding:s})[is(g)],h},{});return Object.keys(T).sort(function(h,g){return T[h]-T[g]})}function Oxn(t){if(is(t)===_h)return[];var e=e5(t);return[bO(t),e,bO(e)]}function Mxn(t){var e=t.state,n=t.options,o=t.name;if(!e.modifiersData[o]._skip){for(var r=n.mainAxis,i=r===void 0?!0:r,s=n.altAxis,a=s===void 0?!0:s,l=n.fallbackPlacements,c=n.padding,u=n.boundary,d=n.rootBoundary,f=n.altBoundary,T=n.flipVariations,h=T===void 0?!0:T,g=n.allowedAutoPlacements,Q=e.options.placement,m=is(Q),_=m===Q,v=l||(_||!h?[e5(Q)]:Oxn(Q)),b=[Q].concat(v).reduce(function(j,ue){return j.concat(is(ue)===_h?wxn(e,{placement:ue,boundary:u,rootBoundary:d,padding:c,flipVariations:h,allowedAutoPlacements:g}):ue)},[]),y=e.rects.reference,E=e.rects.popper,x=new Map,L=!0,C=b[0],A=0;A=0,$=M?"width":"height",U=Ic(e,{placement:O,boundary:u,rootBoundary:d,altBoundary:f,padding:c}),G=M?I?Yi:Gr:I?zi:qr;y[$]>E[$]&&(G=e5(G));var P=e5(G),F=[];if(i&&F.push(U[R]<=0),a&&F.push(U[G]<=0,U[P]<=0),F.every(function(j){return j})){C=O,L=!1;break}x.set(O,F)}if(L)for(var B=h?3:1,q=function(ue){var pe=b.find(function(z){var te=x.get(z);if(te)return te.slice(0,ue).every(function(ae){return ae})});if(pe)return C=pe,"break"},ee=B;ee>0;ee--){var K=q(ee);if(K==="break")break}e.placement!==C&&(e.modifiersData[o]._skip=!0,e.placement=C,e.reset=!0)}}const Rxn={name:"flip",enabled:!0,phase:"main",fn:Mxn,requiresIfExists:["offset"],data:{_skip:!1}};function SO(t,e,n){return n===void 0&&(n={x:0,y:0}),{top:t.top-e.height-n.y,right:t.right-e.width+n.x,bottom:t.bottom-e.height+n.y,left:t.left-e.width-n.x}}function xO(t){return[qr,Yi,zi,Gr].some(function(e){return t[e]>=0})}function Nxn(t){var e=t.state,n=t.name,o=e.rects.reference,r=e.rects.popper,i=e.modifiersData.preventOverflow,s=Ic(e,{elementContext:"reference"}),a=Ic(e,{altBoundary:!0}),l=SO(s,o),c=SO(a,r,i),u=xO(l),d=xO(c);e.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:u,hasPopperEscaped:d},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}const Dxn={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Nxn};function Ixn(t,e,n){var o=is(t),r=[Gr,qr].indexOf(o)>=0?-1:1,i=typeof n=="function"?n(Object.assign({},e,{placement:t})):n,s=i[0],a=i[1];return s=s||0,a=(a||0)*r,[Gr,Yi].indexOf(o)>=0?{x:a,y:s}:{x:s,y:a}}function kxn(t){var e=t.state,n=t.options,o=t.name,r=n.offset,i=r===void 0?[0,0]:r,s=Ek.reduce(function(u,d){return u[d]=Ixn(d,e.rects,i),u},{}),a=s[e.placement],l=a.x,c=a.y;e.modifiersData.popperOffsets!=null&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=c),e.modifiersData[o]=s}const Hxn={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:kxn};function Pxn(t){var e=t.state,n=t.name;e.modifiersData[n]=Ok({reference:e.rects.reference,element:e.rects.popper,placement:e.placement})}const $xn={name:"popperOffsets",enabled:!0,phase:"read",fn:Pxn,data:{}};function Vxn(t){return t==="x"?"y":"x"}function Bxn(t){var e=t.state,n=t.options,o=t.name,r=n.mainAxis,i=r===void 0?!0:r,s=n.altAxis,a=s===void 0?!1:s,l=n.boundary,c=n.rootBoundary,u=n.altBoundary,d=n.padding,f=n.tether,T=f===void 0?!0:f,h=n.tetherOffset,g=h===void 0?0:h,Q=Ic(e,{boundary:l,rootBoundary:c,padding:d,altBoundary:u}),m=is(e.placement),_=Al(e.placement),v=!_,b=yh(m),y=Vxn(b),E=e.modifiersData.popperOffsets,x=e.rects.reference,L=e.rects.popper,C=typeof g=="function"?g(Object.assign({},e.rects,{placement:e.placement})):g,A=typeof C=="number"?{mainAxis:C,altAxis:C}:Object.assign({mainAxis:0,altAxis:0},C),O=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,R={x:0,y:0};if(E){if(i){var I,M=b==="y"?qr:Gr,$=b==="y"?zi:Yi,U=b==="y"?"height":"width",G=E[b],P=G+Q[M],F=G-Q[$],B=T?-L[U]/2:0,q=_===xl?x[U]:L[U],ee=_===xl?-L[U]:-x[U],K=e.elements.arrow,j=T&&K?vh(K):{width:0,height:0},ue=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:Lk(),pe=ue[M],z=ue[$],te=_c(0,x[U],j[U]),ae=v?x[U]/2-B-te-pe-A.mainAxis:q-te-pe-A.mainAxis,fe=v?-x[U]/2+B+te+z+A.mainAxis:ee+te+z+A.mainAxis,Qe=e.elements.arrow&&t6(e.elements.arrow),Y=Qe?b==="y"?Qe.clientTop||0:Qe.clientLeft||0:0,W=(I=O==null?void 0:O[b])!=null?I:0,X=G+ae-W-Y,se=G+fe-W,le=_c(T?C5(P,X):P,G,T?L2(F,se):F);E[b]=le,R[b]=le-G}if(a){var de,Te=b==="x"?qr:Gr,ge=b==="x"?zi:Yi,_e=E[y],ve=y==="y"?"height":"width",$e=_e+Q[Te],be=_e-Q[ge],Ne=[qr,Gr].indexOf(m)!==-1,Be=(de=O==null?void 0:O[y])!=null?de:0,Ue=Ne?$e:_e-x[ve]-L[ve]-Be+A.altAxis,ct=Ne?_e+x[ve]+L[ve]-Be-A.altAxis:be,at=T&&Ne?dxn(Ue,_e,ct):_c(T?Ue:$e,_e,T?ct:be);E[y]=at,R[y]=at-_e}e.modifiersData[o]=R}}const Fxn={name:"preventOverflow",enabled:!0,phase:"main",fn:Bxn,requiresIfExists:["offset"]};function Uxn(t){return{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}}function qxn(t){return t===Li(t)||!qi(t)?bh(t):Uxn(t)}function Gxn(t){var e=t.getBoundingClientRect(),n=Ll(e.width)/t.offsetWidth||1,o=Ll(e.height)/t.offsetHeight||1;return n!==1||o!==1}function jxn(t,e,n){n===void 0&&(n=!1);var o=qi(e),r=qi(e)&&Gxn(e),i=ra(e),s=Cl(t,r,n),a={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(o||!o&&!n)&&((as(e)!=="body"||Sh(i))&&(a=qxn(e)),qi(e)?(l=Cl(e,!0),l.x+=e.clientLeft,l.y+=e.clientTop):i&&(l.x=Eh(i))),{x:s.left+a.scrollLeft-l.x,y:s.top+a.scrollTop-l.y,width:s.width,height:s.height}}function zxn(t){var e=new Map,n=new Set,o=[];t.forEach(function(i){e.set(i.name,i)});function r(i){n.add(i.name);var s=[].concat(i.requires||[],i.requiresIfExists||[]);s.forEach(function(a){if(!n.has(a)){var l=e.get(a);l&&r(l)}}),o.push(i)}return t.forEach(function(i){n.has(i.name)||r(i)}),o}function Yxn(t){var e=zxn(t);return oxn.reduce(function(n,o){return n.concat(e.filter(function(r){return r.phase===o}))},[])}function Wxn(t){var e;return function(){return e||(e=new Promise(function(n){Promise.resolve().then(function(){e=void 0,n(t())})})),e}}function Kxn(t){var e=t.reduce(function(n,o){var r=n[o.name];return n[o.name]=r?Object.assign({},r,o,{options:Object.assign({},r.options,o.options),data:Object.assign({},r.data,o.data)}):o,n},{});return Object.keys(e).map(function(n){return e[n]})}var LO={placement:"bottom",modifiers:[],strategy:"absolute"};function CO(){for(var t=arguments.length,e=new Array(t),n=0;n{this.createPopper()})},closeMenu(t){var e;!this.$el.contains(t.target)&&!((e=this.$refs.dropdown)!=null&&e.contains(t.target))&&(this.isOpen=!1)},createPopper(){const t=this.$el.querySelector("button"),e=this.$refs.dropdown;t&&e&&(this.popperInstance=S0(t,e,{placement:"bottom-end",modifiers:[{name:"flip",options:{fallbackPlacements:["top-end","bottom-start","top-start"]}},{name:"preventOverflow",options:{boundary:document.body}}]}))}}},eLn={class:"relative inline-block text-left"},tLn={key:0,ref:"dropdown",class:"z-50 w-56 rounded-md shadow-lg bg-white dark:bg-gray-800 ring-1 ring-black ring-opacity-5 dark:ring-white dark:ring-opacity-20 focus:outline-none dropdown-shadow text-gray-700 dark:text-white"},nLn={class:"py-1",role:"menu","aria-orientation":"vertical","aria-labelledby":"options-menu"};function rLn(t,e,n,o,r,i){const s=ze("ToolbarButton");return N(),H("div",eLn,[S("div",null,[ne(s,{onClick:oe(i.toggleMenu,["stop"]),title:n.title,icon:"code"},null,8,["onClick","title"])]),(N(),ot(WP,{to:"body"},[r.isOpen?(N(),H("div",tLn,[S("div",nLn,[_n(t.$slots,"default",{},void 0,!0)])],512)):Z("",!0)]))])}const Mk=Ye(Jxn,[["render",rLn],["__scopeId","data-v-6c3ea3a5"]]);async function AO(t,e="",n=[]){return new Promise((o,r)=>{const i=document.createElement("div");i.className="fixed inset-0 flex items-center justify-center bg-black bg-opacity-50 z-50",n.length===0?i.innerHTML=`

${t}

@@ -244,33 +244,33 @@ Please report this to https://github.com/markedjs/marked.`,e){const r="

An err `?(this.text=this.text.slice(0,e)+"```"+t+` `+this.text.slice(e,n)+"\n```\n"+this.text.slice(n),e=e+4+t.length):(this.text=this.text.slice(0,e)+"\n```"+t+` `+this.text.slice(e,n)+"\n```\n"+this.text.slice(n),e=e+3+t.length),this.$refs.mdTextarea.focus(),this.$refs.mdTextarea.selectionStart=this.$refs.mdTextarea.selectionEnd=p},insertTab(t){const e=t.target,n=e.selectionStart,o=e.selectionEnd,r=e.value.substring(0,n),i=e.value.substring(o),s=r+" "+i;this.text=s,this.$nextTick(()=>{e.selectionStart=e.selectionEnd=n+4}),t.preventDefault()},mdTextarea_changed(){console.log("mdTextarea_changed"),this.cursorPosition=this.$refs.mdTextarea.selectionStart},mdTextarea_clicked(){console.log(`mdTextarea_clicked: ${this.$refs.mdTextarea.selectionStart}`),this.cursorPosition=this.$refs.mdTextarea.selectionStart},setModel(){this.selecting_model=!0,ce.post("/update_setting",{client_id:this.$store.state.client_id,setting_name:"model_name",setting_value:this.selectedModel}).then(t=>{console.log(t),t.status&&this.$refs.toast.showToast(`Model changed to ${this.selectedModel}`,4,!0),this.selecting_model=!1}).catch(t=>{this.$refs.toast.showToast(`Error ${t}`,4,!0),this.selecting_model=!1})},onVoicesChanged(){this.voices=this.speechSynthesis.getVoices()},read(){console.log("READING..."),this.isSynthesizingVoice=!0;let t=this.$refs.mdTextarea.selectionStart,e=this.$refs.mdTextarea.selectionEnd,n=this.text;t!=e&&(n=n.slice(t,e)),ce.post("./text2Wave",{client_id:this.$store.state.client_id,text:n}).then(o=>{console.log(o.data.url);let r=o.data.url;this.audio_url=r,this.isSynthesizingVoice=!1,Se(()=>{Ce.replace()})}).catch(o=>{this.$refs.toast.showToast(`Error: ${o}`,4,!1),this.isSynthesizingVoice=!1,Se(()=>{Ce.replace()})})},speak(){if(this.msg){this.speechSynthesis.cancel(),this.msg=null,this.isSpeaking=!1;return}let t=0;console.log("voice on"),this.isSpeaking=!0;const e=200;this.msg=new SpeechSynthesisUtterance,this.msg.pitch=this.$store.state.config.audio_pitch,this.voices.length>0&&(this.msg.voice=this.voices.filter(r=>r.name===this.$store.state.config.audio_out_voice)[0]);const n=r=>{let i=this.text.substring(r,r+e);const s=[".","!","?",` -`];let a=-1;return s.forEach(l=>{const c=i.lastIndexOf(l);c>a&&(a=c)}),a==-1&&(a=i.length),console.log(a),a+r+1},o=()=>{const r=n(t),i=this.text.substring(t,r);this.msg.text=i,t=r+1,this.msg.onend=s=>{t{o()},1):(this.isSpeaking=!1,console.log("voice off :",this.text.length," ",r))},this.speechSynthesis.speak(this.msg)};o()},getCursorPosition(){return this.$refs.mdTextarea.selectionStart},appendToOutput(t){this.pre_text+=t,this.text=this.pre_text+this.post_text},generate_in_placeholder(){console.log("Finding cursor position");let t=this.text.indexOf("@@");if(t<0){this.$refs.toast.showToast("No generation placeholder found",4,!1);return}this.text=this.text.substring(0,t)+this.text.substring(t+26,this.text.length),this.pre_text=this.text.substring(0,t),this.post_text=this.text.substring(t,this.text.length);var e=this.text.substring(0,t);console.log(e),Ze.emit("generate_text",{prompt:e,personality:-1,n_predicts:this.n_predicts,n_crop:this.n_crop,parameters:{temperature:this.temperature,top_k:this.top_k,top_p:this.top_p,repeat_penalty:this.repeat_penalty,repeat_last_n:this.repeat_last_n,seed:parseInt(this.seed)}}),this.generating=!0},async tokenize_text(){const t=await ce.post("/lollms_tokenize",{prompt:this.text,return_named:!0},{headers:this.posts_headers});console.log(t.data),this.namedTokens=t.data},generate(){console.log("Finding cursor position"),this.pre_text=this.text.substring(0,this.getCursorPosition()),this.post_text=this.text.substring(this.getCursorPosition(),this.text.length);var t=this.text.substring(0,this.getCursorPosition());console.log(this.text),console.log(`cursor position :${this.getCursorPosition()}`),console.log(`pretext:${this.pre_text}`),console.log(`post_text:${this.post_text}`),console.log(`prompt:${t}`),Ze.emit("generate_text",{prompt:t,personality:-1,n_predicts:this.n_predicts,n_crop:this.n_crop,parameters:{temperature:this.temperature,top_k:this.top_k,top_p:this.top_p,repeat_penalty:this.repeat_penalty,repeat_last_n:this.repeat_last_n,seed:parseInt(this.seed)}}),this.generating=!0},stopGeneration(){Ze.emit("cancel_text_generation",{})},exportText(){const t=this.text,e=document.createElement("a"),n=new Blob([t],{type:"text/plain"});e.href=URL.createObjectURL(n),e.download="exported_text.txt",document.body.appendChild(e),e.click(),document.body.removeChild(e)},importText(){const t=document.getElementById("import-input");t&&(t.addEventListener("change",e=>{if(e.target.files&&e.target.files[0]){const n=new FileReader;n.onload=()=>{this.text=n.result},n.readAsText(e.target.files[0])}else alert("Please select a file.")}),t.click())},setPreset(){console.log("Setting preset"),console.log(this.selectedPreset),this.tab_id="render",this.text=iLn(this.selectedPreset.content,t=>{console.log("Done"),console.log(t),this.text=t})},addPreset(){let t=prompt("Enter the title of the preset:");this.presets[t]={client_id:this.$store.state.client_id,name:t,content:this.text},ce.post("./add_preset",this.presets[t]).then(e=>{console.log(e.data)}).catch(e=>{this.$refs.toast.showToast(`Error: ${e}`,4,!1)})},removePreset(){this.selectedPreset&&delete this.presets[this.selectedPreset.name]},reloadPresets(){ce.get("./get_presets").then(t=>{console.log(t.data),this.presets=t.data,this.selectedPreset=this.presets[0]}).catch(t=>{this.$refs.toast.showToast(`Error: ${t}`,4,!1)})},startRecording(){this.pending=!0,this.is_recording?ce.post("/stop_recording",{client_id:this.$store.state.client_id}).then(t=>{this.is_recording=!1,this.pending=!1,console.log(t),this.text+=t.data,console.log("text"),console.log(this.text),console.log(t.data),this.presets=t.data,this.selectedPreset=this.presets[0]}).catch(t=>{this.$refs.toast.showToast(`Error: ${t}`,4,!1)}):ce.post("/start_recording",{client_id:this.$store.state.client_id}).then(t=>{this.is_recording=!0,this.pending=!1,console.log(t.data)}).catch(t=>{this.$refs.toast.showToast(`Error: ${t}`,4,!1)})},startRecordingAndTranscribing(){this.pending=!0,this.is_deaf_transcribing?ce.get("/stop_recording").then(t=>{this.is_deaf_transcribing=!1,this.pending=!1,this.text=t.data.text,this.read()}).catch(t=>{this.$refs.toast.showToast(`Error: ${t}`,4,!1)}):ce.get("/start_recording").then(t=>{this.is_deaf_transcribing=!0,this.pending=!1}).catch(t=>{this.$refs.toast.showToast(`Error: ${t}`,4,!1)})},startSpeechRecognition(){"SpeechRecognition"in window||"webkitSpeechRecognition"in window?(this.recognition=new(window.SpeechRecognition||window.webkitSpeechRecognition),this.recognition.lang=this.$store.state.config.audio_in_language,this.recognition.interimResults=!0,this.recognition.onstart=()=>{this.isLesteningToVoice=!0,this.silenceTimer=setTimeout(()=>{this.recognition.stop()},this.silenceTimeout)},this.pre_text=this.text.substring(0,this.getCursorPosition()),this.post_text=this.text.substring(this.getCursorPosition(),this.text.length),this.recognition.onresult=t=>{this.generated="";for(let e=t.resultIndex;e{this.recognition.stop()},this.silenceTimeout)},this.recognition.onerror=t=>{console.error("Speech recognition error:",t.error),this.isLesteningToVoice=!1,clearTimeout(this.silenceTimer)},this.recognition.onend=()=>{console.log("Speech recognition ended."),this.isLesteningToVoice=!1,this.pre_text=this.pre_text+this.generated,this.cursorPosition=this.pre_text.length,clearTimeout(this.silenceTimer)},this.recognition.start()):console.error("Speech recognition is not supported in this browser.")}}},sLn={class:"container w-full background-color shadow-lg overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"},aLn={class:"container flex flex-row m-2 w-full"},lLn={class:"flex-grow w-full m-2"},cLn={class:"flex panels-color gap-3 flex-1 items-center flex-grow flex-row rounded-md border-2 border-blue-300 m-2 p-4"},uLn={class:"flex items-center space-x-2"},dLn=["src"],TLn=["src"],fLn=["src"],pLn=["src"],hLn=["src"],mLn={key:1,class:"w-6 h-6"},gLn={class:"flex gap-3 flex-1 items-center flex-grow justify-end"},_Ln={key:0},QLn=["src"],vLn={key:2},yLn={key:0,class:"settings scrollbar bg-white dark:bg-gray-800 rounded-lg shadow-md p-6"},bLn=["value"],ELn={key:0,title:"Selecting model",class:"flex flex-row flex-grow justify-end"},SLn=["value"],xLn={class:"slider-container ml-2 mr-2"},LLn={class:"slider-value text-gray-500"},CLn={class:"slider-container ml-2 mr-2"},ALn={class:"slider-value text-gray-500"},wLn={class:"slider-container ml-2 mr-2"},OLn={class:"slider-value text-gray-500"},MLn={class:"slider-container ml-2 mr-2"},RLn={class:"slider-value text-gray-500"},NLn={class:"slider-container ml-2 mr-2"},DLn={class:"slider-value text-gray-500"},ILn={class:"slider-container ml-2 mr-2"},kLn={class:"slider-value text-gray-500"},HLn={class:"slider-container ml-2 mr-2"},PLn={class:"slider-value text-gray-500"},$Ln={class:"slider-container ml-2 mr-2"},VLn={class:"slider-value text-gray-500"};function BLn(t,e,n,o,r,i){const s=ze("ChatBarButton"),a=ze("ToolbarButton"),l=ze("DropdownSubmenu"),c=ze("DropdownMenu"),u=ze("tokens-hilighter"),d=ze("MarkdownRenderer"),f=ze("Card"),T=ze("Toast");return N(),H(xe,null,[S("div",sLn,[S("div",aLn,[S("div",lLn,[S("div",cLn,[S("div",uLn,[Le(ne(s,{onClick:i.generate,title:"Generate from the current cursor position"},{icon:Ge(()=>e[54]||(e[54]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z"})],-1)])),_:1},8,["onClick"]),[[An,!r.generating]]),Le(ne(s,{onClick:i.generate_in_placeholder,title:"Generate from the next placeholder"},{icon:Ge(()=>e[55]||(e[55]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 8h14M5 8a2 2 0 110-4h14a2 2 0 110 4M5 8v10a2 2 0 002 2h10a2 2 0 002-2V8m-9 4h4"})],-1)])),_:1},8,["onClick"]),[[An,!r.generating]]),Le(ne(s,{onClick:i.tokenize_text,title:"Tokenize the text"},{icon:Ge(()=>[S("img",{src:r.tokenize_icon,alt:"Tokenize",class:"h-5 w-5"},null,8,dLn)]),_:1},8,["onClick"]),[[An,!r.generating]]),e[65]||(e[65]=S("span",{class:"w-80"},null,-1)),Le(ne(s,{onClick:i.stopGeneration,title:"Stop generation"},{icon:Ge(()=>e[56]||(e[56]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])),_:1},8,["onClick"]),[[An,r.generating]]),ne(s,{onClick:i.startSpeechRecognition,class:Ee({"text-red-500":t.isListeningToVoice}),title:"Dictate (using your browser's transcription)"},{icon:Ge(()=>e[57]||(e[57]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z"})],-1)])),_:1},8,["onClick","class"]),ne(s,{onClick:i.speak,class:Ee({"text-red-500":i.isTalking}),title:"Convert text to audio (not saved, uses your browser's TTS service)"},{icon:Ge(()=>e[58]||(e[58]=[Re(" 🪶 ")])),_:1},8,["onClick","class"]),ne(s,{onClick:i.triggerFileUpload,title:"Upload a voice"},{icon:Ge(()=>e[59]||(e[59]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z"})],-1)])),_:1},8,["onClick"]),ne(s,{onClick:i.startRecordingAndTranscribing,class:Ee({"text-green-500":r.isLesteningToVoice}),title:"Start audio to audio"},{icon:Ge(()=>[r.pending?(N(),H("img",{key:1,src:r.loading_icon,alt:"Loading",class:"h-5 w-5"},null,8,fLn)):(N(),H("img",{key:0,src:r.is_deaf_transcribing?r.deaf_on:r.deaf_off,alt:"Deaf",class:"h-5 w-5"},null,8,TLn))]),_:1},8,["onClick","class"]),ne(s,{onClick:i.startRecording,class:Ee({"text-green-500":r.isLesteningToVoice}),title:"Start audio recording"},{icon:Ge(()=>[r.pending?(N(),H("img",{key:1,src:r.loading_icon,alt:"Loading",class:"h-5 w-5"},null,8,hLn)):(N(),H("img",{key:0,src:r.is_recording?r.rec_on:r.rec_off,alt:"Record",class:"h-5 w-5"},null,8,pLn))]),_:1},8,["onClick","class"]),r.isSynthesizingVoice?(N(),H("div",mLn,e[61]||(e[61]=[S("svg",{class:"animate-spin h-5 w-5 text-secondary",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[S("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),S("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})],-1)]))):(N(),ot(s,{key:0,onClick:i.read,title:"Generate audio from text"},{icon:Ge(()=>e[60]||(e[60]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z"})],-1)])),_:1},8,["onClick"])),Le(ne(s,{onClick:i.exportText,title:"Export text"},{icon:Ge(()=>e[62]||(e[62]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-8l-4-4m0 0L8 8m4-4v12"})],-1)])),_:1},8,["onClick"]),[[An,!r.generating]]),Le(ne(s,{onClick:i.importText,title:"Import text"},{icon:Ge(()=>e[63]||(e[63]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4"})],-1)])),_:1},8,["onClick"]),[[An,!r.generating]]),ne(s,{onClick:e[0]||(e[0]=h=>r.showSettings=!r.showSettings),title:"Settings"},{icon:Ge(()=>e[64]||(e[64]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z"}),S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z"})],-1)])),_:1})]),S("input",{type:"file",ref:"fileInput",onChange:e[1]||(e[1]=(...h)=>i.handleFileUpload&&i.handleFileUpload(...h)),style:{display:"none"},accept:".wav"},null,544),S("div",gLn,[S("button",{class:Ee(["border-2 text-blue-600 dark:text-white border-blue-300 p-2 rounded shadow-lg hover:border-gray-600 dark:link-item-dark cursor-pointer",{"bg-blue-200 dark:bg-blue-500":r.tab_id=="source"}]),onClick:e[2]||(e[2]=h=>r.tab_id="source")}," Source ",2),S("button",{class:Ee(["border-2 text-blue-600 dark:text-white border-blue-300 p-2 rounded shadow-lg hover:border-gray-600 dark:link-item-dark cursor-pointer",{"bg-blue-200 dark:bg-blue-500":r.tab_id=="render"}]),onClick:e[3]||(e[3]=h=>r.tab_id="render")}," Render ",2)]),e[66]||(e[66]=S("input",{type:"file",id:"import-input",class:"hidden"},null,-1))]),S("div",{class:Ee(["flex-grow m-2 p-2 border panels-color border-blue-300 rounded-md",{"border-red-500":r.generating}])},[r.tab_id==="source"?(N(),H("div",_Ln,[ne(c,{title:"Add Block"},{default:Ge(()=>[ne(l,{title:"Programming Languages",icon:"code"},{default:Ge(()=>[ne(a,{onClick:e[4]||(e[4]=oe(h=>i.addBlock("python"),["stop"])),title:"Python",icon:"python"}),ne(a,{onClick:e[5]||(e[5]=oe(h=>i.addBlock("javascript"),["stop"])),title:"JavaScript",icon:"js"}),ne(a,{onClick:e[6]||(e[6]=oe(h=>i.addBlock("typescript"),["stop"])),title:"TypeScript",icon:"typescript"}),ne(a,{onClick:e[7]||(e[7]=oe(h=>i.addBlock("java"),["stop"])),title:"Java",icon:"java"}),ne(a,{onClick:e[8]||(e[8]=oe(h=>i.addBlock("c++"),["stop"])),title:"C++",icon:"cplusplus"}),ne(a,{onClick:e[9]||(e[9]=oe(h=>i.addBlock("csharp"),["stop"])),title:"C#",icon:"csharp"}),ne(a,{onClick:e[10]||(e[10]=oe(h=>i.addBlock("go"),["stop"])),title:"Go",icon:"go"}),ne(a,{onClick:e[11]||(e[11]=oe(h=>i.addBlock("rust"),["stop"])),title:"Rust",icon:"rust"}),ne(a,{onClick:e[12]||(e[12]=oe(h=>i.addBlock("swift"),["stop"])),title:"Swift",icon:"swift"}),ne(a,{onClick:e[13]||(e[13]=oe(h=>i.addBlock("kotlin"),["stop"])),title:"Kotlin",icon:"kotlin"}),ne(a,{onClick:e[14]||(e[14]=oe(h=>i.addBlock("r"),["stop"])),title:"R",icon:"r-project"})]),_:1}),ne(l,{title:"Web Technologies",icon:"web"},{default:Ge(()=>[ne(a,{onClick:e[15]||(e[15]=oe(h=>i.addBlock("html"),["stop"])),title:"HTML",icon:"html5"}),ne(a,{onClick:e[16]||(e[16]=oe(h=>i.addBlock("css"),["stop"])),title:"CSS",icon:"css3"}),ne(a,{onClick:e[17]||(e[17]=oe(h=>i.addBlock("vue"),["stop"])),title:"Vue.js",icon:"vuejs"}),ne(a,{onClick:e[18]||(e[18]=oe(h=>i.addBlock("react"),["stop"])),title:"React",icon:"react"}),ne(a,{onClick:e[19]||(e[19]=oe(h=>i.addBlock("angular"),["stop"])),title:"Angular",icon:"angular"})]),_:1}),ne(l,{title:"Markup and Data",icon:"file-code"},{default:Ge(()=>[ne(a,{onClick:e[20]||(e[20]=oe(h=>i.addBlock("xml"),["stop"])),title:"XML",icon:"xml"}),ne(a,{onClick:e[21]||(e[21]=oe(h=>i.addBlock("json"),["stop"])),title:"JSON",icon:"json"}),ne(a,{onClick:e[22]||(e[22]=oe(h=>i.addBlock("yaml"),["stop"])),title:"YAML",icon:"yaml"}),ne(a,{onClick:e[23]||(e[23]=oe(h=>i.addBlock("markdown"),["stop"])),title:"Markdown",icon:"markdown"}),ne(a,{onClick:e[24]||(e[24]=oe(h=>i.addBlock("latex"),["stop"])),title:"LaTeX",icon:"latex"})]),_:1}),ne(l,{title:"Scripting and Shell",icon:"terminal"},{default:Ge(()=>[ne(a,{onClick:e[25]||(e[25]=oe(h=>i.addBlock("bash"),["stop"])),title:"Bash",icon:"bash"}),ne(a,{onClick:e[26]||(e[26]=oe(h=>i.addBlock("powershell"),["stop"])),title:"PowerShell",icon:"powershell"}),ne(a,{onClick:e[27]||(e[27]=oe(h=>i.addBlock("perl"),["stop"])),title:"Perl",icon:"perl"})]),_:1}),ne(l,{title:"Diagramming",icon:"sitemap"},{default:Ge(()=>[ne(a,{onClick:e[28]||(e[28]=oe(h=>i.addBlock("mermaid"),["stop"])),title:"Mermaid",icon:"mermaid"}),ne(a,{onClick:e[29]||(e[29]=oe(h=>i.addBlock("graphviz"),["stop"])),title:"Graphviz",icon:"graphviz"}),ne(a,{onClick:e[30]||(e[30]=oe(h=>i.addBlock("plantuml"),["stop"])),title:"PlantUML",icon:"plantuml"})]),_:1}),ne(l,{title:"Database",icon:"database"},{default:Ge(()=>[ne(a,{onClick:e[31]||(e[31]=oe(h=>i.addBlock("sql"),["stop"])),title:"SQL",icon:"sql"}),ne(a,{onClick:e[32]||(e[32]=oe(h=>i.addBlock("mongodb"),["stop"])),title:"MongoDB",icon:"mongodb"})]),_:1}),ne(a,{onClick:e[33]||(e[33]=oe(h=>i.addBlock(""),["stop"])),title:"Generic Block",icon:"code"})]),_:1}),ne(a,{onClick:e[34]||(e[34]=oe(h=>t.copyContentToClipboard(),["stop"])),title:"Copy message to clipboard",icon:"copy"}),Le(S("textarea",{ref:"mdTextarea",onKeydown:e[35]||(e[35]=Qn(oe((...h)=>i.insertTab&&i.insertTab(...h),["prevent"]),["tab"])),class:"block min-h-500 p-2.5 w-full text-gray-900 bg-gray-50 rounded-lg border border-gray-300 focus:ring-blue-500 focus:border-blue-500 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500 overflow-y-scroll flex flex-col shadow-lg p-10 pt-0 overflow-y-scroll dark:bg-bg-dark scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary",rows:4,style:an({minHeight:r.mdRenderHeight+"px"}),placeholder:"Enter message here...","onUpdate:modelValue":e[36]||(e[36]=h=>r.text=h),onClick:e[37]||(e[37]=oe((...h)=>i.mdTextarea_clicked&&i.mdTextarea_clicked(...h),["prevent"])),onChange:e[38]||(e[38]=oe((...h)=>i.mdTextarea_changed&&i.mdTextarea_changed(...h),["prevent"]))}," ",36),[[Je,r.text]]),S("span",null,"Cursor position "+J(r.cursorPosition),1)])):Z("",!0),r.audio_url!=null?(N(),H("audio",{controls:"",key:r.audio_url},[S("source",{src:r.audio_url,type:"audio/wav",ref:"audio_player"},null,8,QLn),e[67]||(e[67]=Re(" Your browser does not support the audio element. "))])):Z("",!0),ne(u,{namedTokens:r.namedTokens},null,8,["namedTokens"]),r.tab_id==="render"?(N(),H("div",vLn,[ne(d,{ref:"mdRender",client_id:this.$store.state.client_id,message_id:0,discussion_id:0,"markdown-text":r.text,class:"mt-4 p-2 rounded shadow-lg dark:bg-bg-dark"},null,8,["client_id","markdown-text"])])):Z("",!0)],2)]),r.showSettings?(N(),H("div",yLn,[e[82]||(e[82]=S("h2",{class:"text-2xl font-bold text-gray-900 dark:text-white mb-4"},"Settings",-1)),ne(f,{title:"Model",class:"slider-container ml-0 mr-0",isHorizontal:!1,disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>[Le(S("select",{"onUpdate:modelValue":e[39]||(e[39]=h=>this.$store.state.selectedModel=h),onChange:e[40]||(e[40]=(...h)=>i.setModel&&i.setModel(...h)),class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},[(N(!0),H(xe,null,Pe(i.models,h=>(N(),H("option",{key:h,value:h},J(h),9,bLn))),128))],544),[[Dr,this.$store.state.selectedModel]]),r.selecting_model?(N(),H("div",ELn,e[68]||(e[68]=[S("div",{role:"status"},[S("svg",{"aria-hidden":"true",class:"w-6 h-6 animate-spin fill-secondary",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})]),S("span",{class:"sr-only"},"Selecting model...")],-1)]))):Z("",!0)]),_:1}),ne(f,{title:"Presets",class:"slider-container ml-0 mr-0",is_subcard:!0,isHorizontal:!1,disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>[Le(S("select",{"onUpdate:modelValue":e[41]||(e[41]=h=>r.selectedPreset=h),class:"bg-white dark:bg-black mb-2 border-2 rounded-md shadow-sm w-full"},[(N(!0),H(xe,null,Pe(r.presets,h=>(N(),H("option",{key:h,value:h},J(h.name),9,SLn))),128))],512),[[Dr,r.selectedPreset]]),e[73]||(e[73]=S("br",null,null,-1)),S("button",{class:"w-6 ml-2 hover:text-secondary duration-75 active:scale-90 cursor-pointer",onClick:e[42]||(e[42]=(...h)=>i.setPreset&&i.setPreset(...h)),title:"Use preset"},e[69]||(e[69]=[S("i",{"data-feather":"check"},null,-1)])),S("button",{class:"w-6 ml-2 hover:text-secondary duration-75 active:scale-90 cursor-pointer",onClick:e[43]||(e[43]=(...h)=>i.addPreset&&i.addPreset(...h)),title:"Add this text as a preset"},e[70]||(e[70]=[S("i",{"data-feather":"plus"},null,-1)])),S("button",{class:"w-6 ml-2 hover:text-secondary duration-75 active:scale-90 cursor-pointer",onClick:e[44]||(e[44]=(...h)=>i.removePreset&&i.removePreset(...h)),title:"Remove preset"},e[71]||(e[71]=[S("i",{"data-feather":"x"},null,-1)])),S("button",{class:"w-6 ml-2 hover:text-secondary duration-75 active:scale-90 cursor-pointer",onClick:e[45]||(e[45]=(...h)=>i.reloadPresets&&i.reloadPresets(...h)),title:"Reload presets list"},e[72]||(e[72]=[S("i",{"data-feather":"refresh-ccw"},null,-1)]))]),_:1}),ne(f,{title:"Generation params",class:"slider-container ml-0 mr-0",is_subcard:!0,isHorizontal:!1,disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>[S("div",xLn,[e[74]||(e[74]=S("h3",{class:"text-gray-600"},"Temperature",-1)),Le(S("input",{type:"range","onUpdate:modelValue":e[46]||(e[46]=h=>r.temperature=h),min:"0",max:"5",step:"0.1",class:"w-full"},null,512),[[Je,r.temperature]]),S("span",LLn,"Current value: "+J(r.temperature),1)]),S("div",CLn,[e[75]||(e[75]=S("h3",{class:"text-gray-600"},"Top K",-1)),Le(S("input",{type:"range","onUpdate:modelValue":e[47]||(e[47]=h=>r.top_k=h),min:"1",max:"100",step:"1",class:"w-full"},null,512),[[Je,r.top_k]]),S("span",ALn,"Current value: "+J(r.top_k),1)]),S("div",wLn,[e[76]||(e[76]=S("h3",{class:"text-gray-600"},"Top P",-1)),Le(S("input",{type:"range","onUpdate:modelValue":e[48]||(e[48]=h=>r.top_p=h),min:"0",max:"1",step:"0.1",class:"w-full"},null,512),[[Je,r.top_p]]),S("span",OLn,"Current value: "+J(r.top_p),1)]),S("div",MLn,[e[77]||(e[77]=S("h3",{class:"text-gray-600"},"Repeat Penalty",-1)),Le(S("input",{type:"range","onUpdate:modelValue":e[49]||(e[49]=h=>r.repeat_penalty=h),min:"0",max:"5",step:"0.1",class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},null,512),[[Je,r.repeat_penalty]]),S("span",RLn,"Current value: "+J(r.repeat_penalty),1)]),S("div",NLn,[e[78]||(e[78]=S("h3",{class:"text-gray-600"},"Repeat Last N",-1)),Le(S("input",{type:"range","onUpdate:modelValue":e[50]||(e[50]=h=>r.repeat_last_n=h),min:"0",max:"100",step:"1",class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},null,512),[[Je,r.repeat_last_n]]),S("span",DLn,"Current value: "+J(r.repeat_last_n),1)]),S("div",ILn,[e[79]||(e[79]=S("h3",{class:"text-gray-600"},"Number of tokens to crop the text to",-1)),Le(S("input",{type:"number","onUpdate:modelValue":e[51]||(e[51]=h=>r.n_crop=h),class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},null,512),[[Je,r.n_crop]]),S("span",kLn,"Current value: "+J(r.n_crop),1)]),S("div",HLn,[e[80]||(e[80]=S("h3",{class:"text-gray-600"},"Number of tokens to generate",-1)),Le(S("input",{type:"number","onUpdate:modelValue":e[52]||(e[52]=h=>r.n_predicts=h),class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},null,512),[[Je,r.n_predicts]]),S("span",PLn,"Current value: "+J(r.n_predicts),1)]),S("div",$Ln,[e[81]||(e[81]=S("h3",{class:"text-gray-600"},"Seed",-1)),Le(S("input",{type:"number","onUpdate:modelValue":e[53]||(e[53]=h=>r.seed=h),class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},null,512),[[Je,r.seed]]),S("span",VLn,"Current value: "+J(r.seed),1)])]),_:1})])):Z("",!0)])]),ne(T,{ref:"toast"},null,512)],64)}const FLn=Ye(oLn,[["render",BLn],["__scopeId","data-v-721d5f23"]]),ULn={data(){return{activeExtension:null}},computed:{activeExtensions(){return console.log(this.$store.state.extensionsZoo),console.log(EH(this.$store.state.extensionsZoo)),this.$store.state.extensionsZoo}},methods:{showExtensionPage(t){this.activeExtension=t}}},qLn={class:"container overflow-y-scroll flex flex-col shadow-lg p-10 pt-0 overflow-y-scroll w-full dark:bg-bg-dark scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"},GLn={key:0},jLn=["onClick"],zLn={key:0},YLn=["src"],WLn={key:1};function KLn(t,e,n,o,r,i){return N(),H("div",qLn,[i.activeExtensions.length>0?(N(),H("div",GLn,[(N(!0),H(xe,null,Pe(i.activeExtensions,s=>(N(),H("div",{key:s.name,onClick:a=>i.showExtensionPage(s)},[S("div",{class:Ee({"active-tab":s===r.activeExtension})},J(s.name),3)],8,jLn))),128)),r.activeExtension?(N(),H("div",zLn,[S("iframe",{src:r.activeExtension.page,width:"100%",height:"500px",frameborder:"0"},null,8,YLn)])):Z("",!0)])):(N(),H("div",WLn,e[0]||(e[0]=[S("p",null,"No extension is active. Please install and activate an extension.",-1)])))])}const ZLn=Ye(ULn,[["render",KLn],["__scopeId","data-v-dd0910af"]]),XLn={name:"HelpView",data(){return{helpSections:[],selectedSection:0}},computed:{selectedContent(){var t;return((t=this.helpSections[this.selectedSection])==null?void 0:t.content)||"Select a topic from the sidebar to view help content."}},methods:{selectSection(t){this.selectedSection=t},async loadMarkdownFile(t){try{const n=await(await fetch(`/help/${t}`)).text();return Et(n)}catch(e){return console.error("Error loading markdown file:",e),"Error loading help content."}},async loadHelpSections(){const t=[{title:"About LoLLMs",file:"lollms-context.md"},{title:"Getting Started",file:"getting-started.md"},{title:"Uploading Files",file:"uploading-files.md"},{title:"Sending Images",file:"sending-images.md"},{title:"Using Code Interpreter",file:"code-interpreter.md"},{title:"Internet Search",file:"internet-search.md"},{title:"Text Generation",file:"text-generation.md"},{title:"Image Generation",file:"image-generation.md"},{title:"Music Generation",file:"music-generation.md"},{title:"Managing Personalities",file:"managing-personalities.md"},{title:"Troubleshooting",file:"troubleshooting.md"}];for(const e of t){const n=await this.loadMarkdownFile(e.file);this.helpSections.push({title:e.title,content:n})}}},mounted(){this.loadHelpSections()}},JLn={class:"help-view bg-gradient-to-br from-gray-50 to-blue-100 dark:from-gray-900 dark:to-blue-950 min-h-screen flex overflow-hidden"},eCn={class:"left-bar w-72 bg-white dark:bg-gray-800 shadow-2xl p-6 fixed h-screen overflow-y-auto transition-all duration-500 ease-in-out md:w-80 lg:w-96 z-10"},tCn={class:"space-y-4"},nCn=["onClick"],rCn={class:"main-content ml-72 md:ml-80 lg:ml-96 flex-1 p-10 overflow-y-auto h-screen flex items-center justify-center"},iCn={class:"big-card bg-white dark:bg-gray-900 rounded-2xl shadow-xl p-10 w-full h-full max-w-6xl mx-auto flex flex-col"},oCn=["innerHTML"];function sCn(t,e,n,o,r,i){return N(),H("div",JLn,[S("div",eCn,[e[0]||(e[0]=S("h2",{class:"text-3xl font-bold text-gray-900 dark:text-white mb-8 flex items-center"},[S("span",{class:"mr-2"},"🗂️"),Re(" Help Topics ")],-1)),S("ul",tCn,[(N(!0),H(xe,null,Pe(r.helpSections,(s,a)=>(N(),H("li",{key:a},[S("a",{onClick:oe(l=>i.selectSection(a),["prevent"]),class:Ee(["block p-4 rounded-xl text-gray-700 dark:text-gray-200 bg-gray-50 dark:bg-gray-700/50 hover:bg-blue-500 dark:hover:bg-blue-600 hover:text-white dark:hover:text-white transition-all duration-300 cursor-pointer shadow-sm",{"bg-blue-500 text-white dark:bg-blue-600":r.selectedSection===a}])},J(s.title),11,nCn)]))),128))])]),S("div",rCn,[S("div",iCn,[e[1]||(e[1]=S("h1",{class:"text-5xl font-extrabold text-gray-900 dark:text-white mb-10 flex items-center"},[S("span",{class:"mr-3"},"📖"),Re(" LoLLMs Help Center ")],-1)),S("div",{class:"help-content flex-1 overflow-y-auto text-gray-700 dark:text-gray-300 prose dark:prose-invert max-w-none transition-opacity duration-500",innerHTML:i.selectedContent},null,8,oCn)])])])}const aCn=Ye(XLn,[["render",sCn],["__scopeId","data-v-b2cccf53"]]),lCn={class:"p-4"},cCn={class:"list-none p-0 m-0"},uCn=["onClick"],dCn=["data-feather"],TCn={__name:"SettingsSidebar",props:{sections:{type:Array,required:!0},activeSection:{type:String,required:!0}},emits:["update:activeSection"],setup(t){return Hr(()=>{Se(()=>{Ce.replace()})}),(e,n)=>(N(),H("nav",lCn,[n[0]||(n[0]=S("h2",{class:"text-lg font-semibold mb-4 px-2 theme-text-primary"},"Settings",-1)),S("ul",cCn,[(N(!0),H(xe,null,Pe(t.sections,o=>(N(),H("li",{key:o.id,class:"mb-1"},[S("button",{onClick:r=>e.$emit("update:activeSection",o.id),class:Ee(["w-full flex items-center px-3 py-2 rounded-md text-sm font-medium transition-colors duration-150 focus:outline-none focus:ring-2 focus:ring-opacity-50",t.activeSection===o.id?"theme-bg-accent theme-text-accent-contrast shadow-sm":"theme-text-secondary hover:theme-bg-hover hover:theme-text-primary focus:theme-ring-accent"])},[S("i",{"data-feather":o.icon,class:"w-5 h-5 mr-3 flex-shrink-0"},null,8,dCn),S("span",null,J(o.name),1)],10,uCn)]))),128))])]))}},fCn=Ye(TCn,[["__scopeId","data-v-6c0e2273"]]);function G1(t,e=!0,n=1){const o=e?1e3:1024;if(Math.abs(t)=o&&i!r.value||!r.value.gpus?0:r.value.gpus.reduce((m,_)=>m+_.total_vram,0)),c=je(()=>!r.value||!r.value.gpus?0:r.value.gpus.reduce((m,_)=>m+_.used_vram,0)),u=je(()=>!r.value||!r.value.gpus||r.value.gpus.length===0?"0.00":(r.value.gpus.reduce((_,v)=>_+v.percentage,0)/r.value.gpus.length).toFixed(2)),d=async m=>{try{return(await ce.get(`/${m}`)).data}catch(_){return console.error(`API GET Error (${m}):`,_.message),null}},f=async(m,_={})=>{try{const v={..._,client_id:i.value};return(await ce.post(`/${m}`,v,{headers:a})).data}catch(v){return console.error(`API POST Error (${m}):`,v.message),{status:!1,error:v.message}}},T=m=>{if(m==null||isNaN(m))return"N/A";try{return G1(m)}catch(_){return console.warn("Filesize calculation error:",_),"Error"}},h=async()=>{console.log("Refreshing hardware usage...");const[m,_,v]=await Promise.all([d("disk_usage"),d("ram_usage"),d("vram_usage")]);n.value=m,o.value=_,r.value=v,Se(()=>{Ce.replace()})},g=async m=>{if(!i.value){console.error("Client ID not available for handleFolderClick");return}const _={folder:m};try{const v=await f("open_personal_folder",_);v.status?(console.log(`Successfully opened folder: ${m}`),console.info(`Opened ${m.replace("-"," ")} folder`)):(console.error(`Failed to open folder: ${m}`,v.error),console.error(`Failed to open folder: ${v.error||"Unknown error"}`))}catch(v){console.error("Error calling open_personal_folder endpoint:",v),console.error(`Error opening folder: ${v.message}`)}},Q=()=>{const m=localStorage.getItem("lollms_client_id");m?i.value=m:(i.value=`client_${Date.now()}_${Math.random().toString(16).substring(2,8)}`,localStorage.setItem("lollms_client_id",i.value),console.warn("Generated temporary client ID:",i.value))};return Hr(()=>{Q(),h(),s.value=setInterval(h,zCn),Se(()=>{Ce.replace()})}),N2(()=>{Se(()=>{Ce.replace()})}),cp(()=>{s.value&&clearInterval(s.value)}),(m,_)=>(N(),H("div",pCn,[S("div",{class:"flex justify-between items-center border-b border-blue-300 dark:border-blue-600 pb-2 mb-4"},[_[6]||(_[6]=S("h2",{class:"h2"}," System Status ",-1)),S("button",{onClick:h,title:"Refresh Status",class:"svg-button"},_[5]||(_[5]=[S("i",{"data-feather":"refresh-cw",class:"w-4 h-4"},null,-1)]))]),S("div",hCn,[r.value&&r.value.gpus&&r.value.gpus.length>0?(N(),H("div",mCn,[S("img",{src:gt(wO),width:"25",height:"25",class:"flex-shrink-0",alt:"GPU Icon"},null,8,gCn),r.value.gpus.length===1?(N(),H("div",_Cn,[_[7]||(_[7]=S("div",{class:"font-medium text-blue-800 dark:text-blue-100"},"GPU VRAM",-1)),S("div",QCn,J(T(r.value.gpus[0].used_vram))+" / "+J(T(r.value.gpus[0].total_vram))+" ("+J(r.value.gpus[0].percentage)+"%)",1)])):(N(),H("div",vCn,[S("div",yCn,J(r.value.gpus.length)+"x GPUs",1),S("div",bCn,"Total: "+J(T(c.value))+" / "+J(T(l.value))+" ("+J(u.value)+"%)",1)]))])):(N(),H("div",ECn,_[8]||(_[8]=[S("i",{"data-feather":"alert-circle",class:"w-5 h-5"},null,-1),S("div",{class:"flex-1 font-medium"},"No GPU Detected",-1)]))),o.value?(N(),H("div",SCn,[_[10]||(_[10]=S("i",{"data-feather":"cpu",class:"w-5 h-5 text-blue-500 dark:text-blue-400 flex-shrink-0"},null,-1)),S("div",xCn,[_[9]||(_[9]=S("div",{class:"font-medium text-blue-800 dark:text-blue-100"},"CPU RAM",-1)),S("div",LCn,J(T(o.value.ram_usage))+" / "+J(T(o.value.total_space))+" ("+J(o.value.percent_usage)+"%)",1)])])):(N(),H("div",CCn,_[11]||(_[11]=[S("i",{"data-feather":"cpu",class:"w-5 h-5"},null,-1),S("div",{class:"flex-1 font-medium"},"RAM N/A",-1)]))),n.value?(N(),H("div",ACn,[_[13]||(_[13]=S("i",{"data-feather":"hard-drive",class:"w-5 h-5 text-green-500 dark:text-green-400 flex-shrink-0"},null,-1)),S("div",wCn,[_[12]||(_[12]=S("div",{class:"font-medium text-blue-800 dark:text-blue-100"},"Disk (Models/DB)",-1)),S("div",OCn,J(T(n.value.binding_models_usage))+" / "+J(T(n.value.total_space))+" ("+J(n.value.percent_usage)+"%)",1)])])):(N(),H("div",MCn,_[14]||(_[14]=[S("i",{"data-feather":"hard-drive",class:"w-5 h-5"},null,-1),S("div",{class:"flex-1 font-medium"},"Disk N/A",-1)])))]),S("div",RCn,[o.value?(N(),H("div",NCn,[_[17]||(_[17]=S("label",{class:"label flex items-center gap-1 mb-2"},[S("i",{"data-feather":"cpu",class:"w-4 h-4 text-blue-500 dark:text-blue-400"}),Re(" CPU RAM Usage Details ")],-1)),S("div",DCn,[S("div",null,[_[15]||(_[15]=S("b",null,"Available: ",-1)),Re(J(T(o.value.available_space)),1)]),S("div",null,[_[16]||(_[16]=S("b",null,"Usage: ",-1)),Re(" "+J(T(o.value.ram_usage))+" / "+J(T(o.value.total_space))+" ("+J(o.value.percent_usage)+"%)",1)])]),S("div",ICn,[S("div",{class:"animated-progressbar-fg h-2.5 rounded-full",style:an({width:o.value.percent_usage+"%"})},null,4)])])):Z("",!0),n.value?(N(),H("div",kCn,[_[20]||(_[20]=S("label",{class:"label flex items-center gap-1 mb-2"},[S("i",{"data-feather":"hard-drive",class:"w-4 h-4 text-green-500 dark:text-green-400"}),Re(" Disk Usage Details ")],-1)),S("div",HCn,[S("div",null,[_[18]||(_[18]=S("b",null,"Available: ",-1)),Re(J(T(n.value.available_space)),1)]),S("div",null,[_[19]||(_[19]=S("b",null,"Usage (Models/DB): ",-1)),Re(" "+J(T(n.value.binding_models_usage))+" / "+J(T(n.value.total_space))+" ("+J(n.value.percent_usage)+"%)",1)])]),S("div",PCn,[S("div",{class:"animated-progressbar-fg h-2.5 rounded-full",style:an({width:n.value.percent_usage+"%"})},null,4)])])):Z("",!0),r.value&&r.value.gpus&&r.value.gpus.length>0?(N(),H("div",$Cn,[(N(!0),H(xe,null,Pe(r.value.gpus,(v,b)=>(N(),H("div",{key:b,class:"p-4 border border-blue-300 dark:border-blue-600 rounded-md mb-4 chatbox-color"},[S("label",VCn,[S("img",{src:gt(wO),width:"20",height:"20",class:"flex-shrink-0",alt:"GPU Icon"},null,8,BCn),Re(" GPU "+J(b+1)+" Usage Details ",1)]),S("div",FCn,[S("div",null,[_[21]||(_[21]=S("b",null,"Model: ",-1)),Re(J(v.gpu_model),1)]),S("div",null,[_[22]||(_[22]=S("b",null,"Available VRAM: ",-1)),Re(J(T(v.available_space)),1)]),S("div",null,[_[23]||(_[23]=S("b",null,"Usage: ",-1)),Re(" "+J(T(v.used_vram))+" / "+J(T(v.total_vram))+" ("+J(v.percentage)+"%)",1)])]),S("div",UCn,[S("div",{class:"animated-progressbar-fg h-2.5 rounded-full",style:an({width:v.percentage+"%"})},null,4)])]))),128))])):(N(),H("div",qCn," No GPU detected or VRAM information unavailable. "))]),S("div",GCn,[_[29]||(_[29]=S("h3",{class:"h3"},"Common Folders",-1)),S("div",jCn,[S("div",{class:"folder-item-base folder-item-personalities group",onClick:_[0]||(_[0]=v=>g("custom-personalities")),title:"Open Custom Personalities folder"},_[24]||(_[24]=[S("i",{"data-feather":"users",class:"folder-item-icon folder-item-icon-personalities"},null,-1),S("span",{class:"folder-item-label"},"Custom Personalities",-1)])),S("div",{class:"folder-item-base folder-item-functions group",onClick:_[1]||(_[1]=v=>g("custom-function-calls")),title:"Open Custom Function Calls folder"},_[25]||(_[25]=[S("i",{"data-feather":"tool",class:"folder-item-icon folder-item-icon-functions"},null,-1),S("span",{class:"folder-item-label"},"Custom Functions",-1)])),S("div",{class:"folder-item-base folder-item-configs group",onClick:_[2]||(_[2]=v=>g("configurations")),title:"Open Configurations folder"},_[26]||(_[26]=[S("i",{"data-feather":"settings",class:"folder-item-icon folder-item-icon-configs"},null,-1),S("span",{class:"folder-item-label"},"Configurations",-1)])),S("div",{class:"folder-item-base folder-item-outputs group",onClick:_[3]||(_[3]=v=>g("ai-outputs")),title:"Open AI Outputs folder"},_[27]||(_[27]=[S("i",{"data-feather":"gift",class:"folder-item-icon folder-item-icon-outputs"},null,-1),S("span",{class:"folder-item-label"},"AI Outputs",-1)])),S("div",{class:"folder-item-base folder-item-discussions group",onClick:_[4]||(_[4]=v=>g("discussions")),title:"Open Discussions folder"},_[28]||(_[28]=[S("i",{"data-feather":"message-square",class:"folder-item-icon folder-item-icon-discussions"},null,-1),S("span",{class:"folder-item-label"},"Discussions",-1)]))])])]))}},OO=Ye(YCn,[["__scopeId","data-v-095d6dfb"]]),WCn={name:"DictionaryManager",props:{modelValue:{type:Object,default:()=>({})},keyName:{type:String,default:"Key"},valueName:{type:String,default:"Value"}},emits:["update:modelValue","change"],data(){return{newKey:"",newValue:"",draggingKey:null}},methods:{addItem(){if(this.newKey.trim()){const t={...this.modelValue};t[this.newKey.trim()]=this.newValue,this.$emit("update:modelValue",t),this.$emit("change"),this.newKey="",this.newValue=""}},removeItem(t){const e={...this.modelValue};delete e[t],this.$emit("update:modelValue",e),this.$emit("change")},removeAll(){this.$emit("update:modelValue",{}),this.$emit("change")},updateKey(t,e){if(e.trim()&&e!==t){const n={...this.modelValue};n[e.trim()]=n[t],delete n[t],this.$emit("update:modelValue",n),this.$emit("change")}},updateValue(t,e){const n={...this.modelValue};n[t]=e,this.$emit("update:modelValue",n),this.$emit("change")},moveUp(t){const e=Object.keys(this.modelValue),n=e.indexOf(t);if(n>0){const o={};e.forEach((r,i)=>{i===n-1&&(o[t]=this.modelValue[t]),r!==t&&(o[r]=this.modelValue[r])}),this.$emit("update:modelValue",o),this.$emit("change")}},moveDown(t){const e=Object.keys(this.modelValue),n=e.indexOf(t);if(n{r!==t&&(o[r]=this.modelValue[r]),i===n+1&&(o[t]=this.modelValue[t])}),this.$emit("update:modelValue",o),this.$emit("change")}}}},KCn={class:"max-w-4xl mx-auto p-4"},ZCn={class:"flex flex-col sm:flex-row mb-4 gap-2"},XCn=["placeholder"],JCn=["placeholder"],eAn={key:0,class:"space-y-4"},tAn={class:"flex-grow mb-2 sm:mb-0 sm:mr-4 w-full sm:w-auto"},nAn=["for"],rAn=["id","value","onInput"],iAn={class:"flex-grow mb-2 sm:mb-0 sm:mr-4 w-full sm:w-auto"},oAn=["for"],sAn=["id","value","onInput"],aAn={class:"flex items-center space-x-2"},lAn=["onClick"],cAn=["onClick"],uAn=["onClick"],dAn={key:1,class:"mt-6"};function TAn(t,e,n,o,r,i){return N(),H("div",KCn,[S("div",ZCn,[Le(S("input",{type:"text","onUpdate:modelValue":e[0]||(e[0]=s=>r.newKey=s),placeholder:n.keyName,onKeyup:e[1]||(e[1]=Qn((...s)=>i.addItem&&i.addItem(...s),["enter"])),class:"flex-grow px-4 py-2 border border-gray-300 rounded dark:bg-gray-700 dark:text-white text-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent"},null,40,XCn),[[Je,r.newKey]]),Le(S("input",{type:"text","onUpdate:modelValue":e[2]||(e[2]=s=>r.newValue=s),placeholder:n.valueName,onKeyup:e[3]||(e[3]=Qn((...s)=>i.addItem&&i.addItem(...s),["enter"])),class:"flex-grow px-4 py-2 border border-gray-300 rounded dark:bg-gray-700 dark:text-white text-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent"},null,40,JCn),[[Je,r.newValue]]),S("button",{onClick:e[4]||(e[4]=(...s)=>i.addItem&&i.addItem(...s)),class:"bg-blue-500 text-white px-6 py-2 rounded hover:bg-blue-600 text-lg transition duration-300 ease-in-out"},"Add")]),Object.keys(n.modelValue).length>0?(N(),H("ul",eAn,[(N(!0),H(xe,null,Pe(n.modelValue,(s,a)=>(N(),H("li",{key:a,class:Ee(["flex flex-col sm:flex-row items-center p-4 bg-white dark:bg-gray-800 rounded-lg shadow-md hover:shadow-lg transition duration-300 ease-in-out",{"bg-gray-100 dark:bg-gray-700":r.draggingKey===a}])},[S("div",tAn,[S("label",{for:"key-"+a,class:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1"},J(n.keyName),9,nAn),S("input",{id:"key-"+a,value:a,onInput:l=>i.updateKey(a,l.target.value),class:"w-full px-3 py-2 border border-gray-300 rounded dark:bg-gray-600 dark:text-white text-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent"},null,40,rAn)]),S("div",iAn,[S("label",{for:"value-"+a,class:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1"},J(n.valueName),9,oAn),S("input",{id:"value-"+a,value:s,onInput:l=>i.updateValue(a,l.target.value),class:"w-full px-3 py-2 border border-gray-300 rounded dark:bg-gray-600 dark:text-white text-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent"},null,40,sAn)]),S("div",aAn,[S("button",{onClick:l=>i.removeItem(a),class:"text-red-500 hover:text-red-700 p-2 rounded-full hover:bg-red-100 dark:hover:bg-red-900 transition duration-300 ease-in-out"},e[6]||(e[6]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",viewBox:"0 0 20 20",fill:"currentColor"},[S("path",{"fill-rule":"evenodd",d:"M9 2a1 1 0 00-.894.553L7.382 4H4a1 1 0 000 2v10a2 2 0 002 2h8a2 2 0 002-2V6a1 1 0 100-2h-3.382l-.724-1.447A1 1 0 0011 2H9zM7 8a1 1 0 012 0v6a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v6a1 1 0 102 0V8a1 1 0 00-1-1z","clip-rule":"evenodd"})],-1)]),8,lAn),S("button",{onClick:l=>i.moveUp(a),class:"bg-gray-200 dark:bg-gray-600 hover:bg-gray-300 dark:hover:bg-gray-500 p-2 rounded-full transition duration-300 ease-in-out"},e[7]||(e[7]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",viewBox:"0 0 20 20",fill:"currentColor"},[S("path",{"fill-rule":"evenodd",d:"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z","clip-rule":"evenodd"})],-1)]),8,cAn),S("button",{onClick:l=>i.moveDown(a),class:"bg-gray-200 dark:bg-gray-600 hover:bg-gray-300 dark:hover:bg-gray-500 p-2 rounded-full transition duration-300 ease-in-out"},e[8]||(e[8]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",viewBox:"0 0 20 20",fill:"currentColor"},[S("path",{"fill-rule":"evenodd",d:"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1)]),8,uAn)])],2))),128))])):Z("",!0),Object.keys(n.modelValue).length>0?(N(),H("div",dAn,[S("button",{onClick:e[5]||(e[5]=(...s)=>i.removeAll&&i.removeAll(...s)),class:"bg-red-500 text-white px-6 py-2 rounded hover:bg-red-600 text-lg transition duration-300 ease-in-out"},"Remove All")])):Z("",!0)])}const fAn=Ye(WCn,[["render",TAn]]),pAn={name:"SmartRoutingConfig",components:{DictManager:fAn},props:{loading:{type:Boolean,default:!1},settingsChanged:{type:Boolean,default:!1}},emits:["update:setting","settings-changed"],computed:{useSmartRouting(){return this.$store.state.config.use_smart_routing},restoreModelAfterRouting(){return this.$store.state.config.restore_model_after_smart_routing},routerModel(){return this.$store.state.config.smart_routing_router_model},modelsDescription(){return this.$store.state.config.smart_routing_models_description||{}}},methods:{updateValue(t,e){this.$emit("update:setting",{key:t,value:e}),this.settingsChanged!==void 0&&this.$emit("settings-changed",!0)},updateBoolean(t,e){this.$emit("update:setting",{key:t,value:!!e}),this.settingsChanged!==void 0&&this.$emit("settings-changed",!0)}}},hAn={class:"user-settings-panel space-y-6"},mAn={class:"space-y-4"},gAn={class:"toggle-item border-t border-blue-200 dark:border-blue-700 pt-3 mt-2"},_An=["value","disabled"];function QAn(t,e,n,o,r,i){const s=ze("ToggleSwitch"),a=ze("DictManager");return N(),H("div",hAn,[e[8]||(e[8]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 border-b border-blue-300 dark:border-blue-600 pb-2"}," Smart Routing Configuration ",-1)),S("div",mAn,[S("div",gAn,[e[4]||(e[4]=S("label",{for:"use_smart_routing",class:"toggle-label"},[Re(" Enable Smart Routing "),S("span",{class:"toggle-description"}," Allow LoLLMs to automatically select the best model for a given task based on descriptions. ")],-1)),ne(s,{id:"use_smart_routing",checked:i.useSmartRouting,"onUpdate:checked":e[0]||(e[0]=l=>i.updateBoolean("use_smart_routing",l))},null,8,["checked"])]),S("div",{class:Ee(["toggle-item border-t border-blue-200 dark:border-blue-700 pt-3 mt-2",i.useSmartRouting?"":"opacity-50 pointer-events-none"])},[e[5]||(e[5]=S("label",{for:"restore_model_after_smart_routing",class:"toggle-label"},[Re(" Restore Original Model After Routing "),S("span",{class:"toggle-description"}," Automatically switch back to the originally selected model after the routed task is complete. ")],-1)),ne(s,{id:"restore_model_after_smart_routing",checked:i.restoreModelAfterRouting,"onUpdate:checked":e[1]||(e[1]=l=>i.updateBoolean("restore_model_after_smart_routing",l)),disabled:!i.useSmartRouting},null,8,["checked","disabled"])],2),S("div",{class:Ee(["setting-item border-t border-blue-200 dark:border-blue-700 pt-3 mt-2",i.useSmartRouting?"":"opacity-50 pointer-events-none"])},[e[6]||(e[6]=S("label",{for:"smart_routing_router_model",class:"setting-label"},[Re(" Router Model Name "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"}," The model responsible for deciding which specialized model to use. (e.g., `mistralai/Mistral-7B-Instruct-v0.2`) ")],-1)),S("input",{type:"text",id:"smart_routing_router_model",value:i.routerModel,onInput:e[2]||(e[2]=l=>i.updateValue("smart_routing_router_model",l.target.value)),disabled:!i.useSmartRouting,class:"input flex-grow",placeholder:"Enter the router model name"},null,40,_An)],2),S("div",{class:Ee(["space-y-2 border-t border-blue-200 dark:border-blue-700 pt-3 mt-2",i.useSmartRouting?"":"opacity-50 pointer-events-none"])},[e[7]||(e[7]=S("label",{class:"label mb-1"},[Re(" Specialized Models & Descriptions "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"}," Define the models that the router can choose from and provide a clear description of their capabilities. ")],-1)),ne(a,{modelValue:i.modelsDescription,"onUpdate:modelValue":e[3]||(e[3]=l=>i.updateValue("smart_routing_models_description",l)),"key-name":"Model Path / Name","value-name":"Model Description (Task Capabilities)","key-placeholder":"Enter model name (e.g., openai/gpt-4) or path","value-placeholder":"Describe what this model is good at (e.g., 'Excellent for coding tasks and complex reasoning')",disabled:!i.useSmartRouting,class:"flex-grow panels-color p-2 rounded"},null,8,["modelValue","disabled"])],2)])])}const MO=Ye(pAn,[["render",QAn],["__scopeId","data-v-29a3f94a"]]),vAn=["for"],yAn=["id","checked","disabled"],bAn={__name:"ToggleSwitch",props:{id:{type:String,required:!0},checked:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["update:checked"],setup(t){return(e,n)=>(N(),H("label",{for:t.id,class:Ee(["relative inline-flex items-center cursor-pointer",{"opacity-50 cursor-not-allowed":t.disabled}])},[S("input",{type:"checkbox",id:t.id,checked:t.checked,disabled:t.disabled,onChange:n[0]||(n[0]=o=>e.$emit("update:checked",o.target.checked)),class:"sr-only peer"},null,40,yAn),n[1]||(n[1]=S("div",{class:"w-11 h-6 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 rounded-full peer dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-blue-600"},null,-1)),_n(e.$slots,"default",{},void 0,!0)],10,vAn))}},n6=Ye(bAn,[["__scopeId","data-v-8b2e5a8e"]]),Wi="/assets/logo-BeKzDFPd.png",EAn={name:"MainConfigSettings",components:{ToggleSwitch:n6},props:{loading:{type:Boolean,default:!1},settingsChanged:{type:Boolean,default:!1},api_post_req:{type:Function,required:!0},show_toast:{type:Function,required:!0},client_id:{type:String,required:!0}},emits:["update:setting","settings-changed"],data(){return{isUploadingLogo:!1}},computed:{logoSrc(){return this.$store.state.config.app_custom_logo?`${ce.defaults.baseURL}/user_infos/${this.$store.state.config.app_custom_logo}`:Wi}},methods:{updateValue(t,e){this.$emit("update:setting",{key:t,value:e}),this.$emit("settings-changed",!0)},updateBoolean(t,e){this.$emit("update:setting",{key:t,value:!!e}),this.$emit("settings-changed",!0)},async uploadLogo(t){var o,r;const e=t.target.files[0];if(!e)return;this.isUploadingLogo=!0;const n=new FormData;n.append("logo",e),n.append("client_id",this.client_id);try{const i=await ce.post("/upload_logo",n,{headers:{"Content-Type":"multipart/form-data"}});i.data&&i.data.status?(this.show_toast("Logo uploaded successfully!",4,!0),this.$emit("update:setting",{key:"app_custom_logo",value:i.data.filename}),this.$emit("settings-changed",!0)):this.show_toast(`Logo upload failed: ${i.data.error||"Unknown error"}`,4,!1)}catch(i){console.error("Error uploading logo:",i),this.show_toast(`Error uploading logo: ${((r=(o=i.response)==null?void 0:o.data)==null?void 0:r.error)||i.message||"Unknown error"}`,4,!1)}finally{this.isUploadingLogo=!1,t.target&&(t.target.value=null)}},async removeLogo(){var t,e;this.isUploadingLogo=!0;try{const n=await this.api_post_req("/remove_logo",{client_id:this.client_id});n.status?(this.show_toast("Logo removed successfully!",4,!0),this.$emit("update:setting",{key:"app_custom_logo",value:null}),this.$emit("settings-changed",!0)):this.show_toast(`Failed to remove logo: ${n.error||"Unknown error"}`,4,!1)}catch(n){console.error("Error removing logo:",n),this.show_toast(`Error removing logo: ${((e=(t=n.response)==null?void 0:t.data)==null?void 0:e.error)||n.message||"Unknown error"}`,4,!1)}finally{this.isUploadingLogo=!1}},replaceFeatherIcons(){Se(()=>{try{Ce.replace()}catch(t){console.error("Feather icons replacement failed:",t)}})}},mounted(){this.replaceFeatherIcons()},updated(){this.replaceFeatherIcons()}},SAn={class:"user-settings-panel space-y-6"},xAn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},LAn={class:"setting-item"},CAn=["value"],AAn={class:"setting-item"},wAn=["value"],OAn={class:"setting-item items-start"},MAn={class:"flex-1 flex items-center gap-4"},RAn={class:"w-12 h-12 rounded-full overflow-hidden bg-blue-200 dark:bg-blue-700 ring-2 ring-offset-2 dark:ring-offset-blue-900 ring-blue-300 dark:ring-blue-600"},NAn=["src"],DAn={class:"flex gap-2"},IAn={class:"btn btn-secondary btn-sm cursor-pointer"},kAn=["disabled"],HAn=["disabled"],PAn={key:0,class:"text-xs text-blue-500 dark:text-blue-400 italic ml-2"},$An={class:"setting-item items-start"},VAn=["value"],BAn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},FAn={class:"toggle-item"},UAn={class:"toggle-item"},qAn={class:"toggle-item"},GAn={class:"toggle-item"},jAn={class:"toggle-item"},zAn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},YAn={class:"setting-item items-start p-4 bg-red-100 dark:bg-red-900/30 rounded-lg border border-red-300 dark:border-red-700"},WAn={class:"flex justify-between items-start w-full"},KAn={class:"toggle-item"};function ZAn(t,e,n,o,r,i){const s=ze("ToggleSwitch");return N(),H("div",SAn,[e[27]||(e[27]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 border-b border-blue-300 dark:border-blue-600 pb-2"}," Main Configuration ",-1)),S("div",xAn,[e[17]||(e[17]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Application Branding",-1)),S("div",LAn,[e[12]||(e[12]=S("label",{for:"app_custom_name",class:"setting-label"},"Application Name",-1)),S("input",{type:"text",id:"app_custom_name",value:t.$store.state.config.app_custom_name,onInput:e[0]||(e[0]=a=>i.updateValue("app_custom_name",a.target.value)),class:"input flex-grow",placeholder:"Default: LoLLMs"},null,40,CAn)]),S("div",AAn,[e[13]||(e[13]=S("label",{for:"app_custom_slogan",class:"setting-label"},"Application Slogan",-1)),S("input",{type:"text",id:"app_custom_slogan",value:t.$store.state.config.app_custom_slogan,onInput:e[1]||(e[1]=a=>i.updateValue("app_custom_slogan",a.target.value)),class:"input flex-grow",placeholder:"Default: Lord of Large Language Models"},null,40,wAn)]),S("div",OAn,[e[15]||(e[15]=S("label",{class:"setting-label pt-2"},"Application Logo",-1)),S("div",MAn,[S("div",RAn,[S("img",{src:i.logoSrc,class:"w-full h-full object-cover",alt:"App Logo"},null,8,NAn)]),S("div",DAn,[S("label",IAn,[e[14]||(e[14]=Re(" Upload Logo ")),S("input",{type:"file",onChange:e[2]||(e[2]=(...a)=>i.uploadLogo&&i.uploadLogo(...a)),accept:"image/*",class:"hidden",disabled:r.isUploadingLogo},null,40,kAn)]),t.$store.state.config.app_custom_logo?(N(),H("button",{key:0,onClick:e[3]||(e[3]=(...a)=>i.removeLogo&&i.removeLogo(...a)),class:"btn btn-secondary btn-sm text-red-500 dark:text-red-400 hover:bg-red-200 dark:hover:bg-red-700",disabled:r.isUploadingLogo}," Remove Logo ",8,HAn)):Z("",!0)]),r.isUploadingLogo?(N(),H("span",PAn,"Uploading...")):Z("",!0)])]),S("div",$An,[e[16]||(e[16]=S("label",{for:"app_custom_welcome_message",class:"setting-label pt-2"},"Custom Welcome Message",-1)),S("textarea",{id:"app_custom_welcome_message",value:t.$store.state.config.app_custom_welcome_message,onInput:e[4]||(e[4]=a=>i.updateValue("app_custom_welcome_message",a.target.value)),class:"input flex-grow min-h-[80px] resize-y",placeholder:"Enter a custom welcome message shown on the main page (leave blank for default)."},null,40,VAn)])]),S("div",BAn,[e[23]||(e[23]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"UI & Behavior",-1)),S("div",FAn,[e[18]||(e[18]=S("label",{for:"auto_title",class:"toggle-label"},[Re(" Automatic Discussion Naming "),S("span",{class:"toggle-description"},"Let AI name your discussions automatically based on the first message.")],-1)),ne(s,{id:"auto_title",checked:t.$store.state.config.auto_title,"onUpdate:checked":e[5]||(e[5]=a=>i.updateBoolean("auto_title",a))},null,8,["checked"])]),S("div",UAn,[e[19]||(e[19]=S("label",{for:"auto_show_browser",class:"toggle-label"},[Re(" Auto-launch Browser "),S("span",{class:"toggle-description"},"Open the default web browser automatically when LoLLMs starts.")],-1)),ne(s,{id:"auto_show_browser",checked:t.$store.state.config.auto_show_browser,"onUpdate:checked":e[6]||(e[6]=a=>i.updateBoolean("auto_show_browser",a))},null,8,["checked"])]),S("div",qAn,[e[20]||(e[20]=S("label",{for:"app_show_changelogs",class:"toggle-label"},[Re(" Show Startup Changelog "),S("span",{class:"toggle-description"},"Display the changelog modal window when the application starts after an update.")],-1)),ne(s,{id:"app_show_changelogs",checked:t.$store.state.config.app_show_changelogs,"onUpdate:checked":e[7]||(e[7]=a=>i.updateBoolean("app_show_changelogs",a))},null,8,["checked"])]),S("div",GAn,[e[21]||(e[21]=S("label",{for:"app_show_fun_facts",class:"toggle-label"},[Re(" Show Fun Facts "),S("span",{class:"toggle-description"},"Display fun facts related to AI and LLMs while loading or waiting.")],-1)),ne(s,{id:"app_show_fun_facts",checked:t.$store.state.config.app_show_fun_facts,"onUpdate:checked":e[8]||(e[8]=a=>i.updateBoolean("app_show_fun_facts",a))},null,8,["checked"])]),S("div",jAn,[e[22]||(e[22]=S("label",{for:"copy_to_clipboard_add_all_details",class:"toggle-label"},[Re(" Enhanced Message Copy "),S("span",{class:"toggle-description"},"Include metadata (sender, model, etc.) when copying messages from discussions.")],-1)),ne(s,{id:"copy_to_clipboard_add_all_details",checked:t.$store.state.config.copy_to_clipboard_add_all_details,"onUpdate:checked":e[9]||(e[9]=a=>i.updateBoolean("copy_to_clipboard_add_all_details",a))},null,8,["checked"])])]),S("div",zAn,[e[26]||(e[26]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Server & Access",-1)),S("div",YAn,[S("div",WAn,[e[24]||(e[24]=tr('

Warning: Enabling this allows connections from any device on your network (or potentially the internet if port-forwarded). Only enable if you understand the risks and have secured your network.

',1)),ne(s,{id:"force_accept_remote_access",checked:t.$store.state.config.force_accept_remote_access,"onUpdate:checked":e[10]||(e[10]=a=>i.updateBoolean("force_accept_remote_access",a))},null,8,["checked"])])]),S("div",KAn,[e[25]||(e[25]=S("label",{for:"headless_server_mode",class:"toggle-label"},[Re(" Headless Server Mode "),S("span",{class:"toggle-description"},"Run LoLLMs without the Web UI. Useful for server deployments or API-only usage. This setting requires a restart.")],-1)),ne(s,{id:"headless_server_mode",checked:t.$store.state.config.headless_server_mode,"onUpdate:checked":e[11]||(e[11]=a=>i.updateBoolean("headless_server_mode",a))},null,8,["checked"])])])])}const RO=Ye(EAn,[["render",ZAn],["__scopeId","data-v-3d0b320b"]]),XAn={name:"DataManagementSettings",components:{ToggleSwitch:n6},props:{loading:{type:Boolean,default:!1},api_post_req:{type:Function,required:!0},api_get_req:{type:Function,required:!0},show_toast:{type:Function,required:!0},client_id:{type:String,required:!0}},emits:["settings-changed"],data(){return{fileInputs:[],serverStatuses:fr({})}},methods:{updateDataLake(t,e,n){const o=JSON.parse(JSON.stringify(this.$store.state.config.datalakes||[]));o[t]?(o[t][e]=n,e==="type"&&(n==="lollmsvectordb"?o[t].url="":o[t].path=""),this.$store.state.config.datalakes=o):console.error("Attempted to update non-existent datalake at index:",t)},addDataLake(){const t=this.$store.state.config.datalakes?[...this.$store.state.config.datalakes]:[];t.push({alias:"New DataLake",type:"lollmsvectordb",url:"",path:"",key:"",mounted:!1}),this.$store.state.config.datalakes=t,Se(()=>Ce.replace())},removeDataLake(t){const e=this.$store.state.config.datalakes.filter((n,o)=>o!==t);this.$store.state.config.datalakes=e},async vectorizeFolder(t){const e=this.$store.state.config.datalakes[t];if(!e||e.type!=="lollmsvectordb"||!e.path){this.show_toast("Please ensure a valid path is set for the LoLLMs VectorDB.",4,!1);return}this.show_toast(`Starting vectorization for: ${e.alias}`,5,!0);try{await this.api_post_req("vectorize_folder",{rag_database:e})}catch(n){this.show_toast(`Vectorization failed for ${e.alias}: ${n.message||n}`,4,!1)}},async selectLollmsVectordbFolder(t){try{const e=n=>{if(n&&n.path&&n.datalake_name){const o=JSON.parse(JSON.stringify(this.$store.state.config.datalakes||[]));o[t]&&(o[t].path=n.path,o[t].alias=n.datalake_name,this.$store.state.config.datalakes=o,this.show_toast(`Folder selected for Data Lake: ${n.path}`,4,!0))}else this.show_toast("Folder selection failed or returned invalid data.",4,!1);Ze.off("lollmsvectordb_datalake_added",e)};Ze.on("lollmsvectordb_datalake_added",e),await this.api_post_req("select_lollmsvectordb_input_folder")}catch(e){this.show_toast(`Failed to initiate folder selection: ${e.message||e}`,4,!1),Ze.off("lollmsvectordb_datalake_added")}},triggerFileInput(t){this.fileInputs[t]?this.fileInputs[t].click():console.warn("File input ref not found for index:",t)},async handleFileUpload(t,e){var r,i,s;const n=Array.from(t.target.files),o=this.$store.state.config.datalakes[e];if(!(!n.length||o.type!=="lightrag")){this.show_toast(`Uploading ${n.length} file(s) to ${o.alias}...`,n.length*2,!0);for(const a of n){const l=new FormData;l.append("file",a),l.append("client_id",this.client_id);const c={"Content-Type":"multipart/form-data"};o.key&&(c["X-API-Key"]=o.key);try{const u=await ce.post(`${o.url.replace(/\/+$/,"")}/documents/upload`,l,{headers:c});u.data&&(u.status===200||u.status===201)?this.show_toast(`${a.name} uploaded successfully to ${o.alias}`,4,!0):this.show_toast(`Failed to upload ${a.name}: ${((r=u.data)==null?void 0:r.detail)||"Server error"}`,4,!1)}catch(u){console.error(`Error uploading ${a.name}:`,u),this.show_toast(`Error uploading ${a.name}: ${((s=(i=u.response)==null?void 0:i.data)==null?void 0:s.detail)||u.message||u}`,4,!1)}}t.target&&(t.target.value=null)}},updateServer(t,e,n){const o=JSON.parse(JSON.stringify(this.$store.state.config.rag_local_services||[]));o[t]?(o[t][e]=n,this.$store.state.config.rag_local_services=o):console.error("Attempted to update non-existent server at index:",t)},addDatabaseService(){const t=this.$store.state.config.rag_local_services?[...this.$store.state.config.rag_local_services]:[];t.push({alias:"New RAG Server",type:"lightrag",url:"http://localhost:9621/",key:"",input_path:"",working_path:"",start_at_startup:!1}),this.$store.state.config.rag_local_services=t,Se(()=>Ce.replace())},removeDatabaseService(t){const e=this.$store.state.config.rag_local_services.filter((n,o)=>o!==t);this.$store.state.config.rag_local_services=e},async startRagServer(t){const e=this.$store.state.config.rag_local_services[t];this.show_toast(`Attempting to start server: ${e.alias}...`,4,!0);try{const n=await this.api_post_req("start_rag_server",{server_index:t});n.status?(this.show_toast(`Start command sent for ${e.alias}. Check status shortly.`,4,!0),setTimeout(()=>this.checkServerHealth(t),5e3)):this.show_toast(`Failed to send start command for ${e.alias}: ${n.error||"Unknown error"}`,4,!1)}catch(n){this.show_toast(`Error starting server ${e.alias}: ${n.message||n}`,4,!1)}},async checkServerHealth(t){if(!this.$store.state.config.rag_local_services||!this.$store.state.config.rag_local_services[t]){console.warn(`Tried to check health for non-existent server index: ${t}`);return}const e=this.$store.state.config.rag_local_services[t];if(!e||e.type!=="lightrag"){this.serverStatuses[t]={status:"unknown",loading:!1,details:null,dotClass:"bg-gray-400",title:"Unsupported",text:"Unsupported Type"};return}this.serverStatuses[t]={status:"loading",loading:!0,details:null,dotClass:"bg-yellow-400 animate-pulse",title:"Checking...",text:"Checking..."};try{const n=`${e.url.replace(/\/+$/,"")}/health`,o={};e.key&&(o["X-API-Key"]=e.key);const r=await fetch(n,{headers:o});if(!r.ok)throw new Error(`HTTP error! status: ${r.status}`);const i=await r.json();this.serverStatuses[t]={status:"healthy",loading:!1,details:i,dotClass:"bg-green-500",title:"Healthy",text:"Healthy"},this.show_toast(`${e.alias} is healthy.`,3,!0)}catch(n){console.error(`Health check failed for ${e.alias}:`,n),this.serverStatuses[t]={status:"unhealthy",loading:!1,details:null,dotClass:"bg-red-500",title:"Unhealthy",text:"Unhealthy"},this.show_toast(`${e.alias} health check failed: ${n.message||n}`,4,!1)}},showLightRagWebUI(t){const e=this.$store.state.config.rag_local_services[t];if(e&&e.type==="lightrag"&&e.url){const n=`${e.url.replace(/\/+$/,"")}/webui`;window.open(n,"_blank")}else this.show_toast("Cannot open WebUI. Invalid server configuration.",4,!1)},async selectLightragFolder(t,e){const n=e==="input"?"select_lightrag_input_folder":"select_lightrag_output_folder",o=e==="input"?"lightrag_input_folder_added":"lightrag_output_folder_added",r=e==="input"?"input_path":"working_path";try{const i=s=>{if(s&&s.path){const a=JSON.parse(JSON.stringify(this.$store.state.config.rag_local_services||[]));a[t]&&(a[t][r]=s.path,this.$store.state.config.rag_local_services=a,this.show_toast(`${e.charAt(0).toUpperCase()+e.slice(1)} folder selected: ${s.path}`,4,!0))}else this.show_toast(`Folder selection failed for ${e}.`,4,!1);Ze.off(o,i)};Ze.on(o,i),await this.api_post_req(n,{server_index:t})}catch(i){this.show_toast(`Failed to initiate ${e} folder selection: ${i.message||i}`,4,!1),Ze.off(o)}},refreshFeatherIcons(){Se(()=>{Ce.replace()})}},mounted(){this.refreshFeatherIcons(),this.$store.state.config.rag_local_services&&this.$store.state.config.rag_local_services.forEach((t,e)=>this.checkServerHealth(e)),this.$store.state.config.datalakes&&(this.fileInputs=new Array(this.$store.state.config.datalakes.length).fill(null))},updated(){if(this.refreshFeatherIcons(),this.$store.state.config.datalakes&&this.fileInputs.length!==this.$store.state.config.datalakes.length){const t=this.$store.state.config.datalakes.length,e=this.fileInputs.length;t>e?this.fileInputs.push(...new Array(t-e).fill(null)):this.fileInputs.splice(t)}},watch:{"config.datalakes.length"(t,e){t>e?this.fileInputs.push(...new Array(t-e).fill(null)):t(N(),H("div",{key:`datalake-${l}`,class:"p-4 bg-blue-100 dark:bg-blue-800/60 border border-blue-200 dark:border-blue-700 rounded-lg shadow-sm space-y-4 relative group"},[S("button",{onClick:c=>i.removeDataLake(l),class:"absolute top-2 right-2 p-1 rounded-full text-red-500 hover:bg-red-100 dark:hover:bg-red-800 opacity-0 group-hover:opacity-100 transition-opacity duration-200 svg-button",title:"Remove Data Lake"},e[15]||(e[15]=[S("i",{"data-feather":"x-circle",class:"w-5 h-5"},null,-1)]),8,rwn),S("div",iwn,[S("div",null,[S("label",{for:`dl-alias-${l}`,class:"label mb-1"},"Alias",8,own),S("input",{type:"text",id:`dl-alias-${l}`,value:a.alias,onInput:c=>i.updateDataLake(l,"alias",c.target.value),class:"input input-sm w-full",placeholder:"Enter alias (e.g., 'Project Docs')"},null,40,swn)]),S("div",null,[S("label",{for:`dl-type-${l}`,class:"label mb-1"},"Type",8,awn),S("select",{id:`dl-type-${l}`,required:"",value:a.type,onChange:c=>i.updateDataLake(l,"type",c.target.value),class:"input input-sm w-full"},e[16]||(e[16]=[S("option",{value:"lollmsvectordb"},"LoLLMs VectorDB",-1),S("option",{value:"lightrag"},"LightRAG",-1),S("option",{value:"elasticsearch"},"Elasticsearch",-1)]),40,lwn)]),S("div",cwn,[S("label",{for:`dl-pathurl-${l}`,class:"label mb-1"},J(a.type==="lollmsvectordb"?"Database Path":a.type==="lightrag"?"LightRAG URL":"Elasticsearch URL"),9,uwn),S("input",{type:"text",id:`dl-pathurl-${l}`,value:a.type==="lollmsvectordb"?a.path:a.url,onInput:c=>i.updateDataLake(l,a.type==="lollmsvectordb"?"path":"url",c.target.value),class:"input input-sm w-full",placeholder:a.type==="lollmsvectordb"?"Path to database folder":"http://host:port/"},null,40,dwn)]),a.type==="lightrag"||a.type==="elasticsearch"?(N(),H("div",Twn,[S("label",{for:`dl-key-${l}`,class:"label mb-1"},"API Key (Optional)",8,fwn),S("input",{type:"password",id:`dl-key-${l}`,value:a.key,onInput:c=>i.updateDataLake(l,"key",c.target.value),class:"input input-sm w-full",placeholder:"Enter API key if required"},null,40,pwn)])):Z("",!0)]),S("div",hwn,[S("div",mwn,[ne(s,{id:`dl-mounted-${l}`,checked:a.mounted,"onUpdate:checked":c=>i.updateDataLake(l,"mounted",c)},null,8,["id","checked","onUpdate:checked"]),S("label",{for:`dl-mounted-${l}`,class:"label !mb-0 text-sm cursor-pointer"}," Mounted ",8,gwn)]),S("div",_wn,[a.type==="lollmsvectordb"?(N(),H(xe,{key:0},[S("button",{onClick:c=>i.vectorizeFolder(l),class:"btn btn-secondary btn-sm",title:"Vectorize or re-vectorize the selected folder"},e[17]||(e[17]=[S("i",{"data-feather":"refresh-cw",class:"w-4 h-4 mr-1"},null,-1),Re(" Vectorize ")]),8,Qwn),S("button",{onClick:c=>i.selectLollmsVectordbFolder(l),class:"btn btn-primary btn-sm",title:"Select folder containing documents to vectorize"},e[18]||(e[18]=[S("i",{"data-feather":"folder-plus",class:"w-4 h-4 mr-1"},null,-1),Re(" Select Folder ")]),8,vwn)],64)):Z("",!0),a.type==="lightrag"?(N(),H(xe,{key:1},[S("button",{onClick:c=>i.triggerFileInput(l),class:"btn btn-success btn-sm",title:"Upload supported files (.txt, .md, .pdf, .docx, .pptx, .xlsx)"},e[19]||(e[19]=[S("i",{"data-feather":"upload",class:"w-4 h-4 mr-1"},null,-1),Re(" Upload Files ")]),8,ywn),S("input",{type:"file",ref_for:!0,ref:c=>{c&&(r.fileInputs[l]=c)},onChange:c=>i.handleFileUpload(c,l),accept:".txt,.md,.pdf,.docx,.pptx,.xlsx",class:"hidden",multiple:""},null,40,bwn)],64)):Z("",!0)])])]))),128))]),S("div",Ewn,[S("button",{onClick:e[0]||(e[0]=(...a)=>i.addDataLake&&i.addDataLake(...a)),class:"btn btn-primary w-full md:w-auto"},e[20]||(e[20]=[S("i",{"data-feather":"plus-circle",class:"w-5 h-5 mr-2"},null,-1),Re(" Add New Data Lake ")]))])]),S("section",Swn,[e[33]||(e[33]=S("h3",{class:"text-xl font-medium text-blue-600 dark:text-blue-300 mb-2"},"Self-Hosted RAG Servers",-1)),e[34]||(e[34]=S("p",{class:"text-sm text-blue-500 dark:text-blue-400 mb-4"}," Configure and manage local RAG server instances (like LightRAG) running on your machine. ",-1)),S("div",xwn,[!t.$store.state.config.rag_local_services||t.$store.state.config.rag_local_services.length===0?(N(),H("div",Lwn," No RAG Servers configured. ")):Z("",!0),(N(!0),H(xe,null,Pe(t.$store.state.config.rag_local_services,(a,l)=>{var c,u,d,f,T,h,g,Q;return N(),H("div",{key:`server-${l}`,class:"p-4 bg-blue-100 dark:bg-blue-800/60 border border-blue-200 dark:border-blue-700 rounded-lg shadow-sm space-y-4 relative group"},[S("button",{onClick:m=>i.removeDatabaseService(l),class:"absolute top-2 right-2 p-1 rounded-full text-red-500 hover:bg-red-100 dark:hover:bg-red-800 opacity-0 group-hover:opacity-100 transition-opacity duration-200 svg-button",title:"Remove Server"},e[23]||(e[23]=[S("i",{"data-feather":"x-circle",class:"w-5 h-5"},null,-1)]),8,Cwn),S("div",Awn,[S("div",null,[S("label",{for:`srv-alias-${l}`,class:"label mb-1"},"Alias",8,wwn),S("input",{type:"text",id:`srv-alias-${l}`,value:a.alias,onInput:m=>i.updateServer(l,"alias",m.target.value),class:"input input-sm w-full",placeholder:"Server Alias"},null,40,Own)]),S("div",null,[S("label",{for:`srv-type-${l}`,class:"label mb-1"},"Type",8,Mwn),S("select",{id:`srv-type-${l}`,required:"",value:a.type,onChange:m=>i.updateServer(l,"type",m.target.value),class:"input input-sm w-full"},e[24]||(e[24]=[S("option",{value:"lightrag"},"LightRAG",-1)]),40,Rwn)]),S("div",Nwn,[S("label",{for:`srv-url-${l}`,class:"label mb-1"},"Server URL",8,Dwn),S("input",{type:"text",id:`srv-url-${l}`,value:a.url,onInput:m=>i.updateServer(l,"url",m.target.value),class:"input input-sm w-full",placeholder:"http://localhost:port"},null,40,Iwn)]),S("div",null,[S("label",{for:`srv-key-${l}`,class:"label mb-1"},"API Key (Optional)",8,kwn),S("input",{type:"password",id:`srv-key-${l}`,value:a.key,onInput:m=>i.updateServer(l,"key",m.target.value),class:"input input-sm w-full",placeholder:"API Key if needed"},null,40,Hwn)]),S("div",Pwn,[S("div",$wn,[ne(s,{id:`srv-startup-${l}`,checked:a.start_at_startup,"onUpdate:checked":m=>i.updateServer(l,"start_at_startup",m)},null,8,["id","checked","onUpdate:checked"]),S("label",{for:`srv-startup-${l}`,class:"label !mb-0 text-sm cursor-pointer"},"Start at Startup",8,Vwn)])]),S("div",null,[S("label",{for:`srv-input-${l}`,class:"label mb-1"},"Input Folder Path",8,Bwn),S("div",Fwn,[S("input",{type:"text",id:`srv-input-${l}`,value:a.input_path,onInput:m=>i.updateServer(l,"input_path",m.target.value),class:"input input-sm w-full rounded-r-none",placeholder:"Path to watch for new files"},null,40,Uwn),S("button",{onClick:m=>i.selectLightragFolder(l,"input"),class:"btn btn-secondary btn-sm rounded-l-none flex-shrink-0",title:"Select Input Folder"},e[25]||(e[25]=[S("i",{"data-feather":"folder",class:"w-4 h-4"},null,-1)]),8,qwn)])]),S("div",null,[S("label",{for:`srv-work-${l}`,class:"label mb-1"},"Working Folder Path",8,Gwn),S("div",jwn,[S("input",{type:"text",id:`srv-work-${l}`,value:a.working_path,onInput:m=>i.updateServer(l,"working_path",m.target.value),class:"input input-sm w-full rounded-r-none",placeholder:"Path for database files"},null,40,zwn),S("button",{onClick:m=>i.selectLightragFolder(l,"output"),class:"btn btn-secondary btn-sm rounded-l-none flex-shrink-0",title:"Select Working Folder"},e[26]||(e[26]=[S("i",{"data-feather":"folder",class:"w-4 h-4"},null,-1)]),8,Ywn)])])]),S("div",Wwn,[S("div",Kwn,[S("span",{class:Ee(["w-3 h-3 rounded-full",((c=r.serverStatuses[l])==null?void 0:c.dotClass)||"bg-status-unknown"]),title:((u=r.serverStatuses[l])==null?void 0:u.title)||"Unknown"},null,10,Zwn),S("span",Xwn,J(((d=r.serverStatuses[l])==null?void 0:d.text)||"Status Unknown"),1),S("button",{onClick:m=>i.checkServerHealth(l),class:"btn btn-secondary btn-sm !p-1",title:"Check Server Status",disabled:(f=r.serverStatuses[l])==null?void 0:f.loading},[S("i",{"data-feather":"refresh-cw",class:Ee(["w-4 h-4",(T=r.serverStatuses[l])!=null&&T.loading?"animate-spin":""])},null,2)],8,Jwn)]),S("div",eOn,[S("button",{onClick:m=>i.startRagServer(l),class:"btn btn-success btn-sm",title:"Start this RAG server instance"},e[27]||(e[27]=[S("i",{"data-feather":"play",class:"w-4 h-4 mr-1"},null,-1),Re(" Start Server ")]),8,tOn),a.type==="lightrag"&&((h=r.serverStatuses[l])==null?void 0:h.status)==="healthy"?(N(),H("button",{key:0,onClick:m=>i.showLightRagWebUI(l),class:"btn btn-primary btn-sm",title:"Open LightRAG Web UI"},e[28]||(e[28]=[S("i",{"data-feather":"external-link",class:"w-4 h-4 mr-1"},null,-1),Re(" Show WebUI ")]),8,nOn)):Z("",!0)])]),a.type==="lightrag"&&r.serverStatuses[l]&&r.serverStatuses[l].status==="healthy"&&r.serverStatuses[l].details?(N(),H("div",rOn,[S("div",null,[e[29]||(e[29]=S("b",{class:"text-blue-600 dark:text-blue-300"},"Indexed Files:",-1)),Re(" "+J(r.serverStatuses[l].details.indexed_files_count??"N/A"),1)]),S("div",null,[e[30]||(e[30]=S("b",{class:"text-blue-600 dark:text-blue-300"},"Model:",-1)),Re(" "+J(((g=r.serverStatuses[l].details.configuration)==null?void 0:g.llm_model)||"N/A"),1)]),S("div",null,[e[31]||(e[31]=S("b",{class:"text-blue-600 dark:text-blue-300"},"Embedding:",-1)),Re(" "+J(((Q=r.serverStatuses[l].details.configuration)==null?void 0:Q.embedding_model)||"N/A"),1)])])):Z("",!0)])}),128))]),S("div",iOn,[S("button",{onClick:e[1]||(e[1]=(...a)=>i.addDatabaseService&&i.addDatabaseService(...a)),class:"btn btn-primary w-full md:w-auto"},e[32]||(e[32]=[S("i",{"data-feather":"plus-circle",class:"w-5 h-5 mr-2"},null,-1),Re(" Add New RAG Server ")]))])]),S("section",oOn,[e[46]||(e[46]=S("h3",{class:"text-xl font-medium text-blue-600 dark:text-blue-300 mb-3"},"LoLLMs VectorDB Settings",-1)),S("div",sOn,[S("div",null,[e[36]||(e[36]=S("label",{for:"rag_vectorizer",class:"label mb-1"},"Vectorizer Engine",-1)),S("select",{id:"rag_vectorizer",required:"",value:t.$store.state.config.rag_vectorizer,onChange:e[2]||(e[2]=a=>t.$store.state.config.rag_vectorizer=a.target.value),class:"input input-sm w-full"},e[35]||(e[35]=[S("option",{value:"semantic"},"Sentence Transformer (Recommended)",-1),S("option",{value:"tfidf"},"TF-IDF (Fast, Less Accurate)",-1),S("option",{value:"openai"},"OpenAI Ada",-1),S("option",{value:"ollama"},"Ollama Embedding",-1)]),40,aOn)]),S("div",lOn,[S("div",cOn,[ne(s,{id:"rag_vectorizer_execute_remote_code",checked:t.$store.state.config.rag_vectorizer_execute_remote_code,"onUpdate:checked":e[3]||(e[3]=a=>t.$store.state.config.rag_vectorizer_execute_remote_code=!!a)},null,8,["checked"]),e[37]||(e[37]=S("label",{for:"rag_vectorizer_execute_remote_code",class:"label !mb-0 text-sm cursor-pointer"},"Allow Remote Code Execution",-1)),e[38]||(e[38]=S("i",{"data-feather":"alert-triangle",class:"w-4 h-4 text-red-500 dark:text-red-400 ml-1",title:"Security Risk: Only enable if using a trusted custom vectorizer source."},null,-1))])]),S("div",uOn,[e[42]||(e[42]=S("label",{for:"rag_vectorizer_model",class:"label mb-1"},"Vectorizer Model",-1)),S("select",{id:"rag_vectorizer_model",value:t.$store.state.config.rag_vectorizer_model,onChange:e[4]||(e[4]=a=>t.$store.state.config.rag_vectorizer_model=a.target.value),class:"input input-sm w-full mb-1",disabled:t.$store.state.config.rag_vectorizer==="tfidf"},[t.$store.state.config.rag_vectorizer==="tfidf"?(N(),H("option",TOn,"N/A for TF-IDF")):Z("",!0),t.$store.state.config.rag_vectorizer==="semantic"?(N(),H("optgroup",fOn,e[39]||(e[39]=[S("option",{value:"BAAI/bge-m3"},"BAAI/bge-m3",-1),S("option",{value:"nvidia/NV-Embed-v2"},"nvidia/NV-Embed-v2",-1),S("option",{value:"sentence-transformers/all-MiniLM-L6-v2"},"all-MiniLM-L6-v2",-1),S("option",{value:"sentence-transformers/all-mpnet-base-v2"},"all-mpnet-base-v2",-1)]))):Z("",!0),t.$store.state.config.rag_vectorizer==="openai"?(N(),H("optgroup",pOn,e[40]||(e[40]=[S("option",{value:"text-embedding-3-large"},"text-embedding-3-large",-1),S("option",{value:"text-embedding-3-small"},"text-embedding-3-small",-1),S("option",{value:"text-embedding-ada-002"},"text-embedding-ada-002 (Legacy)",-1)]))):Z("",!0),t.$store.state.config.rag_vectorizer==="ollama"?(N(),H("optgroup",hOn,e[41]||(e[41]=[S("option",{value:"mxbai-embed-large"},"mxbai-embed-large",-1),S("option",{value:"nomic-embed-text"},"nomic-embed-text",-1),S("option",{value:"all-minilm"},"all-minilm",-1),S("option",{value:"snowflake-arctic-embed"},"snowflake-arctic-embed",-1)]))):Z("",!0)],40,dOn),S("input",{type:"text",value:t.$store.state.config.rag_vectorizer_model,onInput:e[5]||(e[5]=a=>t.$store.state.config.rag_vectorizer_model=a.target.value),class:"input input-sm w-full",placeholder:"Or enter custom model name/path",disabled:t.$store.state.config.rag_vectorizer==="tfidf"},null,40,mOn)]),t.$store.state.config.rag_vectorizer==="ollama"||t.$store.state.config.rag_vectorizer==="openai"?(N(),H("div",gOn,[S("label",_On,J(t.$store.state.config.rag_vectorizer==="ollama"?"Ollama Server URL":"OpenAI API Base URL"),1),S("input",{type:"text",id:"rag_service_url",value:t.$store.state.config.rag_service_url,onInput:e[6]||(e[6]=a=>t.$store.state.config.rag_service_url=a.target.value),class:"input input-sm w-full",placeholder:t.$store.state.config.rag_vectorizer==="ollama"?"http://localhost:11434":"https://api.openai.com/v1"},null,40,QOn)])):Z("",!0)]),S("div",vOn,[e[43]||(e[43]=S("label",{for:"rag_chunk_size-range",class:"setting-label"},"Chunk Size",-1)),S("div",yOn,[S("input",{id:"rag_chunk_size-range",value:t.$store.state.config.rag_chunk_size,onInput:e[7]||(e[7]=a=>t.$store.state.config.rag_chunk_size=parseInt(a.target.value)),type:"range",min:"100",max:"2000",step:"50",class:"range-input flex-grow"},null,40,bOn),S("input",{id:"rag_chunk_size-number",value:t.$store.state.config.rag_chunk_size,onInput:e[8]||(e[8]=a=>t.$store.state.config.rag_chunk_size=parseInt(a.target.value)),type:"number",min:"100",max:"2000",step:"50",class:"input input-sm w-24 text-center"},null,40,EOn)])]),S("div",SOn,[e[44]||(e[44]=S("label",{for:"rag_overlap_size-range",class:"setting-label"},"Overlap Size",-1)),S("div",xOn,[S("input",{id:"rag_overlap_size-range",value:t.$store.state.config.rag_overlap_size,onInput:e[9]||(e[9]=a=>t.$store.state.config.rag_overlap_size=parseInt(a.target.value)),type:"range",min:"0",max:"500",step:"10",class:"range-input flex-grow"},null,40,LOn),S("input",{id:"rag_overlap_size-number",value:t.$store.state.config.rag_overlap_size,onInput:e[10]||(e[10]=a=>t.$store.state.config.rag_overlap_size=parseInt(a.target.value)),type:"number",min:"0",max:"500",step:"10",class:"input input-sm w-24 text-center"},null,40,COn)])]),S("div",AOn,[ne(s,{id:"rag_clean_chunks",checked:t.$store.state.config.rag_clean_chunks,"onUpdate:checked":e[11]||(e[11]=a=>t.$store.state.config.rag_clean_chunks=!!a)},null,8,["checked"]),e[45]||(e[45]=S("label",{for:"rag_clean_chunks",class:"toggle-label !flex-none"},[Re(" Clean Chunks "),S("span",{class:"toggle-description"},"Attempt to remove redundant whitespace and formatting from text chunks before vectorization.")],-1))])]),S("section",wOn,[e[50]||(e[50]=S("h3",{class:"text-xl font-medium text-blue-600 dark:text-blue-300 mb-3"},"RAG Query Settings",-1)),S("div",OOn,[e[47]||(e[47]=S("label",{for:"rag_build_keys_words",class:"toggle-label"},[Re(" Reformulate Query with Keywords "),S("span",{class:"toggle-description"},"Let the AI extract keywords from your prompt to potentially improve database search relevance.")],-1)),ne(s,{id:"rag_build_keys_words",checked:t.$store.state.config.rag_build_keys_words,"onUpdate:checked":e[12]||(e[12]=a=>t.$store.state.config.rag_build_keys_words=!!a)},null,8,["checked"])]),S("div",MOn,[e[48]||(e[48]=S("label",{for:"rag_put_chunk_informations_into_context",class:"toggle-label"},[Re(" Include Chunk Source Info in Context "),S("span",{class:"toggle-description"},"Prepend retrieved text chunks with source information (e.g., filename) when adding to the LLM context.")],-1)),ne(s,{id:"rag_put_chunk_informations_into_context",checked:t.$store.state.config.rag_put_chunk_informations_into_context,"onUpdate:checked":e[13]||(e[13]=a=>t.$store.state.config.rag_put_chunk_informations_into_context=!!a)},null,8,["checked"])]),S("div",ROn,[e[49]||(e[49]=S("label",{for:"data_vectorization_save_db",class:"toggle-label"},[Re(" Persist Vector Database "),S("span",{class:"toggle-description"},"Save the vectorized data to disk. If disabled, the database is in-memory only and lost on restart. (Applies mainly to LoLLMs VectorDB).")],-1)),ne(s,{id:"data_vectorization_save_db",checked:t.$store.state.config.data_vectorization_save_db,"onUpdate:checked":e[14]||(e[14]=a=>t.$store.state.config.data_vectorization_save_db=!!a)},null,8,["checked"])])])])}const NO=Ye(XAn,[["render",NOn],["__scopeId","data-v-52537129"]]),DOn={name:"InternetSettings",components:{ToggleSwitch:n6},props:{loading:{type:Boolean,default:!1}},emits:["update:setting"],data(){return{}},methods:{updateValue(t,e){const o=["internet_nb_search_pages","internet_vectorization_chunk_size","internet_vectorization_overlap_size","internet_vectorization_nb_chunks"].includes(t)?Number(e)||0:e;this.$emit("update:setting",{key:t,value:o})},updateBoolean(t,e){this.$emit("update:setting",{key:t,value:!!e})},replaceFeatherIcons(){Se(()=>{try{typeof Ce<"u"&&Ce&&typeof Ce.replace=="function"&&Ce.replace()}catch(t){console.error("Feather icons replacement failed:",t)}})}},mounted(){this.replaceFeatherIcons()},updated(){this.replaceFeatherIcons()}},IOn={class:"user-settings-panel space-y-6"},kOn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},HOn={class:"toggle-item"},POn={class:"setting-item"},$On={class:"flex-1 flex items-center gap-4"},VOn=["value","disabled"],BOn=["value","disabled"],FOn={class:"setting-item"},UOn={class:"flex-1 flex items-center gap-4"},qOn=["value","disabled"],GOn=["value","disabled"],jOn={class:"setting-item"},zOn={class:"flex-1 flex items-center gap-4"},YOn=["value","disabled"],WOn=["value","disabled"],KOn={class:"setting-item"},ZOn={class:"flex-1 flex items-center gap-4"},XOn=["value","disabled"],JOn=["value","disabled"];function eMn(t,e,n,o,r,i){const s=ze("ToggleSwitch");return N(),H("div",IOn,[e[22]||(e[22]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 border-b border-blue-300 dark:border-blue-600 pb-2"}," Internet Search ",-1)),e[23]||(e[23]=S("p",{class:"text-sm text-blue-600 dark:text-blue-400 mb-4"}," Configure how LoLLMs interacts with the internet to answer questions or find information. Requires a model capable of function calling or specific instruction following. ",-1)),S("section",kOn,[e[16]||(e[16]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Activation & Behavior",-1)),S("div",HOn,[e[12]||(e[12]=S("label",{for:"activate_internet_search",class:"toggle-label"},[Re(" Enable Automatic Internet Search "),S("span",{class:"toggle-description"},"Allow the AI to decide when to search the internet based on the prompt.")],-1)),ne(s,{id:"activate_internet_search",checked:t.$store.state.config.activate_internet_search,"onUpdate:checked":e[0]||(e[0]=a=>i.updateBoolean("activate_internet_search",a))},null,8,["checked"])]),S("div",{class:Ee(["toggle-item",{"opacity-50 pointer-events-none":!t.$store.state.config.activate_internet_search}])},[e[13]||(e[13]=S("label",{for:"internet_activate_search_decision",class:"toggle-label"},[Re(" Enable Explicit Search Decision "),S("span",{class:"toggle-description"},"Make the AI explicitly state whether it needs to search the internet before performing the search.")],-1)),ne(s,{id:"internet_activate_search_decision",checked:t.$store.state.config.internet_activate_search_decision,"onUpdate:checked":e[1]||(e[1]=a=>i.updateBoolean("internet_activate_search_decision",a)),disabled:!t.$store.state.config.activate_internet_search},null,8,["checked","disabled"])],2),S("div",{class:Ee(["toggle-item",{"opacity-50 pointer-events-none":!t.$store.state.config.activate_internet_search}])},[e[14]||(e[14]=S("label",{for:"activate_internet_pages_judgement",class:"toggle-label"},[Re(" Enable Search Result Evaluation "),S("span",{class:"toggle-description"},"Allow the AI to evaluate the relevance and quality of search result snippets before using them.")],-1)),ne(s,{id:"activate_internet_pages_judgement",checked:t.$store.state.config.activate_internet_pages_judgement,"onUpdate:checked":e[2]||(e[2]=a=>i.updateBoolean("activate_internet_pages_judgement",a)),disabled:!t.$store.state.config.activate_internet_search},null,8,["checked","disabled"])],2),S("div",{class:Ee(["toggle-item",{"opacity-50 pointer-events-none":!t.$store.state.config.activate_internet_search}])},[e[15]||(e[15]=S("label",{for:"internet_quick_search",class:"toggle-label"},[Re(" Enable Quick Search "),S("span",{class:"toggle-description"},"Perform a faster search potentially using fewer results or less processing, might be less accurate.")],-1)),ne(s,{id:"internet_quick_search",checked:t.$store.state.config.internet_quick_search,"onUpdate:checked":e[3]||(e[3]=a=>i.updateBoolean("internet_quick_search",a)),disabled:!t.$store.state.config.activate_internet_search},null,8,["checked","disabled"])],2)]),S("section",{class:Ee(["space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color",t.$store.state.config.activate_internet_search?"":"opacity-50 pointer-events-none"])},[e[21]||(e[21]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Search Parameters",-1)),S("div",POn,[e[17]||(e[17]=S("label",{for:"internet_nb_search_pages",class:"setting-label"},[Re(" Number of Search Results "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"},"Controls how many search result snippets are initially retrieved.")],-1)),S("div",$On,[S("input",{id:"internet_nb_search_pages-range",value:t.$store.state.config.internet_nb_search_pages,onInput:e[4]||(e[4]=a=>i.updateValue("internet_nb_search_pages",a.target.value)),type:"range",min:"1",max:"20",step:"1",class:"range-input",disabled:!t.$store.state.config.activate_internet_search},null,40,VOn),S("input",{id:"internet_nb_search_pages-number",value:t.$store.state.config.internet_nb_search_pages,onInput:e[5]||(e[5]=a=>i.updateValue("internet_nb_search_pages",a.target.value)),type:"number",min:"1",max:"20",step:"1",class:"input-sm w-20 text-center",disabled:!t.$store.state.config.activate_internet_search},null,40,BOn)])]),S("div",FOn,[e[18]||(e[18]=S("label",{for:"internet_vectorization_chunk_size",class:"setting-label"},[Re(" Content Chunk Size "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"},"Size of text chunks when processing content from searched web pages (if applicable).")],-1)),S("div",UOn,[S("input",{id:"internet_vectorization_chunk_size-range",value:t.$store.state.config.internet_vectorization_chunk_size,onInput:e[6]||(e[6]=a=>i.updateValue("internet_vectorization_chunk_size",a.target.value)),type:"range",min:"100",max:"1000",step:"50",class:"range-input",disabled:!t.$store.state.config.activate_internet_search},null,40,qOn),S("input",{id:"internet_vectorization_chunk_size-number",value:t.$store.state.config.internet_vectorization_chunk_size,onInput:e[7]||(e[7]=a=>i.updateValue("internet_vectorization_chunk_size",a.target.value)),type:"number",min:"100",max:"1000",step:"50",class:"input-sm w-20 text-center",disabled:!t.$store.state.config.activate_internet_search},null,40,GOn)])]),S("div",jOn,[e[19]||(e[19]=S("label",{for:"internet_vectorization_overlap_size",class:"setting-label"},[Re(" Content Overlap Size "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"},"Overlap between text chunks when processing web page content.")],-1)),S("div",zOn,[S("input",{id:"internet_vectorization_overlap_size-range",value:t.$store.state.config.internet_vectorization_overlap_size,onInput:e[8]||(e[8]=a=>i.updateValue("internet_vectorization_overlap_size",a.target.value)),type:"range",min:"0",max:"200",step:"10",class:"range-input",disabled:!t.$store.state.config.activate_internet_search},null,40,YOn),S("input",{id:"internet_vectorization_overlap_size-number",value:t.$store.state.config.internet_vectorization_overlap_size,onInput:e[9]||(e[9]=a=>i.updateValue("internet_vectorization_overlap_size",a.target.value)),type:"number",min:"0",max:"200",step:"10",class:"input-sm w-20 text-center",disabled:!t.$store.state.config.activate_internet_search},null,40,WOn)])]),S("div",KOn,[e[20]||(e[20]=S("label",{for:"internet_vectorization_nb_chunks",class:"setting-label"},[Re(" Number of Content Chunks to Use "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"},"Maximum number of processed text chunks from web pages to include in the context.")],-1)),S("div",ZOn,[S("input",{id:"internet_vectorization_nb_chunks-range",value:t.$store.state.config.internet_vectorization_nb_chunks,onInput:e[10]||(e[10]=a=>i.updateValue("internet_vectorization_nb_chunks",a.target.value)),type:"range",min:"1",max:"20",step:"1",class:"range-input",disabled:!t.$store.state.config.activate_internet_search},null,40,XOn),S("input",{id:"internet_vectorization_nb_chunks-number",value:t.$store.state.config.internet_vectorization_nb_chunks,onInput:e[11]||(e[11]=a=>i.updateValue("internet_vectorization_nb_chunks",a.target.value)),type:"number",min:"1",max:"20",step:"1",class:"input-sm w-20 text-center",disabled:!t.$store.state.config.activate_internet_search},null,40,JOn)])])],2)])}const DO=Ye(DOn,[["render",eMn],["__scopeId","data-v-4777608e"]]),tMn={class:"user-settings-panel space-y-6"},nMn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},rMn={class:"grid grid-cols-1 gap-4"},iMn={class:"setting-item"},oMn={class:"flex items-center gap-2 flex-grow"},sMn=["value"],aMn=["value"],lMn=["disabled"],cMn={class:"setting-item"},uMn={class:"flex items-center gap-2 flex-grow"},dMn=["value"],TMn=["value"],fMn=["disabled"],pMn={class:"setting-item"},hMn={class:"flex items-center gap-2 flex-grow"},mMn=["value"],gMn=["value"],_Mn=["disabled"],QMn={class:"setting-item"},vMn={class:"flex items-center gap-2 flex-grow"},yMn=["value"],bMn=["value"],EMn=["disabled"],SMn={class:"setting-item"},xMn={class:"flex items-center gap-2 flex-grow"},LMn=["value"],CMn=["value"],AMn=["disabled"],wMn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},OMn={class:"grid grid-cols-1 md:grid-cols-2 gap-x-6 gap-y-4"},MMn={class:"setting-item !items-center"},RMn=["value"],NMn={class:"setting-item !items-center"},DMn=["value"],IMn={class:"setting-item !items-center"},kMn=["value"],HMn={class:"setting-item !items-center"},PMn=["value"],$Mn={class:"setting-item !items-center"},VMn=["value"],BMn={class:"setting-item !items-center"},FMn=["value"],UMn={class:"setting-item !items-center"},qMn=["value"],GMn={class:"toggle-item md:col-span-2"},jMn=["value","disabled"],zMn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},YMn={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},WMn={class:"setting-item"},KMn=["value"],ZMn=["value"],XMn={class:"setting-item"},JMn=["value"],eRn=["value"],tRn={__name:"ServicesZooSettings",props:{loading:{type:Boolean,default:!1},api_post_req:{type:Function,required:!0},api_get_req:{type:Function,required:!0},show_toast:{type:Function,required:!0},show_yes_no_dialog:{type:Function,required:!0},show_universal_form:{type:Function,required:!0},client_id:{type:String,required:!0}},emits:["update:setting"],setup(t,{emit:e}){const n=t,o=e,r=Ve([]),i=Ve([]),s=Ve([]),a=Ve([]),l=Ve([]),c=Ve([]),u=Ve([]),d=Ve([]),f=Ve([]),T=(v,b)=>{const E=["stt_listening_threshold","stt_silence_duration","stt_sound_threshold_percentage","stt_gain","stt_rate","stt_channels","stt_buffer_size"].includes(v)?parseInt(b)||0:b;o("update:setting",{key:v,value:E})},h=(v,b)=>{o("update:setting",{key:v,value:!!b})},g=async()=>{try{const[v,b,y,E,x]=await Promise.all([n.api_post_req("list_tts_services"),n.api_post_req("list_stt_services"),n.api_post_req("list_tti_services"),n.api_post_req("list_ttm_services"),n.api_post_req("list_ttv_services")]);r.value=v||[],i.value=b||[],s.value=y||[],a.value=E||[],l.value=x||[]}catch(v){n.show_toast("Failed to fetch service lists.",4,!1),console.error("Error fetching service lists:",v)}},Q=async()=>{try{const[v,b]=await Promise.all([n.api_get_req("get_snd_input_devices"),n.api_get_req("get_snd_output_devices")]);c.value=(v==null?void 0:v.device_names)||[],u.value=(v==null?void 0:v.device_indexes)||[],d.value=(b==null?void 0:b.device_names)||[],f.value=(b==null?void 0:b.device_indexes)||[]}catch(v){n.show_toast("Failed to fetch audio devices.",4,!1),console.error("Error fetching audio devices:",v)}},m=()=>{n.show_toast("Refreshing audio devices...",2,!0),Q()},_=async(v,b)=>{if(!b||b==="None"||b==="browser"){n.show_toast(`No configurable settings for '${b}'.`,3,!1);return}const y={tts:"get_active_tts_settings",stt:"get_active_stt_settings",tti:"get_active_tti_settings",ttm:"get_active_ttm_settings",ttv:"get_active_ttv_settings"},E={tts:"set_active_tts_settings",stt:"set_active_stt_settings",tti:"set_active_tti_settings",ttm:"set_active_ttm_settings",ttv:"set_active_ttv_settings"},x=y[v],L=E[v];if(!(!x||!L))try{const C=await n.api_post_req(x);if(C&&Object.keys(C).length>0){const A=await n.show_universal_form(C,`${b} Settings`,"Save","Cancel"),O=await n.api_post_req(L,{settings:A});O&&O.status?n.show_toast(`${b} settings updated successfully!`,4,!0):n.show_toast(`Failed to update ${b} settings: ${(O==null?void 0:O.error)||"Unknown error"}`,4,!1)}else n.show_toast(`${b} has no configurable settings.`,4,!1)}catch(C){n.show_toast(`Error fetching/setting ${b} settings: ${C.message}`,4,!1),console.error(`Error with ${b} settings:`,C)}};return Hr(()=>{g(),Q(),Se(()=>{Ce.replace()})}),N2(()=>{Se(()=>{Ce.replace()})}),(v,b)=>(N(),H("div",tMn,[b[53]||(b[53]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 border-b border-blue-300 dark:border-blue-600 pb-2"}," Services Zoo & Audio ",-1)),S("section",nMn,[b[37]||(b[37]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Default Service Selection",-1)),b[38]||(b[38]=S("p",{class:"text-xs text-blue-500 dark:text-blue-400 mb-4"}," Choose the default services LoLLMs will use for various tasks. Specific personalities might override these. ",-1)),S("div",rMn,[S("div",iMn,[b[24]||(b[24]=S("label",{for:"active_tts_service",class:"setting-label"},"Text-to-Speech (TTS)",-1)),S("div",oMn,[S("select",{id:"active_tts_service",value:v.$store.state.config.active_tts_service,onChange:b[0]||(b[0]=y=>T("active_tts_service",y.target.value)),class:"input flex-grow"},[b[21]||(b[21]=S("option",{value:"None"},"None",-1)),b[22]||(b[22]=S("option",{value:"browser"},"Browser TTS",-1)),(N(!0),H(xe,null,Pe(r.value,y=>(N(),H("option",{key:`tts-${y.name}`,value:y.name},J(y.caption||y.name),9,aMn))),128))],40,sMn),S("button",{onClick:b[1]||(b[1]=y=>_("tts",v.$store.state.config.active_tts_service)),disabled:!v.$store.state.config.active_tts_service||v.$store.state.config.active_tts_service==="None"||v.$store.state.config.active_tts_service==="browser",class:"btn btn-secondary btn-sm p-2 flex-shrink-0",title:"Configure Selected TTS Service"},b[23]||(b[23]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 feather feather-settings"},[S("circle",{cx:"12",cy:"12",r:"3"}),S("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"})],-1)]),8,lMn)])]),S("div",cMn,[b[27]||(b[27]=S("label",{for:"active_stt_service",class:"setting-label"},"Speech-to-Text (STT)",-1)),S("div",uMn,[S("select",{id:"active_stt_service",value:v.$store.state.config.active_stt_service,onChange:b[2]||(b[2]=y=>T("active_stt_service",y.target.value)),class:"input flex-grow"},[b[25]||(b[25]=S("option",{value:"None"},"None",-1)),(N(!0),H(xe,null,Pe(i.value,y=>(N(),H("option",{key:`stt-${y.name}`,value:y.name},J(y.caption||y.name),9,TMn))),128))],40,dMn),S("button",{onClick:b[3]||(b[3]=y=>_("stt",v.$store.state.config.active_stt_service)),disabled:!v.$store.state.config.active_stt_service||v.$store.state.config.active_stt_service==="None",class:"btn btn-secondary btn-sm p-2 flex-shrink-0",title:"Configure Selected STT Service"},b[26]||(b[26]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 feather feather-settings"},[S("circle",{cx:"12",cy:"12",r:"3"}),S("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"})],-1)]),8,fMn)])]),S("div",pMn,[b[30]||(b[30]=S("label",{for:"active_tti_service",class:"setting-label"},"Text-to-Image (TTI)",-1)),S("div",hMn,[S("select",{id:"active_tti_service",value:v.$store.state.config.active_tti_service,onChange:b[4]||(b[4]=y=>T("active_tti_service",y.target.value)),class:"input flex-grow"},[b[28]||(b[28]=S("option",{value:"None"},"None",-1)),(N(!0),H(xe,null,Pe(s.value,y=>(N(),H("option",{key:`tti-${y.name}`,value:y.name},J(y.caption||y.name),9,gMn))),128))],40,mMn),S("button",{onClick:b[5]||(b[5]=y=>_("tti",v.$store.state.config.active_tti_service)),disabled:!v.$store.state.config.active_tti_service||v.$store.state.config.active_tti_service==="None",class:"btn btn-secondary btn-sm p-2 flex-shrink-0",title:"Configure Selected TTI Service"},b[29]||(b[29]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 feather feather-settings"},[S("circle",{cx:"12",cy:"12",r:"3"}),S("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"})],-1)]),8,_Mn)])]),S("div",QMn,[b[33]||(b[33]=S("label",{for:"active_ttm_service",class:"setting-label"},"Text-to-Music (TTM)",-1)),S("div",vMn,[S("select",{id:"active_ttm_service",value:v.$store.state.config.active_ttm_service,onChange:b[6]||(b[6]=y=>T("active_ttm_service",y.target.value)),class:"input flex-grow"},[b[31]||(b[31]=S("option",{value:"None"},"None",-1)),(N(!0),H(xe,null,Pe(a.value,y=>(N(),H("option",{key:`ttm-${y.name}`,value:y.name},J(y.caption||y.name),9,bMn))),128))],40,yMn),S("button",{onClick:b[7]||(b[7]=y=>_("ttm",v.$store.state.config.active_ttm_service)),disabled:!v.$store.state.config.active_ttm_service||v.$store.state.config.active_ttm_service==="None",class:"btn btn-secondary btn-sm p-2 flex-shrink-0",title:"Configure Selected TTM Service"},b[32]||(b[32]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 feather feather-settings"},[S("circle",{cx:"12",cy:"12",r:"3"}),S("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"})],-1)]),8,EMn)])]),S("div",SMn,[b[36]||(b[36]=S("label",{for:"active_ttv_service",class:"setting-label"},"Text-to-Video (TTV)",-1)),S("div",xMn,[S("select",{id:"active_ttv_service",value:v.$store.state.config.active_ttv_service,onChange:b[8]||(b[8]=y=>T("active_ttv_service",y.target.value)),class:"input flex-grow"},[b[34]||(b[34]=S("option",{value:"None"},"None",-1)),(N(!0),H(xe,null,Pe(l.value,y=>(N(),H("option",{key:`ttv-${y.name}`,value:y.name},J(y.caption||y.name),9,CMn))),128))],40,LMn),S("button",{onClick:b[9]||(b[9]=y=>_("ttv",v.$store.state.config.active_ttv_service)),disabled:!v.$store.state.config.active_ttv_service||v.$store.state.config.active_ttv_service==="None",class:"btn btn-secondary btn-sm p-2 flex-shrink-0",title:"Configure Selected TTV Service"},b[35]||(b[35]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 feather feather-settings"},[S("circle",{cx:"12",cy:"12",r:"3"}),S("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"})],-1)]),8,AMn)])])])]),S("section",wMn,[b[48]||(b[48]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Audio Input / STT Settings",-1)),S("div",OMn,[S("div",MMn,[b[39]||(b[39]=S("label",{for:"stt_listening_threshold",class:"setting-label"},"Listening Threshold",-1)),S("input",{id:"stt_listening_threshold",value:v.$store.state.config.stt_listening_threshold,onInput:b[10]||(b[10]=y=>T("stt_listening_threshold",parseInt(y.target.value))),type:"number",min:"0",step:"10",class:"input-sm w-24"},null,40,RMn)]),S("div",NMn,[b[40]||(b[40]=S("label",{for:"stt_silence_duration",class:"setting-label"},"Silence Duration (s)",-1)),S("input",{id:"stt_silence_duration",value:v.$store.state.config.stt_silence_duration,onInput:b[11]||(b[11]=y=>T("stt_silence_duration",parseInt(y.target.value))),type:"number",min:"0",step:"1",class:"input-sm w-24"},null,40,DMn)]),S("div",IMn,[b[41]||(b[41]=S("label",{for:"stt_sound_threshold_percentage",class:"setting-label"},"Min Sound Percentage",-1)),S("input",{id:"stt_sound_threshold_percentage",value:v.$store.state.config.stt_sound_threshold_percentage,onInput:b[12]||(b[12]=y=>T("stt_sound_threshold_percentage",parseInt(y.target.value))),type:"number",min:"0",max:"100",step:"1",class:"input-sm w-24"},null,40,kMn)]),S("div",HMn,[b[42]||(b[42]=S("label",{for:"stt_gain",class:"setting-label"},"Volume Amplification",-1)),S("input",{id:"stt_gain",value:v.$store.state.config.stt_gain,onInput:b[13]||(b[13]=y=>T("stt_gain",parseInt(y.target.value))),type:"number",min:"0",step:"1",class:"input-sm w-24"},null,40,PMn)]),S("div",$Mn,[b[43]||(b[43]=S("label",{for:"stt_rate",class:"setting-label"},"Audio Rate (Hz)",-1)),S("input",{id:"stt_rate",value:v.$store.state.config.stt_rate,onInput:b[14]||(b[14]=y=>T("stt_rate",parseInt(y.target.value))),type:"number",min:"8000",step:"1000",class:"input-sm w-24"},null,40,VMn)]),S("div",BMn,[b[44]||(b[44]=S("label",{for:"stt_channels",class:"setting-label"},"Channels",-1)),S("input",{id:"stt_channels",value:v.$store.state.config.stt_channels,onInput:b[15]||(b[15]=y=>T("stt_channels",parseInt(y.target.value))),type:"number",min:"1",max:"2",step:"1",class:"input-sm w-24"},null,40,FMn)]),S("div",UMn,[b[45]||(b[45]=S("label",{for:"stt_buffer_size",class:"setting-label"},"Buffer Size",-1)),S("input",{id:"stt_buffer_size",value:v.$store.state.config.stt_buffer_size,onInput:b[16]||(b[16]=y=>T("stt_buffer_size",parseInt(y.target.value))),type:"number",min:"512",step:"512",class:"input-sm w-24"},null,40,qMn)]),S("div",GMn,[b[46]||(b[46]=S("label",{for:"stt_activate_word_detection",class:"toggle-label"},"Activate Wake Word Detection",-1)),ne(n6,{id:"stt_activate_word_detection",checked:v.$store.state.config.stt_activate_word_detection,"onUpdate:checked":b[17]||(b[17]=y=>h("stt_activate_word_detection",y))},null,8,["checked"])]),S("div",{class:Ee(["setting-item md:col-span-2",{"opacity-50 pointer-events-none":!v.$store.state.config.stt_activate_word_detection}])},[b[47]||(b[47]=S("label",{for:"stt_word_detection_file",class:"setting-label"},"Wake Word File (.wav)",-1)),S("input",{type:"text",id:"stt_word_detection_file",value:v.$store.state.config.stt_word_detection_file,onInput:b[18]||(b[18]=y=>T("stt_word_detection_file",y.target.value)),class:"input flex-grow",placeholder:"Path to wake word wav file",disabled:!v.$store.state.config.stt_activate_word_detection},null,40,jMn)],2)])]),S("section",zMn,[b[52]||(b[52]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Audio Devices",-1)),S("button",{onClick:m,class:"btn btn-secondary btn-sm mb-2",title:"Rescan for audio devices"},b[49]||(b[49]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 mr-1 feather feather-refresh-cw"},[S("polyline",{points:"23 4 23 10 17 10"}),S("polyline",{points:"1 20 1 14 7 14"}),S("path",{d:"M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15"})],-1),Re(" Refresh Devices ")])),S("div",YMn,[S("div",WMn,[b[50]||(b[50]=S("label",{for:"stt_input_device",class:"setting-label"},"Audio Input Device",-1)),S("select",{id:"stt_input_device",value:v.$store.state.config.stt_input_device,onChange:b[19]||(b[19]=y=>T("stt_input_device",parseInt(y.target.value))),class:"input flex-grow"},[(N(!0),H(xe,null,Pe(c.value,(y,E)=>(N(),H("option",{key:`in-${E}`,value:u.value[E]},J(y),9,ZMn))),128))],40,KMn)]),S("div",XMn,[b[51]||(b[51]=S("label",{for:"tts_output_device",class:"setting-label"},"Audio Output Device",-1)),S("select",{id:"tts_output_device",value:v.$store.state.config.tts_output_device,onChange:b[20]||(b[20]=y=>T("tts_output_device",parseInt(y.target.value))),class:"input flex-grow"},[(N(!0),H(xe,null,Pe(d.value,(y,E)=>(N(),H("option",{key:`out-${E}`,value:f.value[E]},J(y),9,eRn))),128))],40,JMn)])])])]))}},IO=Ye(tRn,[["__scopeId","data-v-a1a76c2e"]]),t5="/assets/logo-CQZwS0X1.svg",nRn={name:"DynamicUIRenderer",props:{ui:{type:String,required:!0},instanceId:{type:String,required:!0}},data(){return{containerId:`dynamic-ui-${this.instanceId}`}},watch:{ui:{immediate:!0,handler(t){console.log(`UI prop changed for instance ${this.instanceId}:`,t),this.$nextTick(()=>{this.renderContent()})}}},methods:{renderContent(){console.log(`Rendering content for instance ${this.instanceId}...`);const t=this.$refs.container,n=new DOMParser().parseFromString(this.ui,"text/html"),o=n.getElementsByTagName("style");Array.from(o).forEach(i=>{const s=document.createElement("style");s.textContent=this.scopeCSS(i.textContent),document.head.appendChild(s)}),t.innerHTML=n.body.innerHTML;const r=n.getElementsByTagName("script");Array.from(r).forEach(i=>{const s=document.createElement("script");s.textContent=i.textContent,t.appendChild(s)})},scopeCSS(t){return t.replace(/([^\r\n,{}]+)(,(?=[^}]*{)|\s*{)/g,`#${this.containerId} $1$2`)}}},rRn=["id"];function iRn(t,e,n,o,r,i){return N(),H("div",{id:r.containerId,ref:"container"},null,8,rRn)}const Rk=Ye(nRn,[["render",iRn]]),JT="/",oRn={name:"BindingEntry",components:{DynamicUIRenderer:Rk},props:{binding:{type:Object,required:!0},selected:{type:Boolean,default:!1},isProcessing:{type:Boolean,default:!1}},emits:["select","install","uninstall","reinstall","settings","reload-binding"],mounted(){this.updateIcons()},updated(){this.updateIcons()},methods:{updateIcons(){Se(()=>{try{Ce.replace({width:"1em",height:"1em"})}catch(t){console.error("Feather icons replacement failed:",t)}})},copyToClipBoard(t){if(!t){console.warn("Attempted to copy empty text.");return}navigator.clipboard?navigator.clipboard.writeText(t).then(()=>{console.log("Copied to clipboard:",t)}).catch(e=>{console.error("Failed to copy text using navigator.clipboard: ",e),this.fallbackCopyToClipboard(t)}):(console.warn("Clipboard API not available, attempting fallback."),this.fallbackCopyToClipboard(t))},fallbackCopyToClipboard(t){const e=document.createElement("textarea");e.value=t,e.style.position="absolute",e.style.left="-9999px",document.body.appendChild(e),e.focus(),e.select();try{document.execCommand("copy")?console.log("Fallback copy successful:",t):console.error("Fallback copy command failed.")}catch(n){console.error("Error during fallback copy command:",n)}document.body.removeChild(e)},getImgUrl(){return!this.binding||typeof this.binding.icon!="string"||this.binding.icon.trim()===""?t5:/^(https?:)?\/\//.test(this.binding.icon)||this.binding.icon.startsWith("/")?this.binding.icon:(JT.endsWith("/")?JT:`${JT}/`)+this.binding.icon},defaultImg(t){t.target.src!==t5&&(t.target.src=t5)},emitSelect(){this.isProcessing||this.$emit("select",this.binding)},emitInstall(){this.isProcessing||this.$emit("install",this.binding)},emitUninstall(){this.isProcessing||this.$emit("uninstall",this.binding)},emitReinstall(){this.isProcessing||this.$emit("reinstall",this.binding)},emitReloadBinding(){this.isProcessing||this.$emit("reload-binding",this.binding)},emitSettings(){this.isProcessing||this.$emit("settings",this.binding)}},watch:{selected(){this.updateIcons()},isProcessing(){this.updateIcons()},"binding.installed"(){this.updateIcons()},"binding.ui"(){this.updateIcons()}}},sRn=["title"],aRn={class:"flex flex-row items-center gap-3 mb-2"},lRn=["src"],cRn={class:"font-bold text-lg truncate text-gray-800 dark:text-white flex-grow"},uRn={key:0,class:"ml-2 text-xs font-medium text-green-600 dark:text-green-400"},dRn={key:1,class:"ml-2 text-xs font-medium text-yellow-600 dark:text-yellow-400"},TRn={class:"flex-none flex items-center gap-1"},fRn={class:"text-sm text-gray-600 dark:text-gray-400 space-y-1 mb-3"},pRn={class:"flex items-center"},hRn={class:"truncate"},mRn={class:"flex items-center"},gRn={class:"truncate font-mono text-xs bg-gray-100 dark:bg-gray-700 px-1 py-0.5 rounded"},_Rn=["disabled"],QRn={class:"flex items-center"},vRn={class:"flex items-center"},yRn=["href"],bRn={class:"flex items-start pt-1"},ERn=["title","innerHTML"],SRn={class:"flex items-center justify-end gap-2 border-t border-gray-200 dark:border-gray-700 pt-3 min-h-[44px]"},xRn={key:0,class:"flex items-center justify-center text-gray-500 dark:text-gray-400 w-full"};function LRn(t,e,n,o,r,i){const s=ze("DynamicUIRenderer");return N(),H("div",{class:Ee(["items-start p-4 rounded-lg mb-2 shadow-lg border-2 cursor-pointer select-none transition-all duration-150 ease-in-out group",{"border-primary bg-primary-light dark:bg-primary-dark":n.selected,"hover:bg-gray-100 dark:hover:bg-gray-700":!n.selected&&!n.isProcessing,"border-transparent bg-white dark:bg-gray-800":!n.selected,"opacity-70 cursor-wait":n.isProcessing}]),title:n.binding.description||n.binding.name,onClick:e[8]||(e[8]=oe(a=>n.isProcessing?null:i.emitSelect(),["stop"]))},[S("div",null,[S("div",aRn,[S("img",{ref:"imgElement",src:i.getImgUrl(),onError:e[0]||(e[0]=a=>i.defaultImg(a)),class:Ee(["w-10 h-10 rounded-full object-fill flex-shrink-0 border border-gray-200 dark:border-gray-600",{"ring-2 ring-offset-2 ring-green-500 dark:ring-offset-gray-800":n.binding.installed&&!n.isProcessing,"ring-2 ring-offset-2 ring-yellow-500 dark:ring-offset-gray-800 animate-pulse":n.isProcessing}])},null,42,lRn),S("h3",cRn,[Re(J(n.binding.name)+" ",1),n.binding.installed&&!n.isProcessing?(N(),H("span",uRn,"(Installed)")):Z("",!0),n.isProcessing?(N(),H("span",dRn,"(Processing...)")):Z("",!0)]),S("div",TRn,[n.selected&&n.binding.installed&&!n.isProcessing?(N(),H("button",{key:0,type:"button",title:"Reload binding",onClick:e[1]||(e[1]=oe((...a)=>i.emitReloadBinding&&i.emitReloadBinding(...a),["stop"])),class:"text-gray-500 hover:text-secondary dark:text-gray-400 dark:hover:text-secondary-light duration-150 active:scale-90 font-medium rounded-lg text-sm p-1.5 text-center inline-flex items-center focus:outline-none focus:ring-2 focus:ring-gray-300 dark:focus:ring-gray-600"},e[9]||(e[9]=[S("i",{"data-feather":"refresh-cw",class:"w-5 h-5"},null,-1),S("span",{class:"sr-only"},"Reload Binding",-1)]))):Z("",!0)])]),n.binding.ui?(N(),ot(s,{key:0,class:"w-full h-full mb-3 border-t pt-3 border-gray-200 dark:border-gray-700",code:n.binding.ui},null,8,["code"])):Z("",!0),S("div",fRn,[S("div",pRn,[e[10]||(e[10]=S("i",{"data-feather":"user",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[11]||(e[11]=S("b",{class:"mr-1 font-medium text-gray-700 dark:text-gray-300"},"Author:",-1)),S("span",hRn,J(n.binding.author),1)]),S("div",mRn,[e[13]||(e[13]=S("i",{"data-feather":"folder",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[14]||(e[14]=S("b",{class:"mr-1 font-medium text-gray-700 dark:text-gray-300"},"Folder:",-1)),S("span",gRn,J(n.binding.folder),1),e[15]||(e[15]=S("div",{class:"flex-grow"},null,-1)),S("button",{class:"ml-2 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 duration-150 active:scale-90 p-1 rounded disabled:opacity-50",title:"Copy folder path to clipboard",onClick:e[2]||(e[2]=oe(a=>i.copyToClipBoard(n.binding.folder),["stop"])),disabled:n.isProcessing},e[12]||(e[12]=[S("i",{"data-feather":"clipboard",class:"w-4 h-4"},null,-1),S("span",{class:"sr-only"},"Copy folder path",-1)]),8,_Rn)]),S("div",QRn,[e[16]||(e[16]=S("i",{"data-feather":"git-merge",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[17]||(e[17]=S("b",{class:"mr-1 font-medium text-gray-700 dark:text-gray-300"},"Version:",-1)),S("span",null,J(n.binding.version),1)]),S("div",vRn,[e[18]||(e[18]=S("i",{"data-feather":"github",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[19]||(e[19]=S("b",{class:"mr-1 font-medium text-gray-700 dark:text-gray-300"},"Link:",-1)),S("a",{href:n.binding.link,target:"_blank",rel:"noopener noreferrer",class:Ee(["text-blue-600 dark:text-blue-400 hover:underline truncate",{"pointer-events-none opacity-70":n.isProcessing}]),onClick:e[3]||(e[3]=oe(()=>{},["stop"]))},J(n.binding.link),11,yRn)]),S("div",bRn,[e[21]||(e[21]=S("i",{"data-feather":"info",class:"w-4 h-4 mr-2 mt-0.5 flex-shrink-0"},null,-1)),S("div",null,[e[20]||(e[20]=S("b",{class:"font-medium text-gray-700 dark:text-gray-300"},"Description:",-1)),S("p",{class:"opacity-90 line-clamp-3",title:n.binding.description,innerHTML:n.binding.description},null,8,ERn)])])]),S("div",SRn,[n.isProcessing?(N(),H("div",xRn,e[22]||(e[22]=[S("div",{class:"animate-spin rounded-full h-5 w-5 border-b-2 border-current mr-2"},null,-1),Re(" Processing... ")]))):Z("",!0),n.isProcessing?Z("",!0):(N(),H(xe,{key:1},[n.binding.installed?Z("",!0):(N(),H("button",{key:0,title:"Click to install",type:"button",onClick:e[4]||(e[4]=oe((...a)=>i.emitInstall&&i.emitInstall(...a),["stop"])),class:"inline-flex items-center gap-2 px-4 py-2 text-sm font-semibold text-center text-white bg-blue-600 rounded-lg shadow-sm hover:bg-blue-700 focus:ring-4 focus:ring-blue-300 focus:outline-none dark:bg-blue-500 dark:hover:bg-blue-600 dark:focus:ring-blue-800 transition-colors duration-200 ease-in-out disabled:opacity-50 disabled:cursor-not-allowed"},e[23]||(e[23]=[S("i",{"data-feather":"download-cloud",class:"w-4 h-4"},null,-1)]))),n.binding.installed?(N(),H("button",{key:1,title:"Click to Reinstall binding",type:"button",onClick:e[5]||(e[5]=oe((...a)=>i.emitReinstall&&i.emitReinstall(...a),["stop"])),class:"inline-flex items-center gap-2 px-4 py-2 text-sm font-semibold text-center text-white bg-green-600 rounded-lg shadow-sm hover:bg-green-700 focus:ring-4 focus:ring-green-300 focus:outline-none dark:bg-green-500 dark:hover:bg-green-600 dark:focus:ring-green-800 transition-colors duration-200 ease-in-out disabled:opacity-50 disabled:cursor-not-allowed"},e[24]||(e[24]=[S("i",{"data-feather":"refresh-ccw",class:"w-4 h-4"},null,-1)]))):Z("",!0),n.binding.installed?(N(),H("button",{key:2,title:"Click to Uninstall binding",type:"button",onClick:e[6]||(e[6]=oe((...a)=>i.emitUninstall&&i.emitUninstall(...a),["stop"])),class:"inline-flex items-center gap-2 px-4 py-2 text-sm font-semibold text-center text-white bg-red-600 rounded-lg shadow-sm hover:bg-red-700 focus:ring-4 focus:ring-red-300 focus:outline-none dark:bg-red-500 dark:hover:bg-red-600 dark:focus:ring-red-800 transition-colors duration-200 ease-in-out disabled:opacity-50 disabled:cursor-not-allowed"},e[25]||(e[25]=[S("i",{"data-feather":"trash-2",class:"w-4 h-4"},null,-1)]))):Z("",!0),n.selected&&n.binding.installed?(N(),H("button",{key:3,title:"Click to open Settings",type:"button",onClick:e[7]||(e[7]=oe((...a)=>i.emitSettings&&i.emitSettings(...a),["stop"])),class:"inline-flex items-center gap-2 px-4 py-2 text-sm font-semibold text-center text-white bg-gray-600 rounded-lg shadow-sm hover:bg-gray-700 focus:ring-4 focus:ring-gray-300 focus:outline-none dark:bg-gray-500 dark:hover:bg-gray-600 dark:focus:ring-gray-800 transition-colors duration-200 ease-in-out disabled:opacity-50 disabled:cursor-not-allowed"},e[26]||(e[26]=[S("i",{"data-feather":"settings",class:"w-4 h-4"},null,-1)]))):Z("",!0)],64))])])],10,sRn)}const CRn=Ye(oRn,[["render",LRn],["__scopeId","data-v-720de39c"]]),kO="/assets/logo-BeKzDFPd.png",ARn={name:"BindingZooSettings",components:{BindingEntry:CRn},props:{loading:{type:Boolean,default:!1},api_get_req:{type:Function,required:!0},api_post_req:{type:Function,required:!0},refresh_config:{type:Function,required:!0},show_toast:{type:Function,required:!0},show_yes_no_dialog:{type:Function,required:!0},show_message_box:{type:Function,required:!0},client_id:{type:String,required:!0},show_universal_form:{type:Function,required:!0}},emits:["settings-changed"],data(){return{bindings:[],isLoadingBindings:!1,isLoadingAction:!1,sortOption:"name",searchTerm:""}},computed:{...FR({allBindings:t=>t.bindingsZoo||[],selectedBindingName:t=>t.config.binding_name,processingBindings:t=>t.processingBindingFolders||{}}),bindingsToDisplay(){return this.sortedBindings},currentBindingInfo(){return!this.$store.state.config||!this.$store.state.config.binding_name||this.bindings.length===0?null:this.bindings.find(e=>e.folder===this.$store.state.config.binding_name)},sortedBindings(){if(!this.bindings)return[];let t=[...this.bindings];if(this.searchTerm){const e=this.searchTerm.toLowerCase();t=t.filter(n=>{var o,r,i,s;return((o=n.name)==null?void 0:o.toLowerCase().includes(e))||((r=n.author)==null?void 0:r.toLowerCase().includes(e))||((i=n.description)==null?void 0:i.toLowerCase().includes(e))||((s=n.folder)==null?void 0:s.toLowerCase().includes(e))})}return t.sort((e,n)=>{const o=e.folder===this.selectedBindingName,r=n.folder===this.selectedBindingName;if(o&&!r)return-1;if(!o&&r)return 1;switch(this.sortOption){case"status":return e.installed&&!n.installed?-1:!e.installed&&n.installed?1:(e.name||"").localeCompare(n.name||"");case"author":return(e.author||"").localeCompare(n.author||"");case"name":default:return(e.name||"").localeCompare(n.name||"")}}),t}},methods:{isBindingSelected(t){return t.folder===this.selectedBindingName},isBindingProcessing(t){return!!this.processingBindings[t.folder]},getIconPath(t){if(console.log(`iconRelativePath: ${t}`),!t)return kO;if(t.startsWith("http"))return t;const e="/"+t.replace(/\\/g,"/");return console.log(`icon: ${e}`),e},imgPlaceholder(t){t.target.src=kO},async internal_api_get_req(t,e={}){try{const n={client_id:this.client_id,...e};return await this.api_get_req(t,n)}catch(n){throw console.error(`API GET error for ${t}:`,n),this.show_toast(`API Error: ${n.message||"Failed to fetch data"}`,4,!1),n}},async internal_api_post_req(t,e={}){try{const n={client_id:this.client_id,...e};return await this.api_post_req(t,n)}catch(n){throw console.error(`API POST error for ${t}:`,n),this.show_toast(`API Error: ${n.message||"Action failed"}`,4,!1),n}},async fetchBindings(){this.isLoadingBindings=!0;try{const t=await this.internal_api_get_req("list_bindings");this.bindings=(t||[]).map(e=>({...e,isProcessing:!1}))}catch{this.bindings=[]}finally{this.isLoadingBindings=!1,Se(Ce.replace)}},setBindingProcessing(t,e){const n=this.bindings.findIndex(o=>o.folder===t);n!==-1&&(this.bindings[n].isProcessing=e)},async handleSelect(t){if(console.log("received selection of binding"),console.log(t),!t||!t.folder){console.error("Invalid binding data received in handleSelect:",t),this.show_toast("Internal error: Invalid binding data.",4,!1);return}if(!t.installed){this.show_toast(`Binding "${t.name}" is not installed.`,3,!1);return}this.$store.state.config.binding_name!==t.folder&&(this.$store.state.config.binding_name=t.folder,this.$store.state.config.model_name=null,await this.$store.dispatch("refreshModelsZoo"),await this.$store.dispatch("refreshModels"),this.$emit("settings-changed",!0),this.show_toast(`Selected binding: ${t.name}`,3,!0))},async handleInstall(t){if(!t||!t.folder){console.error("Invalid binding data received in handleInstall:",t),this.show_toast("Internal error: Invalid binding data.",4,!1);return}let e=!0;if(t.disclaimer&&(e=await this.show_yes_no_dialog(`Disclaimer for ${t.name}: +`];let a=-1;return s.forEach(l=>{const c=i.lastIndexOf(l);c>a&&(a=c)}),a==-1&&(a=i.length),console.log(a),a+r+1},o=()=>{const r=n(t),i=this.text.substring(t,r);this.msg.text=i,t=r+1,this.msg.onend=s=>{t{o()},1):(this.isSpeaking=!1,console.log("voice off :",this.text.length," ",r))},this.speechSynthesis.speak(this.msg)};o()},getCursorPosition(){return this.$refs.mdTextarea.selectionStart},appendToOutput(t){this.pre_text+=t,this.text=this.pre_text+this.post_text},generate_in_placeholder(){console.log("Finding cursor position");let t=this.text.indexOf("@@");if(t<0){this.$refs.toast.showToast("No generation placeholder found",4,!1);return}this.text=this.text.substring(0,t)+this.text.substring(t+26,this.text.length),this.pre_text=this.text.substring(0,t),this.post_text=this.text.substring(t,this.text.length);var e=this.text.substring(0,t);console.log(e),Ze.emit("generate_text",{prompt:e,personality:-1,n_predicts:this.n_predicts,n_crop:this.n_crop,parameters:{temperature:this.temperature,top_k:this.top_k,top_p:this.top_p,repeat_penalty:this.repeat_penalty,repeat_last_n:this.repeat_last_n,seed:parseInt(this.seed)}}),this.generating=!0},async tokenize_text(){const t=await ce.post("/lollms_tokenize",{prompt:this.text,return_named:!0},{headers:this.posts_headers});console.log(t.data),this.namedTokens=t.data},generate(){console.log("Finding cursor position"),this.pre_text=this.text.substring(0,this.getCursorPosition()),this.post_text=this.text.substring(this.getCursorPosition(),this.text.length);var t=this.text.substring(0,this.getCursorPosition());console.log(this.text),console.log(`cursor position :${this.getCursorPosition()}`),console.log(`pretext:${this.pre_text}`),console.log(`post_text:${this.post_text}`),console.log(`prompt:${t}`),Ze.emit("generate_text",{prompt:t,personality:-1,n_predicts:this.n_predicts,n_crop:this.n_crop,parameters:{temperature:this.temperature,top_k:this.top_k,top_p:this.top_p,repeat_penalty:this.repeat_penalty,repeat_last_n:this.repeat_last_n,seed:parseInt(this.seed)}}),this.generating=!0},stopGeneration(){Ze.emit("cancel_text_generation",{})},exportText(){const t=this.text,e=document.createElement("a"),n=new Blob([t],{type:"text/plain"});e.href=URL.createObjectURL(n),e.download="exported_text.txt",document.body.appendChild(e),e.click(),document.body.removeChild(e)},importText(){const t=document.getElementById("import-input");t&&(t.addEventListener("change",e=>{if(e.target.files&&e.target.files[0]){const n=new FileReader;n.onload=()=>{this.text=n.result},n.readAsText(e.target.files[0])}else alert("Please select a file.")}),t.click())},setPreset(){console.log("Setting preset"),console.log(this.selectedPreset),this.tab_id="render",this.text=iLn(this.selectedPreset.content,t=>{console.log("Done"),console.log(t),this.text=t})},addPreset(){let t=prompt("Enter the title of the preset:");this.presets[t]={client_id:this.$store.state.client_id,name:t,content:this.text},ce.post("./add_preset",this.presets[t]).then(e=>{console.log(e.data)}).catch(e=>{this.$refs.toast.showToast(`Error: ${e}`,4,!1)})},removePreset(){this.selectedPreset&&delete this.presets[this.selectedPreset.name]},reloadPresets(){ce.get("./get_presets").then(t=>{console.log(t.data),this.presets=t.data,this.selectedPreset=this.presets[0]}).catch(t=>{this.$refs.toast.showToast(`Error: ${t}`,4,!1)})},startRecording(){this.pending=!0,this.is_recording?ce.post("/stop_recording",{client_id:this.$store.state.client_id}).then(t=>{this.is_recording=!1,this.pending=!1,console.log(t),this.text+=t.data,console.log("text"),console.log(this.text),console.log(t.data),this.presets=t.data,this.selectedPreset=this.presets[0]}).catch(t=>{this.$refs.toast.showToast(`Error: ${t}`,4,!1)}):ce.post("/start_recording",{client_id:this.$store.state.client_id}).then(t=>{this.is_recording=!0,this.pending=!1,console.log(t.data)}).catch(t=>{this.$refs.toast.showToast(`Error: ${t}`,4,!1)})},startRecordingAndTranscribing(){this.pending=!0,this.is_deaf_transcribing?ce.get("/stop_recording").then(t=>{this.is_deaf_transcribing=!1,this.pending=!1,this.text=t.data.text,this.read()}).catch(t=>{this.$refs.toast.showToast(`Error: ${t}`,4,!1)}):ce.get("/start_recording").then(t=>{this.is_deaf_transcribing=!0,this.pending=!1}).catch(t=>{this.$refs.toast.showToast(`Error: ${t}`,4,!1)})},startSpeechRecognition(){"SpeechRecognition"in window||"webkitSpeechRecognition"in window?(this.recognition=new(window.SpeechRecognition||window.webkitSpeechRecognition),this.recognition.lang=this.$store.state.config.audio_in_language,this.recognition.interimResults=!0,this.recognition.onstart=()=>{this.isLesteningToVoice=!0,this.silenceTimer=setTimeout(()=>{this.recognition.stop()},this.silenceTimeout)},this.pre_text=this.text.substring(0,this.getCursorPosition()),this.post_text=this.text.substring(this.getCursorPosition(),this.text.length),this.recognition.onresult=t=>{this.generated="";for(let e=t.resultIndex;e{this.recognition.stop()},this.silenceTimeout)},this.recognition.onerror=t=>{console.error("Speech recognition error:",t.error),this.isLesteningToVoice=!1,clearTimeout(this.silenceTimer)},this.recognition.onend=()=>{console.log("Speech recognition ended."),this.isLesteningToVoice=!1,this.pre_text=this.pre_text+this.generated,this.cursorPosition=this.pre_text.length,clearTimeout(this.silenceTimer)},this.recognition.start()):console.error("Speech recognition is not supported in this browser.")}}},sLn={class:"container w-full background-color shadow-lg overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"},aLn={class:"container flex flex-row m-2 w-full"},lLn={class:"flex-grow w-full m-2"},cLn={class:"flex panels-color gap-3 flex-1 items-center flex-grow flex-row rounded-md border-2 border-blue-300 m-2 p-4"},uLn={class:"flex items-center space-x-2"},dLn=["src"],TLn=["src"],fLn=["src"],pLn=["src"],hLn=["src"],mLn={key:1,class:"w-6 h-6"},gLn={class:"flex gap-3 flex-1 items-center flex-grow justify-end"},_Ln={key:0},QLn=["src"],vLn={key:2},yLn={key:0,class:"settings scrollbar bg-white dark:bg-gray-800 rounded-lg shadow-md p-6"},bLn=["value"],ELn={key:0,title:"Selecting model",class:"flex flex-row flex-grow justify-end"},SLn=["value"],xLn={class:"slider-container ml-2 mr-2"},LLn={class:"slider-value text-gray-500"},CLn={class:"slider-container ml-2 mr-2"},ALn={class:"slider-value text-gray-500"},wLn={class:"slider-container ml-2 mr-2"},OLn={class:"slider-value text-gray-500"},MLn={class:"slider-container ml-2 mr-2"},RLn={class:"slider-value text-gray-500"},NLn={class:"slider-container ml-2 mr-2"},DLn={class:"slider-value text-gray-500"},ILn={class:"slider-container ml-2 mr-2"},kLn={class:"slider-value text-gray-500"},HLn={class:"slider-container ml-2 mr-2"},PLn={class:"slider-value text-gray-500"},$Ln={class:"slider-container ml-2 mr-2"},VLn={class:"slider-value text-gray-500"};function BLn(t,e,n,o,r,i){const s=ze("ChatBarButton"),a=ze("ToolbarButton"),l=ze("DropdownSubmenu"),c=ze("DropdownMenu"),u=ze("tokens-hilighter"),d=ze("MarkdownRenderer"),f=ze("Card"),T=ze("Toast");return N(),H(xe,null,[S("div",sLn,[S("div",aLn,[S("div",lLn,[S("div",cLn,[S("div",uLn,[Le(ne(s,{onClick:i.generate,title:"Generate from the current cursor position"},{icon:Ge(()=>e[54]||(e[54]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z"})],-1)])),_:1},8,["onClick"]),[[An,!r.generating]]),Le(ne(s,{onClick:i.generate_in_placeholder,title:"Generate from the next placeholder"},{icon:Ge(()=>e[55]||(e[55]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 8h14M5 8a2 2 0 110-4h14a2 2 0 110 4M5 8v10a2 2 0 002 2h10a2 2 0 002-2V8m-9 4h4"})],-1)])),_:1},8,["onClick"]),[[An,!r.generating]]),Le(ne(s,{onClick:i.tokenize_text,title:"Tokenize the text"},{icon:Ge(()=>[S("img",{src:r.tokenize_icon,alt:"Tokenize",class:"h-5 w-5"},null,8,dLn)]),_:1},8,["onClick"]),[[An,!r.generating]]),e[65]||(e[65]=S("span",{class:"w-80"},null,-1)),Le(ne(s,{onClick:i.stopGeneration,title:"Stop generation"},{icon:Ge(()=>e[56]||(e[56]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])),_:1},8,["onClick"]),[[An,r.generating]]),ne(s,{onClick:i.startSpeechRecognition,class:Ee({"text-red-500":t.isListeningToVoice}),title:"Dictate (using your browser's transcription)"},{icon:Ge(()=>e[57]||(e[57]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z"})],-1)])),_:1},8,["onClick","class"]),ne(s,{onClick:i.speak,class:Ee({"text-red-500":i.isTalking}),title:"Convert text to audio (not saved, uses your browser's TTS service)"},{icon:Ge(()=>e[58]||(e[58]=[Me(" 🪶 ")])),_:1},8,["onClick","class"]),ne(s,{onClick:i.triggerFileUpload,title:"Upload a voice"},{icon:Ge(()=>e[59]||(e[59]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z"})],-1)])),_:1},8,["onClick"]),ne(s,{onClick:i.startRecordingAndTranscribing,class:Ee({"text-green-500":r.isLesteningToVoice}),title:"Start audio to audio"},{icon:Ge(()=>[r.pending?(N(),H("img",{key:1,src:r.loading_icon,alt:"Loading",class:"h-5 w-5"},null,8,fLn)):(N(),H("img",{key:0,src:r.is_deaf_transcribing?r.deaf_on:r.deaf_off,alt:"Deaf",class:"h-5 w-5"},null,8,TLn))]),_:1},8,["onClick","class"]),ne(s,{onClick:i.startRecording,class:Ee({"text-green-500":r.isLesteningToVoice}),title:"Start audio recording"},{icon:Ge(()=>[r.pending?(N(),H("img",{key:1,src:r.loading_icon,alt:"Loading",class:"h-5 w-5"},null,8,hLn)):(N(),H("img",{key:0,src:r.is_recording?r.rec_on:r.rec_off,alt:"Record",class:"h-5 w-5"},null,8,pLn))]),_:1},8,["onClick","class"]),r.isSynthesizingVoice?(N(),H("div",mLn,e[61]||(e[61]=[S("svg",{class:"animate-spin h-5 w-5 text-secondary",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[S("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),S("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})],-1)]))):(N(),ot(s,{key:0,onClick:i.read,title:"Generate audio from text"},{icon:Ge(()=>e[60]||(e[60]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z"})],-1)])),_:1},8,["onClick"])),Le(ne(s,{onClick:i.exportText,title:"Export text"},{icon:Ge(()=>e[62]||(e[62]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-8l-4-4m0 0L8 8m4-4v12"})],-1)])),_:1},8,["onClick"]),[[An,!r.generating]]),Le(ne(s,{onClick:i.importText,title:"Import text"},{icon:Ge(()=>e[63]||(e[63]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4"})],-1)])),_:1},8,["onClick"]),[[An,!r.generating]]),ne(s,{onClick:e[0]||(e[0]=h=>r.showSettings=!r.showSettings),title:"Settings"},{icon:Ge(()=>e[64]||(e[64]=[S("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z"}),S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z"})],-1)])),_:1})]),S("input",{type:"file",ref:"fileInput",onChange:e[1]||(e[1]=(...h)=>i.handleFileUpload&&i.handleFileUpload(...h)),style:{display:"none"},accept:".wav"},null,544),S("div",gLn,[S("button",{class:Ee(["border-2 text-blue-600 dark:text-white border-blue-300 p-2 rounded shadow-lg hover:border-gray-600 dark:link-item-dark cursor-pointer",{"bg-blue-200 dark:bg-blue-500":r.tab_id=="source"}]),onClick:e[2]||(e[2]=h=>r.tab_id="source")}," Source ",2),S("button",{class:Ee(["border-2 text-blue-600 dark:text-white border-blue-300 p-2 rounded shadow-lg hover:border-gray-600 dark:link-item-dark cursor-pointer",{"bg-blue-200 dark:bg-blue-500":r.tab_id=="render"}]),onClick:e[3]||(e[3]=h=>r.tab_id="render")}," Render ",2)]),e[66]||(e[66]=S("input",{type:"file",id:"import-input",class:"hidden"},null,-1))]),S("div",{class:Ee(["flex-grow m-2 p-2 border panels-color border-blue-300 rounded-md",{"border-red-500":r.generating}])},[r.tab_id==="source"?(N(),H("div",_Ln,[ne(c,{title:"Add Block"},{default:Ge(()=>[ne(l,{title:"Programming Languages",icon:"code"},{default:Ge(()=>[ne(a,{onClick:e[4]||(e[4]=oe(h=>i.addBlock("python"),["stop"])),title:"Python",icon:"python"}),ne(a,{onClick:e[5]||(e[5]=oe(h=>i.addBlock("javascript"),["stop"])),title:"JavaScript",icon:"js"}),ne(a,{onClick:e[6]||(e[6]=oe(h=>i.addBlock("typescript"),["stop"])),title:"TypeScript",icon:"typescript"}),ne(a,{onClick:e[7]||(e[7]=oe(h=>i.addBlock("java"),["stop"])),title:"Java",icon:"java"}),ne(a,{onClick:e[8]||(e[8]=oe(h=>i.addBlock("c++"),["stop"])),title:"C++",icon:"cplusplus"}),ne(a,{onClick:e[9]||(e[9]=oe(h=>i.addBlock("csharp"),["stop"])),title:"C#",icon:"csharp"}),ne(a,{onClick:e[10]||(e[10]=oe(h=>i.addBlock("go"),["stop"])),title:"Go",icon:"go"}),ne(a,{onClick:e[11]||(e[11]=oe(h=>i.addBlock("rust"),["stop"])),title:"Rust",icon:"rust"}),ne(a,{onClick:e[12]||(e[12]=oe(h=>i.addBlock("swift"),["stop"])),title:"Swift",icon:"swift"}),ne(a,{onClick:e[13]||(e[13]=oe(h=>i.addBlock("kotlin"),["stop"])),title:"Kotlin",icon:"kotlin"}),ne(a,{onClick:e[14]||(e[14]=oe(h=>i.addBlock("r"),["stop"])),title:"R",icon:"r-project"})]),_:1}),ne(l,{title:"Web Technologies",icon:"web"},{default:Ge(()=>[ne(a,{onClick:e[15]||(e[15]=oe(h=>i.addBlock("html"),["stop"])),title:"HTML",icon:"html5"}),ne(a,{onClick:e[16]||(e[16]=oe(h=>i.addBlock("css"),["stop"])),title:"CSS",icon:"css3"}),ne(a,{onClick:e[17]||(e[17]=oe(h=>i.addBlock("vue"),["stop"])),title:"Vue.js",icon:"vuejs"}),ne(a,{onClick:e[18]||(e[18]=oe(h=>i.addBlock("react"),["stop"])),title:"React",icon:"react"}),ne(a,{onClick:e[19]||(e[19]=oe(h=>i.addBlock("angular"),["stop"])),title:"Angular",icon:"angular"})]),_:1}),ne(l,{title:"Markup and Data",icon:"file-code"},{default:Ge(()=>[ne(a,{onClick:e[20]||(e[20]=oe(h=>i.addBlock("xml"),["stop"])),title:"XML",icon:"xml"}),ne(a,{onClick:e[21]||(e[21]=oe(h=>i.addBlock("json"),["stop"])),title:"JSON",icon:"json"}),ne(a,{onClick:e[22]||(e[22]=oe(h=>i.addBlock("yaml"),["stop"])),title:"YAML",icon:"yaml"}),ne(a,{onClick:e[23]||(e[23]=oe(h=>i.addBlock("markdown"),["stop"])),title:"Markdown",icon:"markdown"}),ne(a,{onClick:e[24]||(e[24]=oe(h=>i.addBlock("latex"),["stop"])),title:"LaTeX",icon:"latex"})]),_:1}),ne(l,{title:"Scripting and Shell",icon:"terminal"},{default:Ge(()=>[ne(a,{onClick:e[25]||(e[25]=oe(h=>i.addBlock("bash"),["stop"])),title:"Bash",icon:"bash"}),ne(a,{onClick:e[26]||(e[26]=oe(h=>i.addBlock("powershell"),["stop"])),title:"PowerShell",icon:"powershell"}),ne(a,{onClick:e[27]||(e[27]=oe(h=>i.addBlock("perl"),["stop"])),title:"Perl",icon:"perl"})]),_:1}),ne(l,{title:"Diagramming",icon:"sitemap"},{default:Ge(()=>[ne(a,{onClick:e[28]||(e[28]=oe(h=>i.addBlock("mermaid"),["stop"])),title:"Mermaid",icon:"mermaid"}),ne(a,{onClick:e[29]||(e[29]=oe(h=>i.addBlock("graphviz"),["stop"])),title:"Graphviz",icon:"graphviz"}),ne(a,{onClick:e[30]||(e[30]=oe(h=>i.addBlock("plantuml"),["stop"])),title:"PlantUML",icon:"plantuml"})]),_:1}),ne(l,{title:"Database",icon:"database"},{default:Ge(()=>[ne(a,{onClick:e[31]||(e[31]=oe(h=>i.addBlock("sql"),["stop"])),title:"SQL",icon:"sql"}),ne(a,{onClick:e[32]||(e[32]=oe(h=>i.addBlock("mongodb"),["stop"])),title:"MongoDB",icon:"mongodb"})]),_:1}),ne(a,{onClick:e[33]||(e[33]=oe(h=>i.addBlock(""),["stop"])),title:"Generic Block",icon:"code"})]),_:1}),ne(a,{onClick:e[34]||(e[34]=oe(h=>t.copyContentToClipboard(),["stop"])),title:"Copy message to clipboard",icon:"copy"}),Le(S("textarea",{ref:"mdTextarea",onKeydown:e[35]||(e[35]=Qn(oe((...h)=>i.insertTab&&i.insertTab(...h),["prevent"]),["tab"])),class:"block min-h-500 p-2.5 w-full text-gray-900 bg-gray-50 rounded-lg border border-gray-300 focus:ring-blue-500 focus:border-blue-500 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500 overflow-y-scroll flex flex-col shadow-lg p-10 pt-0 overflow-y-scroll dark:bg-bg-dark scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary",rows:4,style:an({minHeight:r.mdRenderHeight+"px"}),placeholder:"Enter message here...","onUpdate:modelValue":e[36]||(e[36]=h=>r.text=h),onClick:e[37]||(e[37]=oe((...h)=>i.mdTextarea_clicked&&i.mdTextarea_clicked(...h),["prevent"])),onChange:e[38]||(e[38]=oe((...h)=>i.mdTextarea_changed&&i.mdTextarea_changed(...h),["prevent"]))}," ",36),[[Je,r.text]]),S("span",null,"Cursor position "+J(r.cursorPosition),1)])):Z("",!0),r.audio_url!=null?(N(),H("audio",{controls:"",key:r.audio_url},[S("source",{src:r.audio_url,type:"audio/wav",ref:"audio_player"},null,8,QLn),e[67]||(e[67]=Me(" Your browser does not support the audio element. "))])):Z("",!0),ne(u,{namedTokens:r.namedTokens},null,8,["namedTokens"]),r.tab_id==="render"?(N(),H("div",vLn,[ne(d,{ref:"mdRender",client_id:this.$store.state.client_id,message_id:0,discussion_id:0,"markdown-text":r.text,class:"mt-4 p-2 rounded shadow-lg dark:bg-bg-dark"},null,8,["client_id","markdown-text"])])):Z("",!0)],2)]),r.showSettings?(N(),H("div",yLn,[e[82]||(e[82]=S("h2",{class:"text-2xl font-bold text-gray-900 dark:text-white mb-4"},"Settings",-1)),ne(f,{title:"Model",class:"slider-container ml-0 mr-0",isHorizontal:!1,disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>[Le(S("select",{"onUpdate:modelValue":e[39]||(e[39]=h=>this.$store.state.selectedModel=h),onChange:e[40]||(e[40]=(...h)=>i.setModel&&i.setModel(...h)),class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},[(N(!0),H(xe,null,Pe(i.models,h=>(N(),H("option",{key:h,value:h},J(h),9,bLn))),128))],544),[[Dr,this.$store.state.selectedModel]]),r.selecting_model?(N(),H("div",ELn,e[68]||(e[68]=[S("div",{role:"status"},[S("svg",{"aria-hidden":"true",class:"w-6 h-6 animate-spin fill-secondary",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})]),S("span",{class:"sr-only"},"Selecting model...")],-1)]))):Z("",!0)]),_:1}),ne(f,{title:"Presets",class:"slider-container ml-0 mr-0",is_subcard:!0,isHorizontal:!1,disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>[Le(S("select",{"onUpdate:modelValue":e[41]||(e[41]=h=>r.selectedPreset=h),class:"bg-white dark:bg-black mb-2 border-2 rounded-md shadow-sm w-full"},[(N(!0),H(xe,null,Pe(r.presets,h=>(N(),H("option",{key:h,value:h},J(h.name),9,SLn))),128))],512),[[Dr,r.selectedPreset]]),e[73]||(e[73]=S("br",null,null,-1)),S("button",{class:"w-6 ml-2 hover:text-secondary duration-75 active:scale-90 cursor-pointer",onClick:e[42]||(e[42]=(...h)=>i.setPreset&&i.setPreset(...h)),title:"Use preset"},e[69]||(e[69]=[S("i",{"data-feather":"check"},null,-1)])),S("button",{class:"w-6 ml-2 hover:text-secondary duration-75 active:scale-90 cursor-pointer",onClick:e[43]||(e[43]=(...h)=>i.addPreset&&i.addPreset(...h)),title:"Add this text as a preset"},e[70]||(e[70]=[S("i",{"data-feather":"plus"},null,-1)])),S("button",{class:"w-6 ml-2 hover:text-secondary duration-75 active:scale-90 cursor-pointer",onClick:e[44]||(e[44]=(...h)=>i.removePreset&&i.removePreset(...h)),title:"Remove preset"},e[71]||(e[71]=[S("i",{"data-feather":"x"},null,-1)])),S("button",{class:"w-6 ml-2 hover:text-secondary duration-75 active:scale-90 cursor-pointer",onClick:e[45]||(e[45]=(...h)=>i.reloadPresets&&i.reloadPresets(...h)),title:"Reload presets list"},e[72]||(e[72]=[S("i",{"data-feather":"refresh-ccw"},null,-1)]))]),_:1}),ne(f,{title:"Generation params",class:"slider-container ml-0 mr-0",is_subcard:!0,isHorizontal:!1,disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>[S("div",xLn,[e[74]||(e[74]=S("h3",{class:"text-gray-600"},"Temperature",-1)),Le(S("input",{type:"range","onUpdate:modelValue":e[46]||(e[46]=h=>r.temperature=h),min:"0",max:"5",step:"0.1",class:"w-full"},null,512),[[Je,r.temperature]]),S("span",LLn,"Current value: "+J(r.temperature),1)]),S("div",CLn,[e[75]||(e[75]=S("h3",{class:"text-gray-600"},"Top K",-1)),Le(S("input",{type:"range","onUpdate:modelValue":e[47]||(e[47]=h=>r.top_k=h),min:"1",max:"100",step:"1",class:"w-full"},null,512),[[Je,r.top_k]]),S("span",ALn,"Current value: "+J(r.top_k),1)]),S("div",wLn,[e[76]||(e[76]=S("h3",{class:"text-gray-600"},"Top P",-1)),Le(S("input",{type:"range","onUpdate:modelValue":e[48]||(e[48]=h=>r.top_p=h),min:"0",max:"1",step:"0.1",class:"w-full"},null,512),[[Je,r.top_p]]),S("span",OLn,"Current value: "+J(r.top_p),1)]),S("div",MLn,[e[77]||(e[77]=S("h3",{class:"text-gray-600"},"Repeat Penalty",-1)),Le(S("input",{type:"range","onUpdate:modelValue":e[49]||(e[49]=h=>r.repeat_penalty=h),min:"0",max:"5",step:"0.1",class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},null,512),[[Je,r.repeat_penalty]]),S("span",RLn,"Current value: "+J(r.repeat_penalty),1)]),S("div",NLn,[e[78]||(e[78]=S("h3",{class:"text-gray-600"},"Repeat Last N",-1)),Le(S("input",{type:"range","onUpdate:modelValue":e[50]||(e[50]=h=>r.repeat_last_n=h),min:"0",max:"100",step:"1",class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},null,512),[[Je,r.repeat_last_n]]),S("span",DLn,"Current value: "+J(r.repeat_last_n),1)]),S("div",ILn,[e[79]||(e[79]=S("h3",{class:"text-gray-600"},"Number of tokens to crop the text to",-1)),Le(S("input",{type:"number","onUpdate:modelValue":e[51]||(e[51]=h=>r.n_crop=h),class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},null,512),[[Je,r.n_crop]]),S("span",kLn,"Current value: "+J(r.n_crop),1)]),S("div",HLn,[e[80]||(e[80]=S("h3",{class:"text-gray-600"},"Number of tokens to generate",-1)),Le(S("input",{type:"number","onUpdate:modelValue":e[52]||(e[52]=h=>r.n_predicts=h),class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},null,512),[[Je,r.n_predicts]]),S("span",PLn,"Current value: "+J(r.n_predicts),1)]),S("div",$Ln,[e[81]||(e[81]=S("h3",{class:"text-gray-600"},"Seed",-1)),Le(S("input",{type:"number","onUpdate:modelValue":e[53]||(e[53]=h=>r.seed=h),class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},null,512),[[Je,r.seed]]),S("span",VLn,"Current value: "+J(r.seed),1)])]),_:1})])):Z("",!0)])]),ne(T,{ref:"toast"},null,512)],64)}const FLn=Ye(oLn,[["render",BLn],["__scopeId","data-v-721d5f23"]]),ULn={data(){return{activeExtension:null}},computed:{activeExtensions(){return console.log(this.$store.state.extensionsZoo),console.log(EH(this.$store.state.extensionsZoo)),this.$store.state.extensionsZoo}},methods:{showExtensionPage(t){this.activeExtension=t}}},qLn={class:"container overflow-y-scroll flex flex-col shadow-lg p-10 pt-0 overflow-y-scroll w-full dark:bg-bg-dark scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"},GLn={key:0},jLn=["onClick"],zLn={key:0},YLn=["src"],WLn={key:1};function KLn(t,e,n,o,r,i){return N(),H("div",qLn,[i.activeExtensions.length>0?(N(),H("div",GLn,[(N(!0),H(xe,null,Pe(i.activeExtensions,s=>(N(),H("div",{key:s.name,onClick:a=>i.showExtensionPage(s)},[S("div",{class:Ee({"active-tab":s===r.activeExtension})},J(s.name),3)],8,jLn))),128)),r.activeExtension?(N(),H("div",zLn,[S("iframe",{src:r.activeExtension.page,width:"100%",height:"500px",frameborder:"0"},null,8,YLn)])):Z("",!0)])):(N(),H("div",WLn,e[0]||(e[0]=[S("p",null,"No extension is active. Please install and activate an extension.",-1)])))])}const ZLn=Ye(ULn,[["render",KLn],["__scopeId","data-v-dd0910af"]]),XLn={name:"HelpView",data(){return{helpSections:[],selectedSection:0}},computed:{selectedContent(){var t;return((t=this.helpSections[this.selectedSection])==null?void 0:t.content)||"Select a topic from the sidebar to view help content."}},methods:{selectSection(t){this.selectedSection=t},async loadMarkdownFile(t){try{const n=await(await fetch(`/help/${t}`)).text();return Et(n)}catch(e){return console.error("Error loading markdown file:",e),"Error loading help content."}},async loadHelpSections(){const t=[{title:"About LoLLMs",file:"lollms-context.md"},{title:"Getting Started",file:"getting-started.md"},{title:"Uploading Files",file:"uploading-files.md"},{title:"Sending Images",file:"sending-images.md"},{title:"Using Code Interpreter",file:"code-interpreter.md"},{title:"Internet Search",file:"internet-search.md"},{title:"Text Generation",file:"text-generation.md"},{title:"Image Generation",file:"image-generation.md"},{title:"Music Generation",file:"music-generation.md"},{title:"Managing Personalities",file:"managing-personalities.md"},{title:"Troubleshooting",file:"troubleshooting.md"}];for(const e of t){const n=await this.loadMarkdownFile(e.file);this.helpSections.push({title:e.title,content:n})}}},mounted(){this.loadHelpSections()}},JLn={class:"help-view bg-gradient-to-br from-gray-50 to-blue-100 dark:from-gray-900 dark:to-blue-950 min-h-screen flex overflow-hidden"},eCn={class:"left-bar w-72 bg-white dark:bg-gray-800 shadow-2xl p-6 fixed h-screen overflow-y-auto transition-all duration-500 ease-in-out md:w-80 lg:w-96 z-10"},tCn={class:"space-y-4"},nCn=["onClick"],rCn={class:"main-content ml-72 md:ml-80 lg:ml-96 flex-1 p-10 overflow-y-auto h-screen flex items-center justify-center"},iCn={class:"big-card bg-white dark:bg-gray-900 rounded-2xl shadow-xl p-10 w-full h-full max-w-6xl mx-auto flex flex-col"},oCn=["innerHTML"];function sCn(t,e,n,o,r,i){return N(),H("div",JLn,[S("div",eCn,[e[0]||(e[0]=S("h2",{class:"text-3xl font-bold text-gray-900 dark:text-white mb-8 flex items-center"},[S("span",{class:"mr-2"},"🗂️"),Me(" Help Topics ")],-1)),S("ul",tCn,[(N(!0),H(xe,null,Pe(r.helpSections,(s,a)=>(N(),H("li",{key:a},[S("a",{onClick:oe(l=>i.selectSection(a),["prevent"]),class:Ee(["block p-4 rounded-xl text-gray-700 dark:text-gray-200 bg-gray-50 dark:bg-gray-700/50 hover:bg-blue-500 dark:hover:bg-blue-600 hover:text-white dark:hover:text-white transition-all duration-300 cursor-pointer shadow-sm",{"bg-blue-500 text-white dark:bg-blue-600":r.selectedSection===a}])},J(s.title),11,nCn)]))),128))])]),S("div",rCn,[S("div",iCn,[e[1]||(e[1]=S("h1",{class:"text-5xl font-extrabold text-gray-900 dark:text-white mb-10 flex items-center"},[S("span",{class:"mr-3"},"📖"),Me(" LoLLMs Help Center ")],-1)),S("div",{class:"help-content flex-1 overflow-y-auto text-gray-700 dark:text-gray-300 prose dark:prose-invert max-w-none transition-opacity duration-500",innerHTML:i.selectedContent},null,8,oCn)])])])}const aCn=Ye(XLn,[["render",sCn],["__scopeId","data-v-b2cccf53"]]),lCn={class:"p-4"},cCn={class:"list-none p-0 m-0"},uCn=["onClick"],dCn=["data-feather"],TCn={__name:"SettingsSidebar",props:{sections:{type:Array,required:!0},activeSection:{type:String,required:!0}},emits:["update:activeSection"],setup(t){return Hr(()=>{Se(()=>{Ce.replace()})}),(e,n)=>(N(),H("nav",lCn,[n[0]||(n[0]=S("h2",{class:"text-lg font-semibold mb-4 px-2 theme-text-primary"},"Settings",-1)),S("ul",cCn,[(N(!0),H(xe,null,Pe(t.sections,o=>(N(),H("li",{key:o.id,class:"mb-1"},[S("button",{onClick:r=>e.$emit("update:activeSection",o.id),class:Ee(["w-full flex items-center px-3 py-2 rounded-md text-sm font-medium transition-colors duration-150 focus:outline-none focus:ring-2 focus:ring-opacity-50",t.activeSection===o.id?"theme-bg-accent theme-text-accent-contrast shadow-sm":"theme-text-secondary hover:theme-bg-hover hover:theme-text-primary focus:theme-ring-accent"])},[S("i",{"data-feather":o.icon,class:"w-5 h-5 mr-3 flex-shrink-0"},null,8,dCn),S("span",null,J(o.name),1)],10,uCn)]))),128))])]))}},fCn=Ye(TCn,[["__scopeId","data-v-6c0e2273"]]);function G1(t,e=!0,n=1){const o=e?1e3:1024;if(Math.abs(t)=o&&i!r.value||!r.value.gpus?0:r.value.gpus.reduce((m,_)=>m+_.total_vram,0)),c=je(()=>!r.value||!r.value.gpus?0:r.value.gpus.reduce((m,_)=>m+_.used_vram,0)),u=je(()=>!r.value||!r.value.gpus||r.value.gpus.length===0?"0.00":(r.value.gpus.reduce((_,v)=>_+v.percentage,0)/r.value.gpus.length).toFixed(2)),d=async m=>{try{return(await ce.get(`/${m}`)).data}catch(_){return console.error(`API GET Error (${m}):`,_.message),null}},f=async(m,_={})=>{try{const v={..._,client_id:i.value};return(await ce.post(`/${m}`,v,{headers:a})).data}catch(v){return console.error(`API POST Error (${m}):`,v.message),{status:!1,error:v.message}}},T=m=>{if(m==null||isNaN(m))return"N/A";try{return G1(m)}catch(_){return console.warn("Filesize calculation error:",_),"Error"}},h=async()=>{console.log("Refreshing hardware usage...");const[m,_,v]=await Promise.all([d("disk_usage"),d("ram_usage"),d("vram_usage")]);n.value=m,o.value=_,r.value=v,Se(()=>{Ce.replace()})},g=async m=>{if(!i.value){console.error("Client ID not available for handleFolderClick");return}const _={folder:m};try{const v=await f("open_personal_folder",_);v.status?(console.log(`Successfully opened folder: ${m}`),console.info(`Opened ${m.replace("-"," ")} folder`)):(console.error(`Failed to open folder: ${m}`,v.error),console.error(`Failed to open folder: ${v.error||"Unknown error"}`))}catch(v){console.error("Error calling open_personal_folder endpoint:",v),console.error(`Error opening folder: ${v.message}`)}},Q=()=>{const m=localStorage.getItem("lollms_client_id");m?i.value=m:(i.value=`client_${Date.now()}_${Math.random().toString(16).substring(2,8)}`,localStorage.setItem("lollms_client_id",i.value),console.warn("Generated temporary client ID:",i.value))};return Hr(()=>{Q(),h(),s.value=setInterval(h,zCn),Se(()=>{Ce.replace()})}),N2(()=>{Se(()=>{Ce.replace()})}),cp(()=>{s.value&&clearInterval(s.value)}),(m,_)=>(N(),H("div",pCn,[S("div",{class:"flex justify-between items-center border-b border-blue-300 dark:border-blue-600 pb-2 mb-4"},[_[6]||(_[6]=S("h2",{class:"h2"}," System Status ",-1)),S("button",{onClick:h,title:"Refresh Status",class:"svg-button"},_[5]||(_[5]=[S("i",{"data-feather":"refresh-cw",class:"w-4 h-4"},null,-1)]))]),S("div",hCn,[r.value&&r.value.gpus&&r.value.gpus.length>0?(N(),H("div",mCn,[S("img",{src:gt(wO),width:"25",height:"25",class:"flex-shrink-0",alt:"GPU Icon"},null,8,gCn),r.value.gpus.length===1?(N(),H("div",_Cn,[_[7]||(_[7]=S("div",{class:"font-medium text-blue-800 dark:text-blue-100"},"GPU VRAM",-1)),S("div",QCn,J(T(r.value.gpus[0].used_vram))+" / "+J(T(r.value.gpus[0].total_vram))+" ("+J(r.value.gpus[0].percentage)+"%)",1)])):(N(),H("div",vCn,[S("div",yCn,J(r.value.gpus.length)+"x GPUs",1),S("div",bCn,"Total: "+J(T(c.value))+" / "+J(T(l.value))+" ("+J(u.value)+"%)",1)]))])):(N(),H("div",ECn,_[8]||(_[8]=[S("i",{"data-feather":"alert-circle",class:"w-5 h-5"},null,-1),S("div",{class:"flex-1 font-medium"},"No GPU Detected",-1)]))),o.value?(N(),H("div",SCn,[_[10]||(_[10]=S("i",{"data-feather":"cpu",class:"w-5 h-5 text-blue-500 dark:text-blue-400 flex-shrink-0"},null,-1)),S("div",xCn,[_[9]||(_[9]=S("div",{class:"font-medium text-blue-800 dark:text-blue-100"},"CPU RAM",-1)),S("div",LCn,J(T(o.value.ram_usage))+" / "+J(T(o.value.total_space))+" ("+J(o.value.percent_usage)+"%)",1)])])):(N(),H("div",CCn,_[11]||(_[11]=[S("i",{"data-feather":"cpu",class:"w-5 h-5"},null,-1),S("div",{class:"flex-1 font-medium"},"RAM N/A",-1)]))),n.value?(N(),H("div",ACn,[_[13]||(_[13]=S("i",{"data-feather":"hard-drive",class:"w-5 h-5 text-green-500 dark:text-green-400 flex-shrink-0"},null,-1)),S("div",wCn,[_[12]||(_[12]=S("div",{class:"font-medium text-blue-800 dark:text-blue-100"},"Disk (Models/DB)",-1)),S("div",OCn,J(T(n.value.binding_models_usage))+" / "+J(T(n.value.total_space))+" ("+J(n.value.percent_usage)+"%)",1)])])):(N(),H("div",MCn,_[14]||(_[14]=[S("i",{"data-feather":"hard-drive",class:"w-5 h-5"},null,-1),S("div",{class:"flex-1 font-medium"},"Disk N/A",-1)])))]),S("div",RCn,[o.value?(N(),H("div",NCn,[_[17]||(_[17]=S("label",{class:"label flex items-center gap-1 mb-2"},[S("i",{"data-feather":"cpu",class:"w-4 h-4 text-blue-500 dark:text-blue-400"}),Me(" CPU RAM Usage Details ")],-1)),S("div",DCn,[S("div",null,[_[15]||(_[15]=S("b",null,"Available: ",-1)),Me(J(T(o.value.available_space)),1)]),S("div",null,[_[16]||(_[16]=S("b",null,"Usage: ",-1)),Me(" "+J(T(o.value.ram_usage))+" / "+J(T(o.value.total_space))+" ("+J(o.value.percent_usage)+"%)",1)])]),S("div",ICn,[S("div",{class:"animated-progressbar-fg h-2.5 rounded-full",style:an({width:o.value.percent_usage+"%"})},null,4)])])):Z("",!0),n.value?(N(),H("div",kCn,[_[20]||(_[20]=S("label",{class:"label flex items-center gap-1 mb-2"},[S("i",{"data-feather":"hard-drive",class:"w-4 h-4 text-green-500 dark:text-green-400"}),Me(" Disk Usage Details ")],-1)),S("div",HCn,[S("div",null,[_[18]||(_[18]=S("b",null,"Available: ",-1)),Me(J(T(n.value.available_space)),1)]),S("div",null,[_[19]||(_[19]=S("b",null,"Usage (Models/DB): ",-1)),Me(" "+J(T(n.value.binding_models_usage))+" / "+J(T(n.value.total_space))+" ("+J(n.value.percent_usage)+"%)",1)])]),S("div",PCn,[S("div",{class:"animated-progressbar-fg h-2.5 rounded-full",style:an({width:n.value.percent_usage+"%"})},null,4)])])):Z("",!0),r.value&&r.value.gpus&&r.value.gpus.length>0?(N(),H("div",$Cn,[(N(!0),H(xe,null,Pe(r.value.gpus,(v,b)=>(N(),H("div",{key:b,class:"p-4 border border-blue-300 dark:border-blue-600 rounded-md mb-4 chatbox-color"},[S("label",VCn,[S("img",{src:gt(wO),width:"20",height:"20",class:"flex-shrink-0",alt:"GPU Icon"},null,8,BCn),Me(" GPU "+J(b+1)+" Usage Details ",1)]),S("div",FCn,[S("div",null,[_[21]||(_[21]=S("b",null,"Model: ",-1)),Me(J(v.gpu_model),1)]),S("div",null,[_[22]||(_[22]=S("b",null,"Available VRAM: ",-1)),Me(J(T(v.available_space)),1)]),S("div",null,[_[23]||(_[23]=S("b",null,"Usage: ",-1)),Me(" "+J(T(v.used_vram))+" / "+J(T(v.total_vram))+" ("+J(v.percentage)+"%)",1)])]),S("div",UCn,[S("div",{class:"animated-progressbar-fg h-2.5 rounded-full",style:an({width:v.percentage+"%"})},null,4)])]))),128))])):(N(),H("div",qCn," No GPU detected or VRAM information unavailable. "))]),S("div",GCn,[_[29]||(_[29]=S("h3",{class:"h3"},"Common Folders",-1)),S("div",jCn,[S("div",{class:"folder-item-base folder-item-personalities group",onClick:_[0]||(_[0]=v=>g("custom-personalities")),title:"Open Custom Personalities folder"},_[24]||(_[24]=[S("i",{"data-feather":"users",class:"folder-item-icon folder-item-icon-personalities"},null,-1),S("span",{class:"folder-item-label"},"Custom Personalities",-1)])),S("div",{class:"folder-item-base folder-item-functions group",onClick:_[1]||(_[1]=v=>g("custom-function-calls")),title:"Open Custom Function Calls folder"},_[25]||(_[25]=[S("i",{"data-feather":"tool",class:"folder-item-icon folder-item-icon-functions"},null,-1),S("span",{class:"folder-item-label"},"Custom Functions",-1)])),S("div",{class:"folder-item-base folder-item-configs group",onClick:_[2]||(_[2]=v=>g("configurations")),title:"Open Configurations folder"},_[26]||(_[26]=[S("i",{"data-feather":"settings",class:"folder-item-icon folder-item-icon-configs"},null,-1),S("span",{class:"folder-item-label"},"Configurations",-1)])),S("div",{class:"folder-item-base folder-item-outputs group",onClick:_[3]||(_[3]=v=>g("ai-outputs")),title:"Open AI Outputs folder"},_[27]||(_[27]=[S("i",{"data-feather":"gift",class:"folder-item-icon folder-item-icon-outputs"},null,-1),S("span",{class:"folder-item-label"},"AI Outputs",-1)])),S("div",{class:"folder-item-base folder-item-discussions group",onClick:_[4]||(_[4]=v=>g("discussions")),title:"Open Discussions folder"},_[28]||(_[28]=[S("i",{"data-feather":"message-square",class:"folder-item-icon folder-item-icon-discussions"},null,-1),S("span",{class:"folder-item-label"},"Discussions",-1)]))])])]))}},OO=Ye(YCn,[["__scopeId","data-v-095d6dfb"]]),WCn={name:"DictionaryManager",props:{modelValue:{type:Object,default:()=>({})},keyName:{type:String,default:"Key"},valueName:{type:String,default:"Value"}},emits:["update:modelValue","change"],data(){return{newKey:"",newValue:"",draggingKey:null}},methods:{addItem(){if(this.newKey.trim()){const t={...this.modelValue};t[this.newKey.trim()]=this.newValue,this.$emit("update:modelValue",t),this.$emit("change"),this.newKey="",this.newValue=""}},removeItem(t){const e={...this.modelValue};delete e[t],this.$emit("update:modelValue",e),this.$emit("change")},removeAll(){this.$emit("update:modelValue",{}),this.$emit("change")},updateKey(t,e){if(e.trim()&&e!==t){const n={...this.modelValue};n[e.trim()]=n[t],delete n[t],this.$emit("update:modelValue",n),this.$emit("change")}},updateValue(t,e){const n={...this.modelValue};n[t]=e,this.$emit("update:modelValue",n),this.$emit("change")},moveUp(t){const e=Object.keys(this.modelValue),n=e.indexOf(t);if(n>0){const o={};e.forEach((r,i)=>{i===n-1&&(o[t]=this.modelValue[t]),r!==t&&(o[r]=this.modelValue[r])}),this.$emit("update:modelValue",o),this.$emit("change")}},moveDown(t){const e=Object.keys(this.modelValue),n=e.indexOf(t);if(n{r!==t&&(o[r]=this.modelValue[r]),i===n+1&&(o[t]=this.modelValue[t])}),this.$emit("update:modelValue",o),this.$emit("change")}}}},KCn={class:"max-w-4xl mx-auto p-4"},ZCn={class:"flex flex-col sm:flex-row mb-4 gap-2"},XCn=["placeholder"],JCn=["placeholder"],eAn={key:0,class:"space-y-4"},tAn={class:"flex-grow mb-2 sm:mb-0 sm:mr-4 w-full sm:w-auto"},nAn=["for"],rAn=["id","value","onInput"],iAn={class:"flex-grow mb-2 sm:mb-0 sm:mr-4 w-full sm:w-auto"},oAn=["for"],sAn=["id","value","onInput"],aAn={class:"flex items-center space-x-2"},lAn=["onClick"],cAn=["onClick"],uAn=["onClick"],dAn={key:1,class:"mt-6"};function TAn(t,e,n,o,r,i){return N(),H("div",KCn,[S("div",ZCn,[Le(S("input",{type:"text","onUpdate:modelValue":e[0]||(e[0]=s=>r.newKey=s),placeholder:n.keyName,onKeyup:e[1]||(e[1]=Qn((...s)=>i.addItem&&i.addItem(...s),["enter"])),class:"flex-grow px-4 py-2 border border-gray-300 rounded dark:bg-gray-700 dark:text-white text-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent"},null,40,XCn),[[Je,r.newKey]]),Le(S("input",{type:"text","onUpdate:modelValue":e[2]||(e[2]=s=>r.newValue=s),placeholder:n.valueName,onKeyup:e[3]||(e[3]=Qn((...s)=>i.addItem&&i.addItem(...s),["enter"])),class:"flex-grow px-4 py-2 border border-gray-300 rounded dark:bg-gray-700 dark:text-white text-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent"},null,40,JCn),[[Je,r.newValue]]),S("button",{onClick:e[4]||(e[4]=(...s)=>i.addItem&&i.addItem(...s)),class:"bg-blue-500 text-white px-6 py-2 rounded hover:bg-blue-600 text-lg transition duration-300 ease-in-out"},"Add")]),Object.keys(n.modelValue).length>0?(N(),H("ul",eAn,[(N(!0),H(xe,null,Pe(n.modelValue,(s,a)=>(N(),H("li",{key:a,class:Ee(["flex flex-col sm:flex-row items-center p-4 bg-white dark:bg-gray-800 rounded-lg shadow-md hover:shadow-lg transition duration-300 ease-in-out",{"bg-gray-100 dark:bg-gray-700":r.draggingKey===a}])},[S("div",tAn,[S("label",{for:"key-"+a,class:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1"},J(n.keyName),9,nAn),S("input",{id:"key-"+a,value:a,onInput:l=>i.updateKey(a,l.target.value),class:"w-full px-3 py-2 border border-gray-300 rounded dark:bg-gray-600 dark:text-white text-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent"},null,40,rAn)]),S("div",iAn,[S("label",{for:"value-"+a,class:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1"},J(n.valueName),9,oAn),S("input",{id:"value-"+a,value:s,onInput:l=>i.updateValue(a,l.target.value),class:"w-full px-3 py-2 border border-gray-300 rounded dark:bg-gray-600 dark:text-white text-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent"},null,40,sAn)]),S("div",aAn,[S("button",{onClick:l=>i.removeItem(a),class:"text-red-500 hover:text-red-700 p-2 rounded-full hover:bg-red-100 dark:hover:bg-red-900 transition duration-300 ease-in-out"},e[6]||(e[6]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",viewBox:"0 0 20 20",fill:"currentColor"},[S("path",{"fill-rule":"evenodd",d:"M9 2a1 1 0 00-.894.553L7.382 4H4a1 1 0 000 2v10a2 2 0 002 2h8a2 2 0 002-2V6a1 1 0 100-2h-3.382l-.724-1.447A1 1 0 0011 2H9zM7 8a1 1 0 012 0v6a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v6a1 1 0 102 0V8a1 1 0 00-1-1z","clip-rule":"evenodd"})],-1)]),8,lAn),S("button",{onClick:l=>i.moveUp(a),class:"bg-gray-200 dark:bg-gray-600 hover:bg-gray-300 dark:hover:bg-gray-500 p-2 rounded-full transition duration-300 ease-in-out"},e[7]||(e[7]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",viewBox:"0 0 20 20",fill:"currentColor"},[S("path",{"fill-rule":"evenodd",d:"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z","clip-rule":"evenodd"})],-1)]),8,cAn),S("button",{onClick:l=>i.moveDown(a),class:"bg-gray-200 dark:bg-gray-600 hover:bg-gray-300 dark:hover:bg-gray-500 p-2 rounded-full transition duration-300 ease-in-out"},e[8]||(e[8]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",viewBox:"0 0 20 20",fill:"currentColor"},[S("path",{"fill-rule":"evenodd",d:"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1)]),8,uAn)])],2))),128))])):Z("",!0),Object.keys(n.modelValue).length>0?(N(),H("div",dAn,[S("button",{onClick:e[5]||(e[5]=(...s)=>i.removeAll&&i.removeAll(...s)),class:"bg-red-500 text-white px-6 py-2 rounded hover:bg-red-600 text-lg transition duration-300 ease-in-out"},"Remove All")])):Z("",!0)])}const fAn=Ye(WCn,[["render",TAn]]),pAn={name:"SmartRoutingConfig",components:{DictManager:fAn},props:{loading:{type:Boolean,default:!1},settingsChanged:{type:Boolean,default:!1}},emits:["update:setting","settings-changed"],computed:{useSmartRouting(){return this.$store.state.config.use_smart_routing},restoreModelAfterRouting(){return this.$store.state.config.restore_model_after_smart_routing},routerModel(){return this.$store.state.config.smart_routing_router_model},modelsDescription(){return this.$store.state.config.smart_routing_models_description||{}}},methods:{updateValue(t,e){this.$emit("update:setting",{key:t,value:e}),this.settingsChanged!==void 0&&this.$emit("settings-changed",!0)},updateBoolean(t,e){this.$emit("update:setting",{key:t,value:!!e}),this.settingsChanged!==void 0&&this.$emit("settings-changed",!0)}}},hAn={class:"user-settings-panel space-y-6"},mAn={class:"space-y-4"},gAn={class:"toggle-item border-t border-blue-200 dark:border-blue-700 pt-3 mt-2"},_An=["value","disabled"];function QAn(t,e,n,o,r,i){const s=ze("ToggleSwitch"),a=ze("DictManager");return N(),H("div",hAn,[e[8]||(e[8]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 border-b border-blue-300 dark:border-blue-600 pb-2"}," Smart Routing Configuration ",-1)),S("div",mAn,[S("div",gAn,[e[4]||(e[4]=S("label",{for:"use_smart_routing",class:"toggle-label"},[Me(" Enable Smart Routing "),S("span",{class:"toggle-description"}," Allow LoLLMs to automatically select the best model for a given task based on descriptions. ")],-1)),ne(s,{id:"use_smart_routing",checked:i.useSmartRouting,"onUpdate:checked":e[0]||(e[0]=l=>i.updateBoolean("use_smart_routing",l))},null,8,["checked"])]),S("div",{class:Ee(["toggle-item border-t border-blue-200 dark:border-blue-700 pt-3 mt-2",i.useSmartRouting?"":"opacity-50 pointer-events-none"])},[e[5]||(e[5]=S("label",{for:"restore_model_after_smart_routing",class:"toggle-label"},[Me(" Restore Original Model After Routing "),S("span",{class:"toggle-description"}," Automatically switch back to the originally selected model after the routed task is complete. ")],-1)),ne(s,{id:"restore_model_after_smart_routing",checked:i.restoreModelAfterRouting,"onUpdate:checked":e[1]||(e[1]=l=>i.updateBoolean("restore_model_after_smart_routing",l)),disabled:!i.useSmartRouting},null,8,["checked","disabled"])],2),S("div",{class:Ee(["setting-item border-t border-blue-200 dark:border-blue-700 pt-3 mt-2",i.useSmartRouting?"":"opacity-50 pointer-events-none"])},[e[6]||(e[6]=S("label",{for:"smart_routing_router_model",class:"setting-label"},[Me(" Router Model Name "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"}," The model responsible for deciding which specialized model to use. (e.g., `mistralai/Mistral-7B-Instruct-v0.2`) ")],-1)),S("input",{type:"text",id:"smart_routing_router_model",value:i.routerModel,onInput:e[2]||(e[2]=l=>i.updateValue("smart_routing_router_model",l.target.value)),disabled:!i.useSmartRouting,class:"input flex-grow",placeholder:"Enter the router model name"},null,40,_An)],2),S("div",{class:Ee(["space-y-2 border-t border-blue-200 dark:border-blue-700 pt-3 mt-2",i.useSmartRouting?"":"opacity-50 pointer-events-none"])},[e[7]||(e[7]=S("label",{class:"label mb-1"},[Me(" Specialized Models & Descriptions "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"}," Define the models that the router can choose from and provide a clear description of their capabilities. ")],-1)),ne(a,{modelValue:i.modelsDescription,"onUpdate:modelValue":e[3]||(e[3]=l=>i.updateValue("smart_routing_models_description",l)),"key-name":"Model Path / Name","value-name":"Model Description (Task Capabilities)","key-placeholder":"Enter model name (e.g., openai/gpt-4) or path","value-placeholder":"Describe what this model is good at (e.g., 'Excellent for coding tasks and complex reasoning')",disabled:!i.useSmartRouting,class:"flex-grow panels-color p-2 rounded"},null,8,["modelValue","disabled"])],2)])])}const MO=Ye(pAn,[["render",QAn],["__scopeId","data-v-29a3f94a"]]),vAn=["for"],yAn=["id","checked","disabled"],bAn={__name:"ToggleSwitch",props:{id:{type:String,required:!0},checked:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["update:checked"],setup(t){return(e,n)=>(N(),H("label",{for:t.id,class:Ee(["relative inline-flex items-center cursor-pointer",{"opacity-50 cursor-not-allowed":t.disabled}])},[S("input",{type:"checkbox",id:t.id,checked:t.checked,disabled:t.disabled,onChange:n[0]||(n[0]=o=>e.$emit("update:checked",o.target.checked)),class:"sr-only peer"},null,40,yAn),n[1]||(n[1]=S("div",{class:"w-11 h-6 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 rounded-full peer dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-blue-600"},null,-1)),_n(e.$slots,"default",{},void 0,!0)],10,vAn))}},n6=Ye(bAn,[["__scopeId","data-v-8b2e5a8e"]]),Wi="/assets/logo-6TyToX4A.png",EAn={name:"MainConfigSettings",components:{ToggleSwitch:n6},props:{loading:{type:Boolean,default:!1},settingsChanged:{type:Boolean,default:!1},api_post_req:{type:Function,required:!0},show_toast:{type:Function,required:!0},client_id:{type:String,required:!0}},emits:["update:setting","settings-changed"],data(){return{isUploadingLogo:!1}},computed:{logoSrc(){return this.$store.state.config.app_custom_logo?`${ce.defaults.baseURL}/user_infos/${this.$store.state.config.app_custom_logo}`:Wi}},methods:{updateValue(t,e){this.$emit("update:setting",{key:t,value:e}),this.$emit("settings-changed",!0)},updateBoolean(t,e){this.$emit("update:setting",{key:t,value:!!e}),this.$emit("settings-changed",!0)},async uploadLogo(t){var o,r;const e=t.target.files[0];if(!e)return;this.isUploadingLogo=!0;const n=new FormData;n.append("logo",e),n.append("client_id",this.client_id);try{const i=await ce.post("/upload_logo",n,{headers:{"Content-Type":"multipart/form-data"}});i.data&&i.data.status?(this.show_toast("Logo uploaded successfully!",4,!0),this.$emit("update:setting",{key:"app_custom_logo",value:i.data.filename}),this.$emit("settings-changed",!0)):this.show_toast(`Logo upload failed: ${i.data.error||"Unknown error"}`,4,!1)}catch(i){console.error("Error uploading logo:",i),this.show_toast(`Error uploading logo: ${((r=(o=i.response)==null?void 0:o.data)==null?void 0:r.error)||i.message||"Unknown error"}`,4,!1)}finally{this.isUploadingLogo=!1,t.target&&(t.target.value=null)}},async removeLogo(){var t,e;this.isUploadingLogo=!0;try{const n=await this.api_post_req("/remove_logo",{client_id:this.client_id});n.status?(this.show_toast("Logo removed successfully!",4,!0),this.$emit("update:setting",{key:"app_custom_logo",value:null}),this.$emit("settings-changed",!0)):this.show_toast(`Failed to remove logo: ${n.error||"Unknown error"}`,4,!1)}catch(n){console.error("Error removing logo:",n),this.show_toast(`Error removing logo: ${((e=(t=n.response)==null?void 0:t.data)==null?void 0:e.error)||n.message||"Unknown error"}`,4,!1)}finally{this.isUploadingLogo=!1}},replaceFeatherIcons(){Se(()=>{try{Ce.replace()}catch(t){console.error("Feather icons replacement failed:",t)}})}},mounted(){this.replaceFeatherIcons()},updated(){this.replaceFeatherIcons()}},SAn={class:"user-settings-panel space-y-6"},xAn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},LAn={class:"setting-item"},CAn=["value"],AAn={class:"setting-item"},wAn=["value"],OAn={class:"setting-item items-start"},MAn={class:"flex-1 flex items-center gap-4"},RAn={class:"w-12 h-12 rounded-full overflow-hidden bg-blue-200 dark:bg-blue-700 ring-2 ring-offset-2 dark:ring-offset-blue-900 ring-blue-300 dark:ring-blue-600"},NAn=["src"],DAn={class:"flex gap-2"},IAn={class:"btn btn-secondary btn-sm cursor-pointer"},kAn=["disabled"],HAn=["disabled"],PAn={key:0,class:"text-xs text-blue-500 dark:text-blue-400 italic ml-2"},$An={class:"setting-item items-start"},VAn=["value"],BAn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},FAn={class:"toggle-item"},UAn={class:"toggle-item"},qAn={class:"toggle-item"},GAn={class:"toggle-item"},jAn={class:"toggle-item"},zAn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},YAn={class:"setting-item items-start p-4 bg-red-100 dark:bg-red-900/30 rounded-lg border border-red-300 dark:border-red-700"},WAn={class:"flex justify-between items-start w-full"},KAn={class:"toggle-item"};function ZAn(t,e,n,o,r,i){const s=ze("ToggleSwitch");return N(),H("div",SAn,[e[27]||(e[27]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 border-b border-blue-300 dark:border-blue-600 pb-2"}," Main Configuration ",-1)),S("div",xAn,[e[17]||(e[17]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Application Branding",-1)),S("div",LAn,[e[12]||(e[12]=S("label",{for:"app_custom_name",class:"setting-label"},"Application Name",-1)),S("input",{type:"text",id:"app_custom_name",value:t.$store.state.config.app_custom_name,onInput:e[0]||(e[0]=a=>i.updateValue("app_custom_name",a.target.value)),class:"input flex-grow",placeholder:"Default: LoLLMs"},null,40,CAn)]),S("div",AAn,[e[13]||(e[13]=S("label",{for:"app_custom_slogan",class:"setting-label"},"Application Slogan",-1)),S("input",{type:"text",id:"app_custom_slogan",value:t.$store.state.config.app_custom_slogan,onInput:e[1]||(e[1]=a=>i.updateValue("app_custom_slogan",a.target.value)),class:"input flex-grow",placeholder:"Default: Lord of Large Language Models"},null,40,wAn)]),S("div",OAn,[e[15]||(e[15]=S("label",{class:"setting-label pt-2"},"Application Logo",-1)),S("div",MAn,[S("div",RAn,[S("img",{src:i.logoSrc,class:"w-full h-full object-cover",alt:"App Logo"},null,8,NAn)]),S("div",DAn,[S("label",IAn,[e[14]||(e[14]=Me(" Upload Logo ")),S("input",{type:"file",onChange:e[2]||(e[2]=(...a)=>i.uploadLogo&&i.uploadLogo(...a)),accept:"image/*",class:"hidden",disabled:r.isUploadingLogo},null,40,kAn)]),t.$store.state.config.app_custom_logo?(N(),H("button",{key:0,onClick:e[3]||(e[3]=(...a)=>i.removeLogo&&i.removeLogo(...a)),class:"btn btn-secondary btn-sm text-red-500 dark:text-red-400 hover:bg-red-200 dark:hover:bg-red-700",disabled:r.isUploadingLogo}," Remove Logo ",8,HAn)):Z("",!0)]),r.isUploadingLogo?(N(),H("span",PAn,"Uploading...")):Z("",!0)])]),S("div",$An,[e[16]||(e[16]=S("label",{for:"app_custom_welcome_message",class:"setting-label pt-2"},"Custom Welcome Message",-1)),S("textarea",{id:"app_custom_welcome_message",value:t.$store.state.config.app_custom_welcome_message,onInput:e[4]||(e[4]=a=>i.updateValue("app_custom_welcome_message",a.target.value)),class:"input flex-grow min-h-[80px] resize-y",placeholder:"Enter a custom welcome message shown on the main page (leave blank for default)."},null,40,VAn)])]),S("div",BAn,[e[23]||(e[23]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"UI & Behavior",-1)),S("div",FAn,[e[18]||(e[18]=S("label",{for:"auto_title",class:"toggle-label"},[Me(" Automatic Discussion Naming "),S("span",{class:"toggle-description"},"Let AI name your discussions automatically based on the first message.")],-1)),ne(s,{id:"auto_title",checked:t.$store.state.config.auto_title,"onUpdate:checked":e[5]||(e[5]=a=>i.updateBoolean("auto_title",a))},null,8,["checked"])]),S("div",UAn,[e[19]||(e[19]=S("label",{for:"auto_show_browser",class:"toggle-label"},[Me(" Auto-launch Browser "),S("span",{class:"toggle-description"},"Open the default web browser automatically when LoLLMs starts.")],-1)),ne(s,{id:"auto_show_browser",checked:t.$store.state.config.auto_show_browser,"onUpdate:checked":e[6]||(e[6]=a=>i.updateBoolean("auto_show_browser",a))},null,8,["checked"])]),S("div",qAn,[e[20]||(e[20]=S("label",{for:"app_show_changelogs",class:"toggle-label"},[Me(" Show Startup Changelog "),S("span",{class:"toggle-description"},"Display the changelog modal window when the application starts after an update.")],-1)),ne(s,{id:"app_show_changelogs",checked:t.$store.state.config.app_show_changelogs,"onUpdate:checked":e[7]||(e[7]=a=>i.updateBoolean("app_show_changelogs",a))},null,8,["checked"])]),S("div",GAn,[e[21]||(e[21]=S("label",{for:"app_show_fun_facts",class:"toggle-label"},[Me(" Show Fun Facts "),S("span",{class:"toggle-description"},"Display fun facts related to AI and LLMs while loading or waiting.")],-1)),ne(s,{id:"app_show_fun_facts",checked:t.$store.state.config.app_show_fun_facts,"onUpdate:checked":e[8]||(e[8]=a=>i.updateBoolean("app_show_fun_facts",a))},null,8,["checked"])]),S("div",jAn,[e[22]||(e[22]=S("label",{for:"copy_to_clipboard_add_all_details",class:"toggle-label"},[Me(" Enhanced Message Copy "),S("span",{class:"toggle-description"},"Include metadata (sender, model, etc.) when copying messages from discussions.")],-1)),ne(s,{id:"copy_to_clipboard_add_all_details",checked:t.$store.state.config.copy_to_clipboard_add_all_details,"onUpdate:checked":e[9]||(e[9]=a=>i.updateBoolean("copy_to_clipboard_add_all_details",a))},null,8,["checked"])])]),S("div",zAn,[e[26]||(e[26]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Server & Access",-1)),S("div",YAn,[S("div",WAn,[e[24]||(e[24]=tr('',1)),ne(s,{id:"force_accept_remote_access",checked:t.$store.state.config.force_accept_remote_access,"onUpdate:checked":e[10]||(e[10]=a=>i.updateBoolean("force_accept_remote_access",a))},null,8,["checked"])])]),S("div",KAn,[e[25]||(e[25]=S("label",{for:"headless_server_mode",class:"toggle-label"},[Me(" Headless Server Mode "),S("span",{class:"toggle-description"},"Run LoLLMs without the Web UI. Useful for server deployments or API-only usage. This setting requires a restart.")],-1)),ne(s,{id:"headless_server_mode",checked:t.$store.state.config.headless_server_mode,"onUpdate:checked":e[11]||(e[11]=a=>i.updateBoolean("headless_server_mode",a))},null,8,["checked"])])])])}const RO=Ye(EAn,[["render",ZAn],["__scopeId","data-v-3d0b320b"]]),XAn={name:"DataManagementSettings",components:{ToggleSwitch:n6},props:{loading:{type:Boolean,default:!1},api_post_req:{type:Function,required:!0},api_get_req:{type:Function,required:!0},show_toast:{type:Function,required:!0},client_id:{type:String,required:!0}},emits:["settings-changed"],data(){return{fileInputs:[],serverStatuses:fr({})}},methods:{updateDataLake(t,e,n){const o=JSON.parse(JSON.stringify(this.$store.state.config.datalakes||[]));o[t]?(o[t][e]=n,e==="type"&&(n==="lollmsvectordb"?o[t].url="":o[t].path=""),this.$store.state.config.datalakes=o):console.error("Attempted to update non-existent datalake at index:",t)},addDataLake(){const t=this.$store.state.config.datalakes?[...this.$store.state.config.datalakes]:[];t.push({alias:"New DataLake",type:"lollmsvectordb",url:"",path:"",key:"",mounted:!1}),this.$store.state.config.datalakes=t,Se(()=>Ce.replace())},removeDataLake(t){const e=this.$store.state.config.datalakes.filter((n,o)=>o!==t);this.$store.state.config.datalakes=e},async vectorizeFolder(t){const e=this.$store.state.config.datalakes[t];if(!e||e.type!=="lollmsvectordb"||!e.path){this.show_toast("Please ensure a valid path is set for the LoLLMs VectorDB.",4,!1);return}this.show_toast(`Starting vectorization for: ${e.alias}`,5,!0);try{await this.api_post_req("vectorize_folder",{rag_database:e})}catch(n){this.show_toast(`Vectorization failed for ${e.alias}: ${n.message||n}`,4,!1)}},async selectLollmsVectordbFolder(t){try{const e=n=>{if(n&&n.path&&n.datalake_name){const o=JSON.parse(JSON.stringify(this.$store.state.config.datalakes||[]));o[t]&&(o[t].path=n.path,o[t].alias=n.datalake_name,this.$store.state.config.datalakes=o,this.show_toast(`Folder selected for Data Lake: ${n.path}`,4,!0))}else this.show_toast("Folder selection failed or returned invalid data.",4,!1);Ze.off("lollmsvectordb_datalake_added",e)};Ze.on("lollmsvectordb_datalake_added",e),await this.api_post_req("select_lollmsvectordb_input_folder")}catch(e){this.show_toast(`Failed to initiate folder selection: ${e.message||e}`,4,!1),Ze.off("lollmsvectordb_datalake_added")}},triggerFileInput(t){this.fileInputs[t]?this.fileInputs[t].click():console.warn("File input ref not found for index:",t)},async handleFileUpload(t,e){var r,i,s;const n=Array.from(t.target.files),o=this.$store.state.config.datalakes[e];if(!(!n.length||o.type!=="lightrag")){this.show_toast(`Uploading ${n.length} file(s) to ${o.alias}...`,n.length*2,!0);for(const a of n){const l=new FormData;l.append("file",a),l.append("client_id",this.client_id);const c={"Content-Type":"multipart/form-data"};o.key&&(c["X-API-Key"]=o.key);try{const u=await ce.post(`${o.url.replace(/\/+$/,"")}/documents/upload`,l,{headers:c});u.data&&(u.status===200||u.status===201)?this.show_toast(`${a.name} uploaded successfully to ${o.alias}`,4,!0):this.show_toast(`Failed to upload ${a.name}: ${((r=u.data)==null?void 0:r.detail)||"Server error"}`,4,!1)}catch(u){console.error(`Error uploading ${a.name}:`,u),this.show_toast(`Error uploading ${a.name}: ${((s=(i=u.response)==null?void 0:i.data)==null?void 0:s.detail)||u.message||u}`,4,!1)}}t.target&&(t.target.value=null)}},updateServer(t,e,n){const o=JSON.parse(JSON.stringify(this.$store.state.config.rag_local_services||[]));o[t]?(o[t][e]=n,this.$store.state.config.rag_local_services=o):console.error("Attempted to update non-existent server at index:",t)},addDatabaseService(){const t=this.$store.state.config.rag_local_services?[...this.$store.state.config.rag_local_services]:[];t.push({alias:"New RAG Server",type:"lightrag",url:"http://localhost:9621/",key:"",input_path:"",working_path:"",start_at_startup:!1}),this.$store.state.config.rag_local_services=t,Se(()=>Ce.replace())},removeDatabaseService(t){const e=this.$store.state.config.rag_local_services.filter((n,o)=>o!==t);this.$store.state.config.rag_local_services=e},async startRagServer(t){const e=this.$store.state.config.rag_local_services[t];this.show_toast(`Attempting to start server: ${e.alias}...`,4,!0);try{const n=await this.api_post_req("start_rag_server",{server_index:t});n.status?(this.show_toast(`Start command sent for ${e.alias}. Check status shortly.`,4,!0),setTimeout(()=>this.checkServerHealth(t),5e3)):this.show_toast(`Failed to send start command for ${e.alias}: ${n.error||"Unknown error"}`,4,!1)}catch(n){this.show_toast(`Error starting server ${e.alias}: ${n.message||n}`,4,!1)}},async checkServerHealth(t){if(!this.$store.state.config.rag_local_services||!this.$store.state.config.rag_local_services[t]){console.warn(`Tried to check health for non-existent server index: ${t}`);return}const e=this.$store.state.config.rag_local_services[t];if(!e||e.type!=="lightrag"){this.serverStatuses[t]={status:"unknown",loading:!1,details:null,dotClass:"bg-gray-400",title:"Unsupported",text:"Unsupported Type"};return}this.serverStatuses[t]={status:"loading",loading:!0,details:null,dotClass:"bg-yellow-400 animate-pulse",title:"Checking...",text:"Checking..."};try{const n=`${e.url.replace(/\/+$/,"")}/health`,o={};e.key&&(o["X-API-Key"]=e.key);const r=await fetch(n,{headers:o});if(!r.ok)throw new Error(`HTTP error! status: ${r.status}`);const i=await r.json();this.serverStatuses[t]={status:"healthy",loading:!1,details:i,dotClass:"bg-green-500",title:"Healthy",text:"Healthy"},this.show_toast(`${e.alias} is healthy.`,3,!0)}catch(n){console.error(`Health check failed for ${e.alias}:`,n),this.serverStatuses[t]={status:"unhealthy",loading:!1,details:null,dotClass:"bg-red-500",title:"Unhealthy",text:"Unhealthy"},this.show_toast(`${e.alias} health check failed: ${n.message||n}`,4,!1)}},showLightRagWebUI(t){const e=this.$store.state.config.rag_local_services[t];if(e&&e.type==="lightrag"&&e.url){const n=`${e.url.replace(/\/+$/,"")}/webui`;window.open(n,"_blank")}else this.show_toast("Cannot open WebUI. Invalid server configuration.",4,!1)},async selectLightragFolder(t,e){const n=e==="input"?"select_lightrag_input_folder":"select_lightrag_output_folder",o=e==="input"?"lightrag_input_folder_added":"lightrag_output_folder_added",r=e==="input"?"input_path":"working_path";try{const i=s=>{if(s&&s.path){const a=JSON.parse(JSON.stringify(this.$store.state.config.rag_local_services||[]));a[t]&&(a[t][r]=s.path,this.$store.state.config.rag_local_services=a,this.show_toast(`${e.charAt(0).toUpperCase()+e.slice(1)} folder selected: ${s.path}`,4,!0))}else this.show_toast(`Folder selection failed for ${e}.`,4,!1);Ze.off(o,i)};Ze.on(o,i),await this.api_post_req(n,{server_index:t})}catch(i){this.show_toast(`Failed to initiate ${e} folder selection: ${i.message||i}`,4,!1),Ze.off(o)}},refreshFeatherIcons(){Se(()=>{Ce.replace()})}},mounted(){this.refreshFeatherIcons(),this.$store.state.config.rag_local_services&&this.$store.state.config.rag_local_services.forEach((t,e)=>this.checkServerHealth(e)),this.$store.state.config.datalakes&&(this.fileInputs=new Array(this.$store.state.config.datalakes.length).fill(null))},updated(){if(this.refreshFeatherIcons(),this.$store.state.config.datalakes&&this.fileInputs.length!==this.$store.state.config.datalakes.length){const t=this.$store.state.config.datalakes.length,e=this.fileInputs.length;t>e?this.fileInputs.push(...new Array(t-e).fill(null)):this.fileInputs.splice(t)}},watch:{"config.datalakes.length"(t,e){t>e?this.fileInputs.push(...new Array(t-e).fill(null)):t(N(),H("div",{key:`datalake-${l}`,class:"p-4 bg-blue-100 dark:bg-blue-800/60 border border-blue-200 dark:border-blue-700 rounded-lg shadow-sm space-y-4 relative group"},[S("button",{onClick:c=>i.removeDataLake(l),class:"absolute top-2 right-2 p-1 rounded-full text-red-500 hover:bg-red-100 dark:hover:bg-red-800 opacity-0 group-hover:opacity-100 transition-opacity duration-200 svg-button",title:"Remove Data Lake"},e[15]||(e[15]=[S("i",{"data-feather":"x-circle",class:"w-5 h-5"},null,-1)]),8,rwn),S("div",iwn,[S("div",null,[S("label",{for:`dl-alias-${l}`,class:"label mb-1"},"Alias",8,own),S("input",{type:"text",id:`dl-alias-${l}`,value:a.alias,onInput:c=>i.updateDataLake(l,"alias",c.target.value),class:"input input-sm w-full",placeholder:"Enter alias (e.g., 'Project Docs')"},null,40,swn)]),S("div",null,[S("label",{for:`dl-type-${l}`,class:"label mb-1"},"Type",8,awn),S("select",{id:`dl-type-${l}`,required:"",value:a.type,onChange:c=>i.updateDataLake(l,"type",c.target.value),class:"input input-sm w-full"},e[16]||(e[16]=[S("option",{value:"lollmsvectordb"},"LoLLMs VectorDB",-1),S("option",{value:"lightrag"},"LightRAG",-1),S("option",{value:"elasticsearch"},"Elasticsearch",-1)]),40,lwn)]),S("div",cwn,[S("label",{for:`dl-pathurl-${l}`,class:"label mb-1"},J(a.type==="lollmsvectordb"?"Database Path":a.type==="lightrag"?"LightRAG URL":"Elasticsearch URL"),9,uwn),S("input",{type:"text",id:`dl-pathurl-${l}`,value:a.type==="lollmsvectordb"?a.path:a.url,onInput:c=>i.updateDataLake(l,a.type==="lollmsvectordb"?"path":"url",c.target.value),class:"input input-sm w-full",placeholder:a.type==="lollmsvectordb"?"Path to database folder":"http://host:port/"},null,40,dwn)]),a.type==="lightrag"||a.type==="elasticsearch"?(N(),H("div",Twn,[S("label",{for:`dl-key-${l}`,class:"label mb-1"},"API Key (Optional)",8,fwn),S("input",{type:"password",id:`dl-key-${l}`,value:a.key,onInput:c=>i.updateDataLake(l,"key",c.target.value),class:"input input-sm w-full",placeholder:"Enter API key if required"},null,40,pwn)])):Z("",!0)]),S("div",hwn,[S("div",mwn,[ne(s,{id:`dl-mounted-${l}`,checked:a.mounted,"onUpdate:checked":c=>i.updateDataLake(l,"mounted",c)},null,8,["id","checked","onUpdate:checked"]),S("label",{for:`dl-mounted-${l}`,class:"label !mb-0 text-sm cursor-pointer"}," Mounted ",8,gwn)]),S("div",_wn,[a.type==="lollmsvectordb"?(N(),H(xe,{key:0},[S("button",{onClick:c=>i.vectorizeFolder(l),class:"btn btn-secondary btn-sm",title:"Vectorize or re-vectorize the selected folder"},e[17]||(e[17]=[S("i",{"data-feather":"refresh-cw",class:"w-4 h-4 mr-1"},null,-1),Me(" Vectorize ")]),8,Qwn),S("button",{onClick:c=>i.selectLollmsVectordbFolder(l),class:"btn btn-primary btn-sm",title:"Select folder containing documents to vectorize"},e[18]||(e[18]=[S("i",{"data-feather":"folder-plus",class:"w-4 h-4 mr-1"},null,-1),Me(" Select Folder ")]),8,vwn)],64)):Z("",!0),a.type==="lightrag"?(N(),H(xe,{key:1},[S("button",{onClick:c=>i.triggerFileInput(l),class:"btn btn-success btn-sm",title:"Upload supported files (.txt, .md, .pdf, .docx, .pptx, .xlsx)"},e[19]||(e[19]=[S("i",{"data-feather":"upload",class:"w-4 h-4 mr-1"},null,-1),Me(" Upload Files ")]),8,ywn),S("input",{type:"file",ref_for:!0,ref:c=>{c&&(r.fileInputs[l]=c)},onChange:c=>i.handleFileUpload(c,l),accept:".txt,.md,.pdf,.docx,.pptx,.xlsx",class:"hidden",multiple:""},null,40,bwn)],64)):Z("",!0)])])]))),128))]),S("div",Ewn,[S("button",{onClick:e[0]||(e[0]=(...a)=>i.addDataLake&&i.addDataLake(...a)),class:"btn btn-primary w-full md:w-auto"},e[20]||(e[20]=[S("i",{"data-feather":"plus-circle",class:"w-5 h-5 mr-2"},null,-1),Me(" Add New Data Lake ")]))])]),S("section",Swn,[e[33]||(e[33]=S("h3",{class:"text-xl font-medium text-blue-600 dark:text-blue-300 mb-2"},"Self-Hosted RAG Servers",-1)),e[34]||(e[34]=S("p",{class:"text-sm text-blue-500 dark:text-blue-400 mb-4"}," Configure and manage local RAG server instances (like LightRAG) running on your machine. ",-1)),S("div",xwn,[!t.$store.state.config.rag_local_services||t.$store.state.config.rag_local_services.length===0?(N(),H("div",Lwn," No RAG Servers configured. ")):Z("",!0),(N(!0),H(xe,null,Pe(t.$store.state.config.rag_local_services,(a,l)=>{var c,u,d,f,T,h,g,Q;return N(),H("div",{key:`server-${l}`,class:"p-4 bg-blue-100 dark:bg-blue-800/60 border border-blue-200 dark:border-blue-700 rounded-lg shadow-sm space-y-4 relative group"},[S("button",{onClick:m=>i.removeDatabaseService(l),class:"absolute top-2 right-2 p-1 rounded-full text-red-500 hover:bg-red-100 dark:hover:bg-red-800 opacity-0 group-hover:opacity-100 transition-opacity duration-200 svg-button",title:"Remove Server"},e[23]||(e[23]=[S("i",{"data-feather":"x-circle",class:"w-5 h-5"},null,-1)]),8,Cwn),S("div",Awn,[S("div",null,[S("label",{for:`srv-alias-${l}`,class:"label mb-1"},"Alias",8,wwn),S("input",{type:"text",id:`srv-alias-${l}`,value:a.alias,onInput:m=>i.updateServer(l,"alias",m.target.value),class:"input input-sm w-full",placeholder:"Server Alias"},null,40,Own)]),S("div",null,[S("label",{for:`srv-type-${l}`,class:"label mb-1"},"Type",8,Mwn),S("select",{id:`srv-type-${l}`,required:"",value:a.type,onChange:m=>i.updateServer(l,"type",m.target.value),class:"input input-sm w-full"},e[24]||(e[24]=[S("option",{value:"lightrag"},"LightRAG",-1)]),40,Rwn)]),S("div",Nwn,[S("label",{for:`srv-url-${l}`,class:"label mb-1"},"Server URL",8,Dwn),S("input",{type:"text",id:`srv-url-${l}`,value:a.url,onInput:m=>i.updateServer(l,"url",m.target.value),class:"input input-sm w-full",placeholder:"http://localhost:port"},null,40,Iwn)]),S("div",null,[S("label",{for:`srv-key-${l}`,class:"label mb-1"},"API Key (Optional)",8,kwn),S("input",{type:"password",id:`srv-key-${l}`,value:a.key,onInput:m=>i.updateServer(l,"key",m.target.value),class:"input input-sm w-full",placeholder:"API Key if needed"},null,40,Hwn)]),S("div",Pwn,[S("div",$wn,[ne(s,{id:`srv-startup-${l}`,checked:a.start_at_startup,"onUpdate:checked":m=>i.updateServer(l,"start_at_startup",m)},null,8,["id","checked","onUpdate:checked"]),S("label",{for:`srv-startup-${l}`,class:"label !mb-0 text-sm cursor-pointer"},"Start at Startup",8,Vwn)])]),S("div",null,[S("label",{for:`srv-input-${l}`,class:"label mb-1"},"Input Folder Path",8,Bwn),S("div",Fwn,[S("input",{type:"text",id:`srv-input-${l}`,value:a.input_path,onInput:m=>i.updateServer(l,"input_path",m.target.value),class:"input input-sm w-full rounded-r-none",placeholder:"Path to watch for new files"},null,40,Uwn),S("button",{onClick:m=>i.selectLightragFolder(l,"input"),class:"btn btn-secondary btn-sm rounded-l-none flex-shrink-0",title:"Select Input Folder"},e[25]||(e[25]=[S("i",{"data-feather":"folder",class:"w-4 h-4"},null,-1)]),8,qwn)])]),S("div",null,[S("label",{for:`srv-work-${l}`,class:"label mb-1"},"Working Folder Path",8,Gwn),S("div",jwn,[S("input",{type:"text",id:`srv-work-${l}`,value:a.working_path,onInput:m=>i.updateServer(l,"working_path",m.target.value),class:"input input-sm w-full rounded-r-none",placeholder:"Path for database files"},null,40,zwn),S("button",{onClick:m=>i.selectLightragFolder(l,"output"),class:"btn btn-secondary btn-sm rounded-l-none flex-shrink-0",title:"Select Working Folder"},e[26]||(e[26]=[S("i",{"data-feather":"folder",class:"w-4 h-4"},null,-1)]),8,Ywn)])])]),S("div",Wwn,[S("div",Kwn,[S("span",{class:Ee(["w-3 h-3 rounded-full",((c=r.serverStatuses[l])==null?void 0:c.dotClass)||"bg-status-unknown"]),title:((u=r.serverStatuses[l])==null?void 0:u.title)||"Unknown"},null,10,Zwn),S("span",Xwn,J(((d=r.serverStatuses[l])==null?void 0:d.text)||"Status Unknown"),1),S("button",{onClick:m=>i.checkServerHealth(l),class:"btn btn-secondary btn-sm !p-1",title:"Check Server Status",disabled:(f=r.serverStatuses[l])==null?void 0:f.loading},[S("i",{"data-feather":"refresh-cw",class:Ee(["w-4 h-4",(T=r.serverStatuses[l])!=null&&T.loading?"animate-spin":""])},null,2)],8,Jwn)]),S("div",eOn,[S("button",{onClick:m=>i.startRagServer(l),class:"btn btn-success btn-sm",title:"Start this RAG server instance"},e[27]||(e[27]=[S("i",{"data-feather":"play",class:"w-4 h-4 mr-1"},null,-1),Me(" Start Server ")]),8,tOn),a.type==="lightrag"&&((h=r.serverStatuses[l])==null?void 0:h.status)==="healthy"?(N(),H("button",{key:0,onClick:m=>i.showLightRagWebUI(l),class:"btn btn-primary btn-sm",title:"Open LightRAG Web UI"},e[28]||(e[28]=[S("i",{"data-feather":"external-link",class:"w-4 h-4 mr-1"},null,-1),Me(" Show WebUI ")]),8,nOn)):Z("",!0)])]),a.type==="lightrag"&&r.serverStatuses[l]&&r.serverStatuses[l].status==="healthy"&&r.serverStatuses[l].details?(N(),H("div",rOn,[S("div",null,[e[29]||(e[29]=S("b",{class:"text-blue-600 dark:text-blue-300"},"Indexed Files:",-1)),Me(" "+J(r.serverStatuses[l].details.indexed_files_count??"N/A"),1)]),S("div",null,[e[30]||(e[30]=S("b",{class:"text-blue-600 dark:text-blue-300"},"Model:",-1)),Me(" "+J(((g=r.serverStatuses[l].details.configuration)==null?void 0:g.llm_model)||"N/A"),1)]),S("div",null,[e[31]||(e[31]=S("b",{class:"text-blue-600 dark:text-blue-300"},"Embedding:",-1)),Me(" "+J(((Q=r.serverStatuses[l].details.configuration)==null?void 0:Q.embedding_model)||"N/A"),1)])])):Z("",!0)])}),128))]),S("div",iOn,[S("button",{onClick:e[1]||(e[1]=(...a)=>i.addDatabaseService&&i.addDatabaseService(...a)),class:"btn btn-primary w-full md:w-auto"},e[32]||(e[32]=[S("i",{"data-feather":"plus-circle",class:"w-5 h-5 mr-2"},null,-1),Me(" Add New RAG Server ")]))])]),S("section",oOn,[e[46]||(e[46]=S("h3",{class:"text-xl font-medium text-blue-600 dark:text-blue-300 mb-3"},"LoLLMs VectorDB Settings",-1)),S("div",sOn,[S("div",null,[e[36]||(e[36]=S("label",{for:"rag_vectorizer",class:"label mb-1"},"Vectorizer Engine",-1)),S("select",{id:"rag_vectorizer",required:"",value:t.$store.state.config.rag_vectorizer,onChange:e[2]||(e[2]=a=>t.$store.state.config.rag_vectorizer=a.target.value),class:"input input-sm w-full"},e[35]||(e[35]=[S("option",{value:"semantic"},"Sentence Transformer (Recommended)",-1),S("option",{value:"tfidf"},"TF-IDF (Fast, Less Accurate)",-1),S("option",{value:"openai"},"OpenAI Ada",-1),S("option",{value:"ollama"},"Ollama Embedding",-1)]),40,aOn)]),S("div",lOn,[S("div",cOn,[ne(s,{id:"rag_vectorizer_execute_remote_code",checked:t.$store.state.config.rag_vectorizer_execute_remote_code,"onUpdate:checked":e[3]||(e[3]=a=>t.$store.state.config.rag_vectorizer_execute_remote_code=!!a)},null,8,["checked"]),e[37]||(e[37]=S("label",{for:"rag_vectorizer_execute_remote_code",class:"label !mb-0 text-sm cursor-pointer"},"Allow Remote Code Execution",-1)),e[38]||(e[38]=S("i",{"data-feather":"alert-triangle",class:"w-4 h-4 text-red-500 dark:text-red-400 ml-1",title:"Security Risk: Only enable if using a trusted custom vectorizer source."},null,-1))])]),S("div",uOn,[e[42]||(e[42]=S("label",{for:"rag_vectorizer_model",class:"label mb-1"},"Vectorizer Model",-1)),S("select",{id:"rag_vectorizer_model",value:t.$store.state.config.rag_vectorizer_model,onChange:e[4]||(e[4]=a=>t.$store.state.config.rag_vectorizer_model=a.target.value),class:"input input-sm w-full mb-1",disabled:t.$store.state.config.rag_vectorizer==="tfidf"},[t.$store.state.config.rag_vectorizer==="tfidf"?(N(),H("option",TOn,"N/A for TF-IDF")):Z("",!0),t.$store.state.config.rag_vectorizer==="semantic"?(N(),H("optgroup",fOn,e[39]||(e[39]=[S("option",{value:"BAAI/bge-m3"},"BAAI/bge-m3",-1),S("option",{value:"nvidia/NV-Embed-v2"},"nvidia/NV-Embed-v2",-1),S("option",{value:"sentence-transformers/all-MiniLM-L6-v2"},"all-MiniLM-L6-v2",-1),S("option",{value:"sentence-transformers/all-mpnet-base-v2"},"all-mpnet-base-v2",-1)]))):Z("",!0),t.$store.state.config.rag_vectorizer==="openai"?(N(),H("optgroup",pOn,e[40]||(e[40]=[S("option",{value:"text-embedding-3-large"},"text-embedding-3-large",-1),S("option",{value:"text-embedding-3-small"},"text-embedding-3-small",-1),S("option",{value:"text-embedding-ada-002"},"text-embedding-ada-002 (Legacy)",-1)]))):Z("",!0),t.$store.state.config.rag_vectorizer==="ollama"?(N(),H("optgroup",hOn,e[41]||(e[41]=[S("option",{value:"mxbai-embed-large"},"mxbai-embed-large",-1),S("option",{value:"nomic-embed-text"},"nomic-embed-text",-1),S("option",{value:"all-minilm"},"all-minilm",-1),S("option",{value:"snowflake-arctic-embed"},"snowflake-arctic-embed",-1)]))):Z("",!0)],40,dOn),S("input",{type:"text",value:t.$store.state.config.rag_vectorizer_model,onInput:e[5]||(e[5]=a=>t.$store.state.config.rag_vectorizer_model=a.target.value),class:"input input-sm w-full",placeholder:"Or enter custom model name/path",disabled:t.$store.state.config.rag_vectorizer==="tfidf"},null,40,mOn)]),t.$store.state.config.rag_vectorizer==="ollama"||t.$store.state.config.rag_vectorizer==="openai"?(N(),H("div",gOn,[S("label",_On,J(t.$store.state.config.rag_vectorizer==="ollama"?"Ollama Server URL":"OpenAI API Base URL"),1),S("input",{type:"text",id:"rag_service_url",value:t.$store.state.config.rag_service_url,onInput:e[6]||(e[6]=a=>t.$store.state.config.rag_service_url=a.target.value),class:"input input-sm w-full",placeholder:t.$store.state.config.rag_vectorizer==="ollama"?"http://localhost:11434":"https://api.openai.com/v1"},null,40,QOn)])):Z("",!0)]),S("div",vOn,[e[43]||(e[43]=S("label",{for:"rag_chunk_size-range",class:"setting-label"},"Chunk Size",-1)),S("div",yOn,[S("input",{id:"rag_chunk_size-range",value:t.$store.state.config.rag_chunk_size,onInput:e[7]||(e[7]=a=>t.$store.state.config.rag_chunk_size=parseInt(a.target.value)),type:"range",min:"100",max:"2000",step:"50",class:"range-input flex-grow"},null,40,bOn),S("input",{id:"rag_chunk_size-number",value:t.$store.state.config.rag_chunk_size,onInput:e[8]||(e[8]=a=>t.$store.state.config.rag_chunk_size=parseInt(a.target.value)),type:"number",min:"100",max:"2000",step:"50",class:"input input-sm w-24 text-center"},null,40,EOn)])]),S("div",SOn,[e[44]||(e[44]=S("label",{for:"rag_overlap_size-range",class:"setting-label"},"Overlap Size",-1)),S("div",xOn,[S("input",{id:"rag_overlap_size-range",value:t.$store.state.config.rag_overlap_size,onInput:e[9]||(e[9]=a=>t.$store.state.config.rag_overlap_size=parseInt(a.target.value)),type:"range",min:"0",max:"500",step:"10",class:"range-input flex-grow"},null,40,LOn),S("input",{id:"rag_overlap_size-number",value:t.$store.state.config.rag_overlap_size,onInput:e[10]||(e[10]=a=>t.$store.state.config.rag_overlap_size=parseInt(a.target.value)),type:"number",min:"0",max:"500",step:"10",class:"input input-sm w-24 text-center"},null,40,COn)])]),S("div",AOn,[ne(s,{id:"rag_clean_chunks",checked:t.$store.state.config.rag_clean_chunks,"onUpdate:checked":e[11]||(e[11]=a=>t.$store.state.config.rag_clean_chunks=!!a)},null,8,["checked"]),e[45]||(e[45]=S("label",{for:"rag_clean_chunks",class:"toggle-label !flex-none"},[Me(" Clean Chunks "),S("span",{class:"toggle-description"},"Attempt to remove redundant whitespace and formatting from text chunks before vectorization.")],-1))])]),S("section",wOn,[e[50]||(e[50]=S("h3",{class:"text-xl font-medium text-blue-600 dark:text-blue-300 mb-3"},"RAG Query Settings",-1)),S("div",OOn,[e[47]||(e[47]=S("label",{for:"rag_build_keys_words",class:"toggle-label"},[Me(" Reformulate Query with Keywords "),S("span",{class:"toggle-description"},"Let the AI extract keywords from your prompt to potentially improve database search relevance.")],-1)),ne(s,{id:"rag_build_keys_words",checked:t.$store.state.config.rag_build_keys_words,"onUpdate:checked":e[12]||(e[12]=a=>t.$store.state.config.rag_build_keys_words=!!a)},null,8,["checked"])]),S("div",MOn,[e[48]||(e[48]=S("label",{for:"rag_put_chunk_informations_into_context",class:"toggle-label"},[Me(" Include Chunk Source Info in Context "),S("span",{class:"toggle-description"},"Prepend retrieved text chunks with source information (e.g., filename) when adding to the LLM context.")],-1)),ne(s,{id:"rag_put_chunk_informations_into_context",checked:t.$store.state.config.rag_put_chunk_informations_into_context,"onUpdate:checked":e[13]||(e[13]=a=>t.$store.state.config.rag_put_chunk_informations_into_context=!!a)},null,8,["checked"])]),S("div",ROn,[e[49]||(e[49]=S("label",{for:"data_vectorization_save_db",class:"toggle-label"},[Me(" Persist Vector Database "),S("span",{class:"toggle-description"},"Save the vectorized data to disk. If disabled, the database is in-memory only and lost on restart. (Applies mainly to LoLLMs VectorDB).")],-1)),ne(s,{id:"data_vectorization_save_db",checked:t.$store.state.config.data_vectorization_save_db,"onUpdate:checked":e[14]||(e[14]=a=>t.$store.state.config.data_vectorization_save_db=!!a)},null,8,["checked"])])])])}const NO=Ye(XAn,[["render",NOn],["__scopeId","data-v-52537129"]]),DOn={name:"InternetSettings",components:{ToggleSwitch:n6},props:{loading:{type:Boolean,default:!1}},emits:["update:setting"],data(){return{}},methods:{updateValue(t,e){const o=["internet_nb_search_pages","internet_vectorization_chunk_size","internet_vectorization_overlap_size","internet_vectorization_nb_chunks"].includes(t)?Number(e)||0:e;this.$emit("update:setting",{key:t,value:o})},updateBoolean(t,e){this.$emit("update:setting",{key:t,value:!!e})},replaceFeatherIcons(){Se(()=>{try{typeof Ce<"u"&&Ce&&typeof Ce.replace=="function"&&Ce.replace()}catch(t){console.error("Feather icons replacement failed:",t)}})}},mounted(){this.replaceFeatherIcons()},updated(){this.replaceFeatherIcons()}},IOn={class:"user-settings-panel space-y-6"},kOn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},HOn={class:"toggle-item"},POn={class:"setting-item"},$On={class:"flex-1 flex items-center gap-4"},VOn=["value","disabled"],BOn=["value","disabled"],FOn={class:"setting-item"},UOn={class:"flex-1 flex items-center gap-4"},qOn=["value","disabled"],GOn=["value","disabled"],jOn={class:"setting-item"},zOn={class:"flex-1 flex items-center gap-4"},YOn=["value","disabled"],WOn=["value","disabled"],KOn={class:"setting-item"},ZOn={class:"flex-1 flex items-center gap-4"},XOn=["value","disabled"],JOn=["value","disabled"];function eMn(t,e,n,o,r,i){const s=ze("ToggleSwitch");return N(),H("div",IOn,[e[22]||(e[22]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 border-b border-blue-300 dark:border-blue-600 pb-2"}," Internet Search ",-1)),e[23]||(e[23]=S("p",{class:"text-sm text-blue-600 dark:text-blue-400 mb-4"}," Configure how LoLLMs interacts with the internet to answer questions or find information. Requires a model capable of function calling or specific instruction following. ",-1)),S("section",kOn,[e[16]||(e[16]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Activation & Behavior",-1)),S("div",HOn,[e[12]||(e[12]=S("label",{for:"activate_internet_search",class:"toggle-label"},[Me(" Enable Automatic Internet Search "),S("span",{class:"toggle-description"},"Allow the AI to decide when to search the internet based on the prompt.")],-1)),ne(s,{id:"activate_internet_search",checked:t.$store.state.config.activate_internet_search,"onUpdate:checked":e[0]||(e[0]=a=>i.updateBoolean("activate_internet_search",a))},null,8,["checked"])]),S("div",{class:Ee(["toggle-item",{"opacity-50 pointer-events-none":!t.$store.state.config.activate_internet_search}])},[e[13]||(e[13]=S("label",{for:"internet_activate_search_decision",class:"toggle-label"},[Me(" Enable Explicit Search Decision "),S("span",{class:"toggle-description"},"Make the AI explicitly state whether it needs to search the internet before performing the search.")],-1)),ne(s,{id:"internet_activate_search_decision",checked:t.$store.state.config.internet_activate_search_decision,"onUpdate:checked":e[1]||(e[1]=a=>i.updateBoolean("internet_activate_search_decision",a)),disabled:!t.$store.state.config.activate_internet_search},null,8,["checked","disabled"])],2),S("div",{class:Ee(["toggle-item",{"opacity-50 pointer-events-none":!t.$store.state.config.activate_internet_search}])},[e[14]||(e[14]=S("label",{for:"activate_internet_pages_judgement",class:"toggle-label"},[Me(" Enable Search Result Evaluation "),S("span",{class:"toggle-description"},"Allow the AI to evaluate the relevance and quality of search result snippets before using them.")],-1)),ne(s,{id:"activate_internet_pages_judgement",checked:t.$store.state.config.activate_internet_pages_judgement,"onUpdate:checked":e[2]||(e[2]=a=>i.updateBoolean("activate_internet_pages_judgement",a)),disabled:!t.$store.state.config.activate_internet_search},null,8,["checked","disabled"])],2),S("div",{class:Ee(["toggle-item",{"opacity-50 pointer-events-none":!t.$store.state.config.activate_internet_search}])},[e[15]||(e[15]=S("label",{for:"internet_quick_search",class:"toggle-label"},[Me(" Enable Quick Search "),S("span",{class:"toggle-description"},"Perform a faster search potentially using fewer results or less processing, might be less accurate.")],-1)),ne(s,{id:"internet_quick_search",checked:t.$store.state.config.internet_quick_search,"onUpdate:checked":e[3]||(e[3]=a=>i.updateBoolean("internet_quick_search",a)),disabled:!t.$store.state.config.activate_internet_search},null,8,["checked","disabled"])],2)]),S("section",{class:Ee(["space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color",t.$store.state.config.activate_internet_search?"":"opacity-50 pointer-events-none"])},[e[21]||(e[21]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Search Parameters",-1)),S("div",POn,[e[17]||(e[17]=S("label",{for:"internet_nb_search_pages",class:"setting-label"},[Me(" Number of Search Results "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"},"Controls how many search result snippets are initially retrieved.")],-1)),S("div",$On,[S("input",{id:"internet_nb_search_pages-range",value:t.$store.state.config.internet_nb_search_pages,onInput:e[4]||(e[4]=a=>i.updateValue("internet_nb_search_pages",a.target.value)),type:"range",min:"1",max:"20",step:"1",class:"range-input",disabled:!t.$store.state.config.activate_internet_search},null,40,VOn),S("input",{id:"internet_nb_search_pages-number",value:t.$store.state.config.internet_nb_search_pages,onInput:e[5]||(e[5]=a=>i.updateValue("internet_nb_search_pages",a.target.value)),type:"number",min:"1",max:"20",step:"1",class:"input-sm w-20 text-center",disabled:!t.$store.state.config.activate_internet_search},null,40,BOn)])]),S("div",FOn,[e[18]||(e[18]=S("label",{for:"internet_vectorization_chunk_size",class:"setting-label"},[Me(" Content Chunk Size "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"},"Size of text chunks when processing content from searched web pages (if applicable).")],-1)),S("div",UOn,[S("input",{id:"internet_vectorization_chunk_size-range",value:t.$store.state.config.internet_vectorization_chunk_size,onInput:e[6]||(e[6]=a=>i.updateValue("internet_vectorization_chunk_size",a.target.value)),type:"range",min:"100",max:"1000",step:"50",class:"range-input",disabled:!t.$store.state.config.activate_internet_search},null,40,qOn),S("input",{id:"internet_vectorization_chunk_size-number",value:t.$store.state.config.internet_vectorization_chunk_size,onInput:e[7]||(e[7]=a=>i.updateValue("internet_vectorization_chunk_size",a.target.value)),type:"number",min:"100",max:"1000",step:"50",class:"input-sm w-20 text-center",disabled:!t.$store.state.config.activate_internet_search},null,40,GOn)])]),S("div",jOn,[e[19]||(e[19]=S("label",{for:"internet_vectorization_overlap_size",class:"setting-label"},[Me(" Content Overlap Size "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"},"Overlap between text chunks when processing web page content.")],-1)),S("div",zOn,[S("input",{id:"internet_vectorization_overlap_size-range",value:t.$store.state.config.internet_vectorization_overlap_size,onInput:e[8]||(e[8]=a=>i.updateValue("internet_vectorization_overlap_size",a.target.value)),type:"range",min:"0",max:"200",step:"10",class:"range-input",disabled:!t.$store.state.config.activate_internet_search},null,40,YOn),S("input",{id:"internet_vectorization_overlap_size-number",value:t.$store.state.config.internet_vectorization_overlap_size,onInput:e[9]||(e[9]=a=>i.updateValue("internet_vectorization_overlap_size",a.target.value)),type:"number",min:"0",max:"200",step:"10",class:"input-sm w-20 text-center",disabled:!t.$store.state.config.activate_internet_search},null,40,WOn)])]),S("div",KOn,[e[20]||(e[20]=S("label",{for:"internet_vectorization_nb_chunks",class:"setting-label"},[Me(" Number of Content Chunks to Use "),S("span",{class:"block text-xs font-normal text-blue-500 dark:text-blue-400 mt-1"},"Maximum number of processed text chunks from web pages to include in the context.")],-1)),S("div",ZOn,[S("input",{id:"internet_vectorization_nb_chunks-range",value:t.$store.state.config.internet_vectorization_nb_chunks,onInput:e[10]||(e[10]=a=>i.updateValue("internet_vectorization_nb_chunks",a.target.value)),type:"range",min:"1",max:"20",step:"1",class:"range-input",disabled:!t.$store.state.config.activate_internet_search},null,40,XOn),S("input",{id:"internet_vectorization_nb_chunks-number",value:t.$store.state.config.internet_vectorization_nb_chunks,onInput:e[11]||(e[11]=a=>i.updateValue("internet_vectorization_nb_chunks",a.target.value)),type:"number",min:"1",max:"20",step:"1",class:"input-sm w-20 text-center",disabled:!t.$store.state.config.activate_internet_search},null,40,JOn)])])],2)])}const DO=Ye(DOn,[["render",eMn],["__scopeId","data-v-4777608e"]]),tMn={class:"user-settings-panel space-y-6"},nMn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},rMn={class:"grid grid-cols-1 gap-4"},iMn={class:"setting-item"},oMn={class:"flex items-center gap-2 flex-grow"},sMn=["value"],aMn=["value"],lMn=["disabled"],cMn={class:"setting-item"},uMn={class:"flex items-center gap-2 flex-grow"},dMn=["value"],TMn=["value"],fMn=["disabled"],pMn={class:"setting-item"},hMn={class:"flex items-center gap-2 flex-grow"},mMn=["value"],gMn=["value"],_Mn=["disabled"],QMn={class:"setting-item"},vMn={class:"flex items-center gap-2 flex-grow"},yMn=["value"],bMn=["value"],EMn=["disabled"],SMn={class:"setting-item"},xMn={class:"flex items-center gap-2 flex-grow"},LMn=["value"],CMn=["value"],AMn=["disabled"],wMn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},OMn={class:"grid grid-cols-1 md:grid-cols-2 gap-x-6 gap-y-4"},MMn={class:"setting-item !items-center"},RMn=["value"],NMn={class:"setting-item !items-center"},DMn=["value"],IMn={class:"setting-item !items-center"},kMn=["value"],HMn={class:"setting-item !items-center"},PMn=["value"],$Mn={class:"setting-item !items-center"},VMn=["value"],BMn={class:"setting-item !items-center"},FMn=["value"],UMn={class:"setting-item !items-center"},qMn=["value"],GMn={class:"toggle-item md:col-span-2"},jMn=["value","disabled"],zMn={class:"space-y-4 p-4 border border-blue-300 dark:border-blue-600 rounded-lg panels-color"},YMn={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},WMn={class:"setting-item"},KMn=["value"],ZMn=["value"],XMn={class:"setting-item"},JMn=["value"],eRn=["value"],tRn={__name:"ServicesZooSettings",props:{loading:{type:Boolean,default:!1},api_post_req:{type:Function,required:!0},api_get_req:{type:Function,required:!0},show_toast:{type:Function,required:!0},show_yes_no_dialog:{type:Function,required:!0},show_universal_form:{type:Function,required:!0},client_id:{type:String,required:!0}},emits:["update:setting"],setup(t,{emit:e}){const n=t,o=e,r=Ve([]),i=Ve([]),s=Ve([]),a=Ve([]),l=Ve([]),c=Ve([]),u=Ve([]),d=Ve([]),f=Ve([]),T=(v,b)=>{const E=["stt_listening_threshold","stt_silence_duration","stt_sound_threshold_percentage","stt_gain","stt_rate","stt_channels","stt_buffer_size"].includes(v)?parseInt(b)||0:b;o("update:setting",{key:v,value:E})},h=(v,b)=>{o("update:setting",{key:v,value:!!b})},g=async()=>{try{const[v,b,y,E,x]=await Promise.all([n.api_post_req("list_tts_services"),n.api_post_req("list_stt_services"),n.api_post_req("list_tti_services"),n.api_post_req("list_ttm_services"),n.api_post_req("list_ttv_services")]);r.value=v||[],i.value=b||[],s.value=y||[],a.value=E||[],l.value=x||[]}catch(v){n.show_toast("Failed to fetch service lists.",4,!1),console.error("Error fetching service lists:",v)}},Q=async()=>{try{const[v,b]=await Promise.all([n.api_get_req("get_snd_input_devices"),n.api_get_req("get_snd_output_devices")]);c.value=(v==null?void 0:v.device_names)||[],u.value=(v==null?void 0:v.device_indexes)||[],d.value=(b==null?void 0:b.device_names)||[],f.value=(b==null?void 0:b.device_indexes)||[]}catch(v){n.show_toast("Failed to fetch audio devices.",4,!1),console.error("Error fetching audio devices:",v)}},m=()=>{n.show_toast("Refreshing audio devices...",2,!0),Q()},_=async(v,b)=>{if(!b||b==="None"||b==="browser"){n.show_toast(`No configurable settings for '${b}'.`,3,!1);return}const y={tts:"get_active_tts_settings",stt:"get_active_stt_settings",tti:"get_active_tti_settings",ttm:"get_active_ttm_settings",ttv:"get_active_ttv_settings"},E={tts:"set_active_tts_settings",stt:"set_active_stt_settings",tti:"set_active_tti_settings",ttm:"set_active_ttm_settings",ttv:"set_active_ttv_settings"},x=y[v],L=E[v];if(!(!x||!L))try{const C=await n.api_post_req(x);if(C&&Object.keys(C).length>0){const A=await n.show_universal_form(C,`${b} Settings`,"Save","Cancel"),O=await n.api_post_req(L,{settings:A});O&&O.status?n.show_toast(`${b} settings updated successfully!`,4,!0):n.show_toast(`Failed to update ${b} settings: ${(O==null?void 0:O.error)||"Unknown error"}`,4,!1)}else n.show_toast(`${b} has no configurable settings.`,4,!1)}catch(C){n.show_toast(`Error fetching/setting ${b} settings: ${C.message}`,4,!1),console.error(`Error with ${b} settings:`,C)}};return Hr(()=>{g(),Q(),Se(()=>{Ce.replace()})}),N2(()=>{Se(()=>{Ce.replace()})}),(v,b)=>(N(),H("div",tMn,[b[53]||(b[53]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 border-b border-blue-300 dark:border-blue-600 pb-2"}," Services Zoo & Audio ",-1)),S("section",nMn,[b[37]||(b[37]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Default Service Selection",-1)),b[38]||(b[38]=S("p",{class:"text-xs text-blue-500 dark:text-blue-400 mb-4"}," Choose the default services LoLLMs will use for various tasks. Specific personalities might override these. ",-1)),S("div",rMn,[S("div",iMn,[b[24]||(b[24]=S("label",{for:"active_tts_service",class:"setting-label"},"Text-to-Speech (TTS)",-1)),S("div",oMn,[S("select",{id:"active_tts_service",value:v.$store.state.config.active_tts_service,onChange:b[0]||(b[0]=y=>T("active_tts_service",y.target.value)),class:"input flex-grow"},[b[21]||(b[21]=S("option",{value:"None"},"None",-1)),b[22]||(b[22]=S("option",{value:"browser"},"Browser TTS",-1)),(N(!0),H(xe,null,Pe(r.value,y=>(N(),H("option",{key:`tts-${y.name}`,value:y.name},J(y.caption||y.name),9,aMn))),128))],40,sMn),S("button",{onClick:b[1]||(b[1]=y=>_("tts",v.$store.state.config.active_tts_service)),disabled:!v.$store.state.config.active_tts_service||v.$store.state.config.active_tts_service==="None"||v.$store.state.config.active_tts_service==="browser",class:"btn btn-secondary btn-sm p-2 flex-shrink-0",title:"Configure Selected TTS Service"},b[23]||(b[23]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 feather feather-settings"},[S("circle",{cx:"12",cy:"12",r:"3"}),S("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"})],-1)]),8,lMn)])]),S("div",cMn,[b[27]||(b[27]=S("label",{for:"active_stt_service",class:"setting-label"},"Speech-to-Text (STT)",-1)),S("div",uMn,[S("select",{id:"active_stt_service",value:v.$store.state.config.active_stt_service,onChange:b[2]||(b[2]=y=>T("active_stt_service",y.target.value)),class:"input flex-grow"},[b[25]||(b[25]=S("option",{value:"None"},"None",-1)),(N(!0),H(xe,null,Pe(i.value,y=>(N(),H("option",{key:`stt-${y.name}`,value:y.name},J(y.caption||y.name),9,TMn))),128))],40,dMn),S("button",{onClick:b[3]||(b[3]=y=>_("stt",v.$store.state.config.active_stt_service)),disabled:!v.$store.state.config.active_stt_service||v.$store.state.config.active_stt_service==="None",class:"btn btn-secondary btn-sm p-2 flex-shrink-0",title:"Configure Selected STT Service"},b[26]||(b[26]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 feather feather-settings"},[S("circle",{cx:"12",cy:"12",r:"3"}),S("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"})],-1)]),8,fMn)])]),S("div",pMn,[b[30]||(b[30]=S("label",{for:"active_tti_service",class:"setting-label"},"Text-to-Image (TTI)",-1)),S("div",hMn,[S("select",{id:"active_tti_service",value:v.$store.state.config.active_tti_service,onChange:b[4]||(b[4]=y=>T("active_tti_service",y.target.value)),class:"input flex-grow"},[b[28]||(b[28]=S("option",{value:"None"},"None",-1)),(N(!0),H(xe,null,Pe(s.value,y=>(N(),H("option",{key:`tti-${y.name}`,value:y.name},J(y.caption||y.name),9,gMn))),128))],40,mMn),S("button",{onClick:b[5]||(b[5]=y=>_("tti",v.$store.state.config.active_tti_service)),disabled:!v.$store.state.config.active_tti_service||v.$store.state.config.active_tti_service==="None",class:"btn btn-secondary btn-sm p-2 flex-shrink-0",title:"Configure Selected TTI Service"},b[29]||(b[29]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 feather feather-settings"},[S("circle",{cx:"12",cy:"12",r:"3"}),S("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"})],-1)]),8,_Mn)])]),S("div",QMn,[b[33]||(b[33]=S("label",{for:"active_ttm_service",class:"setting-label"},"Text-to-Music (TTM)",-1)),S("div",vMn,[S("select",{id:"active_ttm_service",value:v.$store.state.config.active_ttm_service,onChange:b[6]||(b[6]=y=>T("active_ttm_service",y.target.value)),class:"input flex-grow"},[b[31]||(b[31]=S("option",{value:"None"},"None",-1)),(N(!0),H(xe,null,Pe(a.value,y=>(N(),H("option",{key:`ttm-${y.name}`,value:y.name},J(y.caption||y.name),9,bMn))),128))],40,yMn),S("button",{onClick:b[7]||(b[7]=y=>_("ttm",v.$store.state.config.active_ttm_service)),disabled:!v.$store.state.config.active_ttm_service||v.$store.state.config.active_ttm_service==="None",class:"btn btn-secondary btn-sm p-2 flex-shrink-0",title:"Configure Selected TTM Service"},b[32]||(b[32]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 feather feather-settings"},[S("circle",{cx:"12",cy:"12",r:"3"}),S("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"})],-1)]),8,EMn)])]),S("div",SMn,[b[36]||(b[36]=S("label",{for:"active_ttv_service",class:"setting-label"},"Text-to-Video (TTV)",-1)),S("div",xMn,[S("select",{id:"active_ttv_service",value:v.$store.state.config.active_ttv_service,onChange:b[8]||(b[8]=y=>T("active_ttv_service",y.target.value)),class:"input flex-grow"},[b[34]||(b[34]=S("option",{value:"None"},"None",-1)),(N(!0),H(xe,null,Pe(l.value,y=>(N(),H("option",{key:`ttv-${y.name}`,value:y.name},J(y.caption||y.name),9,CMn))),128))],40,LMn),S("button",{onClick:b[9]||(b[9]=y=>_("ttv",v.$store.state.config.active_ttv_service)),disabled:!v.$store.state.config.active_ttv_service||v.$store.state.config.active_ttv_service==="None",class:"btn btn-secondary btn-sm p-2 flex-shrink-0",title:"Configure Selected TTV Service"},b[35]||(b[35]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 feather feather-settings"},[S("circle",{cx:"12",cy:"12",r:"3"}),S("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"})],-1)]),8,AMn)])])])]),S("section",wMn,[b[48]||(b[48]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Audio Input / STT Settings",-1)),S("div",OMn,[S("div",MMn,[b[39]||(b[39]=S("label",{for:"stt_listening_threshold",class:"setting-label"},"Listening Threshold",-1)),S("input",{id:"stt_listening_threshold",value:v.$store.state.config.stt_listening_threshold,onInput:b[10]||(b[10]=y=>T("stt_listening_threshold",parseInt(y.target.value))),type:"number",min:"0",step:"10",class:"input-sm w-24"},null,40,RMn)]),S("div",NMn,[b[40]||(b[40]=S("label",{for:"stt_silence_duration",class:"setting-label"},"Silence Duration (s)",-1)),S("input",{id:"stt_silence_duration",value:v.$store.state.config.stt_silence_duration,onInput:b[11]||(b[11]=y=>T("stt_silence_duration",parseInt(y.target.value))),type:"number",min:"0",step:"1",class:"input-sm w-24"},null,40,DMn)]),S("div",IMn,[b[41]||(b[41]=S("label",{for:"stt_sound_threshold_percentage",class:"setting-label"},"Min Sound Percentage",-1)),S("input",{id:"stt_sound_threshold_percentage",value:v.$store.state.config.stt_sound_threshold_percentage,onInput:b[12]||(b[12]=y=>T("stt_sound_threshold_percentage",parseInt(y.target.value))),type:"number",min:"0",max:"100",step:"1",class:"input-sm w-24"},null,40,kMn)]),S("div",HMn,[b[42]||(b[42]=S("label",{for:"stt_gain",class:"setting-label"},"Volume Amplification",-1)),S("input",{id:"stt_gain",value:v.$store.state.config.stt_gain,onInput:b[13]||(b[13]=y=>T("stt_gain",parseInt(y.target.value))),type:"number",min:"0",step:"1",class:"input-sm w-24"},null,40,PMn)]),S("div",$Mn,[b[43]||(b[43]=S("label",{for:"stt_rate",class:"setting-label"},"Audio Rate (Hz)",-1)),S("input",{id:"stt_rate",value:v.$store.state.config.stt_rate,onInput:b[14]||(b[14]=y=>T("stt_rate",parseInt(y.target.value))),type:"number",min:"8000",step:"1000",class:"input-sm w-24"},null,40,VMn)]),S("div",BMn,[b[44]||(b[44]=S("label",{for:"stt_channels",class:"setting-label"},"Channels",-1)),S("input",{id:"stt_channels",value:v.$store.state.config.stt_channels,onInput:b[15]||(b[15]=y=>T("stt_channels",parseInt(y.target.value))),type:"number",min:"1",max:"2",step:"1",class:"input-sm w-24"},null,40,FMn)]),S("div",UMn,[b[45]||(b[45]=S("label",{for:"stt_buffer_size",class:"setting-label"},"Buffer Size",-1)),S("input",{id:"stt_buffer_size",value:v.$store.state.config.stt_buffer_size,onInput:b[16]||(b[16]=y=>T("stt_buffer_size",parseInt(y.target.value))),type:"number",min:"512",step:"512",class:"input-sm w-24"},null,40,qMn)]),S("div",GMn,[b[46]||(b[46]=S("label",{for:"stt_activate_word_detection",class:"toggle-label"},"Activate Wake Word Detection",-1)),ne(n6,{id:"stt_activate_word_detection",checked:v.$store.state.config.stt_activate_word_detection,"onUpdate:checked":b[17]||(b[17]=y=>h("stt_activate_word_detection",y))},null,8,["checked"])]),S("div",{class:Ee(["setting-item md:col-span-2",{"opacity-50 pointer-events-none":!v.$store.state.config.stt_activate_word_detection}])},[b[47]||(b[47]=S("label",{for:"stt_word_detection_file",class:"setting-label"},"Wake Word File (.wav)",-1)),S("input",{type:"text",id:"stt_word_detection_file",value:v.$store.state.config.stt_word_detection_file,onInput:b[18]||(b[18]=y=>T("stt_word_detection_file",y.target.value)),class:"input flex-grow",placeholder:"Path to wake word wav file",disabled:!v.$store.state.config.stt_activate_word_detection},null,40,jMn)],2)])]),S("section",zMn,[b[52]||(b[52]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Audio Devices",-1)),S("button",{onClick:m,class:"btn btn-secondary btn-sm mb-2",title:"Rescan for audio devices"},b[49]||(b[49]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-4 h-4 mr-1 feather feather-refresh-cw"},[S("polyline",{points:"23 4 23 10 17 10"}),S("polyline",{points:"1 20 1 14 7 14"}),S("path",{d:"M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15"})],-1),Me(" Refresh Devices ")])),S("div",YMn,[S("div",WMn,[b[50]||(b[50]=S("label",{for:"stt_input_device",class:"setting-label"},"Audio Input Device",-1)),S("select",{id:"stt_input_device",value:v.$store.state.config.stt_input_device,onChange:b[19]||(b[19]=y=>T("stt_input_device",parseInt(y.target.value))),class:"input flex-grow"},[(N(!0),H(xe,null,Pe(c.value,(y,E)=>(N(),H("option",{key:`in-${E}`,value:u.value[E]},J(y),9,ZMn))),128))],40,KMn)]),S("div",XMn,[b[51]||(b[51]=S("label",{for:"tts_output_device",class:"setting-label"},"Audio Output Device",-1)),S("select",{id:"tts_output_device",value:v.$store.state.config.tts_output_device,onChange:b[20]||(b[20]=y=>T("tts_output_device",parseInt(y.target.value))),class:"input flex-grow"},[(N(!0),H(xe,null,Pe(d.value,(y,E)=>(N(),H("option",{key:`out-${E}`,value:f.value[E]},J(y),9,eRn))),128))],40,JMn)])])])]))}},IO=Ye(tRn,[["__scopeId","data-v-a1a76c2e"]]),t5="/assets/logo-CQZwS0X1.svg",nRn={name:"DynamicUIRenderer",props:{ui:{type:String,required:!0},instanceId:{type:String,required:!0}},data(){return{containerId:`dynamic-ui-${this.instanceId}`}},watch:{ui:{immediate:!0,handler(t){console.log(`UI prop changed for instance ${this.instanceId}:`,t),this.$nextTick(()=>{this.renderContent()})}}},methods:{renderContent(){console.log(`Rendering content for instance ${this.instanceId}...`);const t=this.$refs.container,n=new DOMParser().parseFromString(this.ui,"text/html"),o=n.getElementsByTagName("style");Array.from(o).forEach(i=>{const s=document.createElement("style");s.textContent=this.scopeCSS(i.textContent),document.head.appendChild(s)}),t.innerHTML=n.body.innerHTML;const r=n.getElementsByTagName("script");Array.from(r).forEach(i=>{const s=document.createElement("script");s.textContent=i.textContent,t.appendChild(s)})},scopeCSS(t){return t.replace(/([^\r\n,{}]+)(,(?=[^}]*{)|\s*{)/g,`#${this.containerId} $1$2`)}}},rRn=["id"];function iRn(t,e,n,o,r,i){return N(),H("div",{id:r.containerId,ref:"container"},null,8,rRn)}const Rk=Ye(nRn,[["render",iRn]]),JT="/",oRn={name:"BindingEntry",components:{DynamicUIRenderer:Rk},props:{binding:{type:Object,required:!0},selected:{type:Boolean,default:!1},isProcessing:{type:Boolean,default:!1}},emits:["select","install","uninstall","reinstall","settings","reload-binding"],mounted(){this.updateIcons()},updated(){this.updateIcons()},methods:{updateIcons(){Se(()=>{try{Ce.replace({width:"1em",height:"1em"})}catch(t){console.error("Feather icons replacement failed:",t)}})},copyToClipBoard(t){if(!t){console.warn("Attempted to copy empty text.");return}navigator.clipboard?navigator.clipboard.writeText(t).then(()=>{console.log("Copied to clipboard:",t)}).catch(e=>{console.error("Failed to copy text using navigator.clipboard: ",e),this.fallbackCopyToClipboard(t)}):(console.warn("Clipboard API not available, attempting fallback."),this.fallbackCopyToClipboard(t))},fallbackCopyToClipboard(t){const e=document.createElement("textarea");e.value=t,e.style.position="absolute",e.style.left="-9999px",document.body.appendChild(e),e.focus(),e.select();try{document.execCommand("copy")?console.log("Fallback copy successful:",t):console.error("Fallback copy command failed.")}catch(n){console.error("Error during fallback copy command:",n)}document.body.removeChild(e)},getImgUrl(){return!this.binding||typeof this.binding.icon!="string"||this.binding.icon.trim()===""?t5:/^(https?:)?\/\//.test(this.binding.icon)||this.binding.icon.startsWith("/")?this.binding.icon:(JT.endsWith("/")?JT:`${JT}/`)+this.binding.icon},defaultImg(t){t.target.src!==t5&&(t.target.src=t5)},emitSelect(){this.isProcessing||this.$emit("select",this.binding)},emitInstall(){this.isProcessing||this.$emit("install",this.binding)},emitUninstall(){this.isProcessing||this.$emit("uninstall",this.binding)},emitReinstall(){this.isProcessing||this.$emit("reinstall",this.binding)},emitReloadBinding(){this.isProcessing||this.$emit("reload-binding",this.binding)},emitSettings(){this.isProcessing||this.$emit("settings",this.binding)}},watch:{selected(){this.updateIcons()},isProcessing(){this.updateIcons()},"binding.installed"(){this.updateIcons()},"binding.ui"(){this.updateIcons()}}},sRn=["title"],aRn={class:"flex flex-row items-center gap-3 mb-2"},lRn=["src"],cRn={class:"font-bold text-lg truncate text-gray-800 dark:text-white flex-grow"},uRn={key:0,class:"ml-2 text-xs font-medium text-green-600 dark:text-green-400"},dRn={key:1,class:"ml-2 text-xs font-medium text-yellow-600 dark:text-yellow-400"},TRn={class:"flex-none flex items-center gap-1"},fRn={class:"text-sm text-gray-600 dark:text-gray-400 space-y-1 mb-3"},pRn={class:"flex items-center"},hRn={class:"truncate"},mRn={class:"flex items-center"},gRn={class:"truncate font-mono text-xs bg-gray-100 dark:bg-gray-700 px-1 py-0.5 rounded"},_Rn=["disabled"],QRn={class:"flex items-center"},vRn={class:"flex items-center"},yRn=["href"],bRn={class:"flex items-start pt-1"},ERn=["title","innerHTML"],SRn={class:"flex items-center justify-end gap-2 border-t border-gray-200 dark:border-gray-700 pt-3 min-h-[44px]"},xRn={key:0,class:"flex items-center justify-center text-gray-500 dark:text-gray-400 w-full"};function LRn(t,e,n,o,r,i){const s=ze("DynamicUIRenderer");return N(),H("div",{class:Ee(["items-start p-4 rounded-lg mb-2 shadow-lg border-2 cursor-pointer select-none transition-all duration-150 ease-in-out group",{"border-primary bg-primary-light dark:bg-primary-dark":n.selected,"hover:bg-gray-100 dark:hover:bg-gray-700":!n.selected&&!n.isProcessing,"border-transparent bg-white dark:bg-gray-800":!n.selected,"opacity-70 cursor-wait":n.isProcessing}]),title:n.binding.description||n.binding.name,onClick:e[8]||(e[8]=oe(a=>n.isProcessing?null:i.emitSelect(),["stop"]))},[S("div",null,[S("div",aRn,[S("img",{ref:"imgElement",src:i.getImgUrl(),onError:e[0]||(e[0]=a=>i.defaultImg(a)),class:Ee(["w-10 h-10 rounded-full object-fill flex-shrink-0 border border-gray-200 dark:border-gray-600",{"ring-2 ring-offset-2 ring-green-500 dark:ring-offset-gray-800":n.binding.installed&&!n.isProcessing,"ring-2 ring-offset-2 ring-yellow-500 dark:ring-offset-gray-800 animate-pulse":n.isProcessing}])},null,42,lRn),S("h3",cRn,[Me(J(n.binding.name)+" ",1),n.binding.installed&&!n.isProcessing?(N(),H("span",uRn,"(Installed)")):Z("",!0),n.isProcessing?(N(),H("span",dRn,"(Processing...)")):Z("",!0)]),S("div",TRn,[n.selected&&n.binding.installed&&!n.isProcessing?(N(),H("button",{key:0,type:"button",title:"Reload binding",onClick:e[1]||(e[1]=oe((...a)=>i.emitReloadBinding&&i.emitReloadBinding(...a),["stop"])),class:"text-gray-500 hover:text-secondary dark:text-gray-400 dark:hover:text-secondary-light duration-150 active:scale-90 font-medium rounded-lg text-sm p-1.5 text-center inline-flex items-center focus:outline-none focus:ring-2 focus:ring-gray-300 dark:focus:ring-gray-600"},e[9]||(e[9]=[S("i",{"data-feather":"refresh-cw",class:"w-5 h-5"},null,-1),S("span",{class:"sr-only"},"Reload Binding",-1)]))):Z("",!0)])]),n.binding.ui?(N(),ot(s,{key:0,class:"w-full h-full mb-3 border-t pt-3 border-gray-200 dark:border-gray-700",code:n.binding.ui},null,8,["code"])):Z("",!0),S("div",fRn,[S("div",pRn,[e[10]||(e[10]=S("i",{"data-feather":"user",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[11]||(e[11]=S("b",{class:"mr-1 font-medium text-gray-700 dark:text-gray-300"},"Author:",-1)),S("span",hRn,J(n.binding.author),1)]),S("div",mRn,[e[13]||(e[13]=S("i",{"data-feather":"folder",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[14]||(e[14]=S("b",{class:"mr-1 font-medium text-gray-700 dark:text-gray-300"},"Folder:",-1)),S("span",gRn,J(n.binding.folder),1),e[15]||(e[15]=S("div",{class:"flex-grow"},null,-1)),S("button",{class:"ml-2 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 duration-150 active:scale-90 p-1 rounded disabled:opacity-50",title:"Copy folder path to clipboard",onClick:e[2]||(e[2]=oe(a=>i.copyToClipBoard(n.binding.folder),["stop"])),disabled:n.isProcessing},e[12]||(e[12]=[S("i",{"data-feather":"clipboard",class:"w-4 h-4"},null,-1),S("span",{class:"sr-only"},"Copy folder path",-1)]),8,_Rn)]),S("div",QRn,[e[16]||(e[16]=S("i",{"data-feather":"git-merge",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[17]||(e[17]=S("b",{class:"mr-1 font-medium text-gray-700 dark:text-gray-300"},"Version:",-1)),S("span",null,J(n.binding.version),1)]),S("div",vRn,[e[18]||(e[18]=S("i",{"data-feather":"github",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[19]||(e[19]=S("b",{class:"mr-1 font-medium text-gray-700 dark:text-gray-300"},"Link:",-1)),S("a",{href:n.binding.link,target:"_blank",rel:"noopener noreferrer",class:Ee(["text-blue-600 dark:text-blue-400 hover:underline truncate",{"pointer-events-none opacity-70":n.isProcessing}]),onClick:e[3]||(e[3]=oe(()=>{},["stop"]))},J(n.binding.link),11,yRn)]),S("div",bRn,[e[21]||(e[21]=S("i",{"data-feather":"info",class:"w-4 h-4 mr-2 mt-0.5 flex-shrink-0"},null,-1)),S("div",null,[e[20]||(e[20]=S("b",{class:"font-medium text-gray-700 dark:text-gray-300"},"Description:",-1)),S("p",{class:"opacity-90 line-clamp-3",title:n.binding.description,innerHTML:n.binding.description},null,8,ERn)])])]),S("div",SRn,[n.isProcessing?(N(),H("div",xRn,e[22]||(e[22]=[S("div",{class:"animate-spin rounded-full h-5 w-5 border-b-2 border-current mr-2"},null,-1),Me(" Processing... ")]))):Z("",!0),n.isProcessing?Z("",!0):(N(),H(xe,{key:1},[n.binding.installed?Z("",!0):(N(),H("button",{key:0,title:"Click to install",type:"button",onClick:e[4]||(e[4]=oe((...a)=>i.emitInstall&&i.emitInstall(...a),["stop"])),class:"inline-flex items-center gap-2 px-4 py-2 text-sm font-semibold text-center text-white bg-blue-600 rounded-lg shadow-sm hover:bg-blue-700 focus:ring-4 focus:ring-blue-300 focus:outline-none dark:bg-blue-500 dark:hover:bg-blue-600 dark:focus:ring-blue-800 transition-colors duration-200 ease-in-out disabled:opacity-50 disabled:cursor-not-allowed"},e[23]||(e[23]=[S("i",{"data-feather":"download-cloud",class:"w-4 h-4"},null,-1)]))),n.binding.installed?(N(),H("button",{key:1,title:"Click to Reinstall binding",type:"button",onClick:e[5]||(e[5]=oe((...a)=>i.emitReinstall&&i.emitReinstall(...a),["stop"])),class:"inline-flex items-center gap-2 px-4 py-2 text-sm font-semibold text-center text-white bg-green-600 rounded-lg shadow-sm hover:bg-green-700 focus:ring-4 focus:ring-green-300 focus:outline-none dark:bg-green-500 dark:hover:bg-green-600 dark:focus:ring-green-800 transition-colors duration-200 ease-in-out disabled:opacity-50 disabled:cursor-not-allowed"},e[24]||(e[24]=[S("i",{"data-feather":"refresh-ccw",class:"w-4 h-4"},null,-1)]))):Z("",!0),n.binding.installed?(N(),H("button",{key:2,title:"Click to Uninstall binding",type:"button",onClick:e[6]||(e[6]=oe((...a)=>i.emitUninstall&&i.emitUninstall(...a),["stop"])),class:"inline-flex items-center gap-2 px-4 py-2 text-sm font-semibold text-center text-white bg-red-600 rounded-lg shadow-sm hover:bg-red-700 focus:ring-4 focus:ring-red-300 focus:outline-none dark:bg-red-500 dark:hover:bg-red-600 dark:focus:ring-red-800 transition-colors duration-200 ease-in-out disabled:opacity-50 disabled:cursor-not-allowed"},e[25]||(e[25]=[S("i",{"data-feather":"trash-2",class:"w-4 h-4"},null,-1)]))):Z("",!0),n.selected&&n.binding.installed?(N(),H("button",{key:3,title:"Click to open Settings",type:"button",onClick:e[7]||(e[7]=oe((...a)=>i.emitSettings&&i.emitSettings(...a),["stop"])),class:"inline-flex items-center gap-2 px-4 py-2 text-sm font-semibold text-center text-white bg-gray-600 rounded-lg shadow-sm hover:bg-gray-700 focus:ring-4 focus:ring-gray-300 focus:outline-none dark:bg-gray-500 dark:hover:bg-gray-600 dark:focus:ring-gray-800 transition-colors duration-200 ease-in-out disabled:opacity-50 disabled:cursor-not-allowed"},e[26]||(e[26]=[S("i",{"data-feather":"settings",class:"w-4 h-4"},null,-1)]))):Z("",!0)],64))])])],10,sRn)}const CRn=Ye(oRn,[["render",LRn],["__scopeId","data-v-720de39c"]]),kO="/assets/logo-6TyToX4A.png",ARn={name:"BindingZooSettings",components:{BindingEntry:CRn},props:{loading:{type:Boolean,default:!1},api_get_req:{type:Function,required:!0},api_post_req:{type:Function,required:!0},refresh_config:{type:Function,required:!0},show_toast:{type:Function,required:!0},show_yes_no_dialog:{type:Function,required:!0},show_message_box:{type:Function,required:!0},client_id:{type:String,required:!0},show_universal_form:{type:Function,required:!0}},emits:["settings-changed"],data(){return{bindings:[],isLoadingBindings:!1,isLoadingAction:!1,sortOption:"name",searchTerm:""}},computed:{...FR({allBindings:t=>t.bindingsZoo||[],selectedBindingName:t=>t.config.binding_name,processingBindings:t=>t.processingBindingFolders||{}}),bindingsToDisplay(){return this.sortedBindings},currentBindingInfo(){return!this.$store.state.config||!this.$store.state.config.binding_name||this.bindings.length===0?null:this.bindings.find(e=>e.folder===this.$store.state.config.binding_name)},sortedBindings(){if(!this.bindings)return[];let t=[...this.bindings];if(this.searchTerm){const e=this.searchTerm.toLowerCase();t=t.filter(n=>{var o,r,i,s;return((o=n.name)==null?void 0:o.toLowerCase().includes(e))||((r=n.author)==null?void 0:r.toLowerCase().includes(e))||((i=n.description)==null?void 0:i.toLowerCase().includes(e))||((s=n.folder)==null?void 0:s.toLowerCase().includes(e))})}return t.sort((e,n)=>{const o=e.folder===this.selectedBindingName,r=n.folder===this.selectedBindingName;if(o&&!r)return-1;if(!o&&r)return 1;switch(this.sortOption){case"status":return e.installed&&!n.installed?-1:!e.installed&&n.installed?1:(e.name||"").localeCompare(n.name||"");case"author":return(e.author||"").localeCompare(n.author||"");case"name":default:return(e.name||"").localeCompare(n.name||"")}}),t}},methods:{isBindingSelected(t){return t.folder===this.selectedBindingName},isBindingProcessing(t){return!!this.processingBindings[t.folder]},getIconPath(t){if(console.log(`iconRelativePath: ${t}`),!t)return kO;if(t.startsWith("http"))return t;const e="/"+t.replace(/\\/g,"/");return console.log(`icon: ${e}`),e},imgPlaceholder(t){t.target.src=kO},async internal_api_get_req(t,e={}){try{const n={client_id:this.client_id,...e};return await this.api_get_req(t,n)}catch(n){throw console.error(`API GET error for ${t}:`,n),this.show_toast(`API Error: ${n.message||"Failed to fetch data"}`,4,!1),n}},async internal_api_post_req(t,e={}){try{const n={client_id:this.client_id,...e};return await this.api_post_req(t,n)}catch(n){throw console.error(`API POST error for ${t}:`,n),this.show_toast(`API Error: ${n.message||"Action failed"}`,4,!1),n}},async fetchBindings(){this.isLoadingBindings=!0;try{const t=await this.internal_api_get_req("list_bindings");this.bindings=(t||[]).map(e=>({...e,isProcessing:!1}))}catch{this.bindings=[]}finally{this.isLoadingBindings=!1,Se(Ce.replace)}},setBindingProcessing(t,e){const n=this.bindings.findIndex(o=>o.folder===t);n!==-1&&(this.bindings[n].isProcessing=e)},async handleSelect(t){if(console.log("received selection of binding"),console.log(t),!t||!t.folder){console.error("Invalid binding data received in handleSelect:",t),this.show_toast("Internal error: Invalid binding data.",4,!1);return}if(!t.installed){this.show_toast(`Binding "${t.name}" is not installed.`,3,!1);return}this.$store.state.config.binding_name!==t.folder&&(this.$store.state.config.binding_name=t.folder,this.$store.state.config.model_name=null,await this.$store.dispatch("refreshModelsZoo"),await this.$store.dispatch("refreshModels"),this.$emit("settings-changed",!0),this.show_toast(`Selected binding: ${t.name}`,3,!0))},async handleInstall(t){if(!t||!t.folder){console.error("Invalid binding data received in handleInstall:",t),this.show_toast("Internal error: Invalid binding data.",4,!1);return}let e=!0;if(t.disclaimer&&(e=await this.show_yes_no_dialog(`Disclaimer for ${t.name}: ${t.disclaimer} Proceed with installation?`,"Proceed","Cancel")),!!e){this.setBindingProcessing(t.folder,!0),this.isLoadingAction=!0;try{const n=await this.internal_api_post_req("install_binding",{name:t.folder});n&&n.status?(this.show_toast(`Binding "${t.name}" installed successfully! Reload recommended.`,5,!0),await this.fetchBindings()):this.show_toast(`Failed to install "${t.name}": ${(n==null?void 0:n.error)||"Unknown error"}`,4,!1)}catch{}finally{this.setBindingProcessing(t.folder,!1),this.isLoadingAction=!1,Se(Ce.replace)}}},async handleUninstall(t){if(!t||!t.folder){console.error("Invalid binding data received in handleUninstall:",t),this.show_toast("Internal error: Invalid binding data.",4,!1);return}if(await this.show_yes_no_dialog(`Uninstall "${t.name}"? This removes its files.`,"Uninstall","Cancel")){this.setBindingProcessing(t.folder,!0),this.isLoadingAction=!0;try{const n=await this.internal_api_post_req("uninstall_binding",{name:t.folder});n&&n.status?(this.show_toast(`Binding "${t.name}" uninstalled successfully!`,4,!0),await this.fetchBindings(),this.$store.state.config.binding_name===t.folder&&(this.$store.state.config.binding_name=null,this.$store.state.config.model_name=null,this.$emit("settings-changed",!0),this.refresh_config())):this.show_toast(`Failed to uninstall "${t.name}": ${(n==null?void 0:n.error)||"Unknown error"}`,4,!1)}catch{}finally{this.setBindingProcessing(t.folder,!1),this.isLoadingAction=!1,Se(Ce.replace)}}},async handleReinstall(t){if(!t||!t.folder){console.error("Invalid binding data received in handleReinstall:",t),this.show_toast("Internal error: Invalid binding data.",4,!1);return}if(await this.show_yes_no_dialog(`Reinstall "${t.name}"? -This overwrites files.`,"Reinstall","Cancel")){this.setBindingProcessing(t.folder,!0),this.isLoadingAction=!0;try{const n=await this.internal_api_post_req("reinstall_binding",{name:t.folder});n&&n.status?(this.show_toast(`Binding "${t.name}" reinstalled successfully! Reload recommended.`,5,!0),await this.fetchBindings()):this.show_toast(`Failed to reinstall "${t.name}": ${(n==null?void 0:n.error)||"Unknown error"}`,4,!1)}catch{}finally{this.setBindingProcessing(t.folder,!1),this.isLoadingAction=!1,Se(Ce.replace)}}},handleSettingsFromEntry(t){if(!t||!t.folder){console.error("Invalid binding data in handleSettingsFromEntry:",t),this.show_toast("Internal error: Invalid binding data.",4,!1);return}this.handleSettings(t.folder)},async handleSettings(t){if(console.log("Handling settings from"),console.log(t),!t){this.show_toast("No binding specified.",3,!1);return}const e=this.bindings.find(n=>n.folder===t);if(!e){this.show_toast(`Binding "${t}" not found.`,4,!1);return}if(!e.installed){this.show_toast(`"${e.name}" is not installed.`,3,!1);return}if(t!==this.$store.state.config.binding_name){this.show_toast(`Select "${e.name}" first to configure it.`,4,!1);return}this.isLoadingAction=!0;try{const n=await this.internal_api_post_req("get_active_binding_settings");if(n&&Object.keys(n).length>0){const o=e.name||t,r=await this.show_universal_form(n,`Settings - ${o}`,"Save","Cancel");if(r!=null){const i=await this.internal_api_post_req("set_active_binding_settings",{settings:r});i&&i.status?(this.show_toast(`Settings for "${o}" updated. Reloading...`,4,!0),await this.internal_api_post_req("update_binding_settings"),this.show_toast(`Binding "${o}" reloaded with new settings.`,4,!0),this.$emit("settings-changed",!0),this.refresh_config()):this.show_toast(`Failed to update settings for "${o}": ${(i==null?void 0:i.error)||"Unknown error"}`,4,!1)}else this.show_toast(`Settings update for "${o}" cancelled.`,3,!1)}else n&&Object.keys(n).length===0?this.show_toast(`"${e.name}" has no settings.`,4,!1):this.show_toast(`Could not get settings for "${e.name}".`,4,!1)}catch{}finally{this.isLoadingAction=!1,Se(Ce.replace)}},handleReloadFromEntry(t){if(!t||!t.folder){console.error("Invalid binding data in handleReloadFromEntry:",t),this.show_toast("Internal error: Invalid binding data.",4,!1);return}this.handleReload(t.folder)},async handleReload(t){if(!t){this.show_toast("No binding specified.",3,!1);return}const e=this.bindings.find(n=>n.folder===t);if(!e){this.show_toast(`Binding "${t}" not found.`,4,!1);return}if(!e.installed){this.show_toast(`"${e.name}" is not installed.`,3,!1);return}if(t!==this.$store.state.config.binding_name){this.show_toast(`"${e.name}" is not active. Select it first.`,3,!1);return}this.isLoadingAction=!0,this.show_toast(`Reloading "${e.name}"...`,3,!0);try{const n=await this.internal_api_post_req("reload_binding",{name:t});n&&n.status?(this.show_toast(`Binding "${e.name}" reloaded.`,4,!0),this.refresh_config()):this.show_toast(`Failed to reload "${e.name}": ${(n==null?void 0:n.error)||"Unknown error"}`,4,!1)}catch{}finally{this.isLoadingAction=!1,Se(Ce.replace)}}},mounted(){this.fetchBindings(),Se(()=>{Ce.replace()})},updated(){Se(()=>{Ce.replace()})}},wRn={class:"user-settings-panel space-y-6 p-4 md:p-6"},ORn={class:"flex flex-col sm:flex-row justify-between items-start sm:items-center border-b border-blue-300 dark:border-blue-600 pb-3 mb-4"},MRn={key:0,class:"flex items-center gap-2 text-sm font-medium p-2 bg-blue-200 dark:bg-blue-800 rounded-md border border-blue-300 dark:border-blue-600 text-blue-700 dark:text-blue-200"},RRn=["src"],NRn={class:"font-semibold"},DRn=["disabled"],IRn=["disabled"],kRn={key:1,class:"text-sm font-medium text-red-600 dark:text-red-400 p-2 bg-red-100 dark:bg-red-900/30 rounded-md border border-red-300 dark:border-red-600"},HRn={class:"flex flex-col sm:flex-row gap-4 mb-4"},PRn={class:"relative flex-grow"},$Rn=["disabled"],VRn={class:"flex-shrink-0"},BRn=["disabled"],FRn={key:0,class:"flex justify-center items-center p-10"},URn={key:1,class:"text-center text-blue-500 dark:text-blue-400 py-10"},qRn={key:2,class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 scrollbar"};function GRn(t,e,n,o,r,i){const s=ze("BindingEntry");return N(),H("div",wRn,[S("div",ORn,[e[8]||(e[8]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-200 mb-2 sm:mb-0"}," Binding Zoo ",-1)),i.currentBindingInfo?(N(),H("div",MRn,[S("img",{src:i.getIconPath(i.currentBindingInfo.icon),onError:e[0]||(e[0]=(...a)=>i.imgPlaceholder&&i.imgPlaceholder(...a)),class:"w-6 h-6 rounded-full object-cover flex-shrink-0",alt:"Current Binding Icon"},null,40,RRn),S("span",null,[e[5]||(e[5]=Re("Active: ")),S("span",NRn,J(i.currentBindingInfo.name),1)]),S("button",{onClick:e[1]||(e[1]=a=>i.handleSettings(t.$store.state.config.binding_name)),disabled:r.isLoadingAction||n.loading,class:"svg-button ml-2 disabled:opacity-50 disabled:cursor-not-allowed",title:"Configure Active Binding"},e[6]||(e[6]=[S("i",{"data-feather":"settings",class:"w-4 h-4"},null,-1)]),8,DRn),S("button",{onClick:e[2]||(e[2]=a=>i.handleReload(t.$store.state.config.binding_name)),disabled:r.isLoadingAction||n.loading,class:"svg-button ml-1 disabled:opacity-50 disabled:cursor-not-allowed",title:"Reload Active Binding"},e[7]||(e[7]=[S("i",{"data-feather":"refresh-cw",class:"w-4 h-4"},null,-1)]),8,IRn)])):(N(),H("div",kRn," No binding selected! "))]),e[13]||(e[13]=S("p",{class:"text-sm text-blue-600 dark:text-blue-400"}," Bindings are the engines that run the AI models. Select an installed binding to enable model selection and generation. ",-1)),S("div",HRn,[S("div",PRn,[e[9]||(e[9]=S("div",{class:"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none"},[S("i",{"data-feather":"search",class:"w-5 h-5 text-blue-400 dark:text-blue-500"})],-1)),Le(S("input",{type:"search","onUpdate:modelValue":e[3]||(e[3]=a=>r.searchTerm=a),placeholder:"Search bindings by name or author...",class:"search-input pl-10 w-full","aria-label":"Search bindings",disabled:r.isLoadingBindings||n.loading},null,8,$Rn),[[Je,r.searchTerm]])]),S("div",VRn,[e[11]||(e[11]=S("label",{for:"binding-sort",class:"sr-only"},"Sort bindings by",-1)),Le(S("select",{id:"binding-sort","onUpdate:modelValue":e[4]||(e[4]=a=>r.sortOption=a),class:"input w-full sm:w-auto","aria-label":"Sort bindings by",disabled:r.isLoadingBindings||n.loading},e[10]||(e[10]=[S("option",{value:"name"},"Sort by Name",-1),S("option",{value:"author"},"Sort by Author",-1),S("option",{value:"status"},"Sort by Status",-1)]),8,BRn),[[Dr,r.sortOption]])])]),r.isLoadingBindings?(N(),H("div",FRn,e[12]||(e[12]=[S("svg",{"aria-hidden":"true",role:"status",class:"w-8 h-8 text-blue-300 animate-spin dark:text-blue-600 fill-blue-600 dark:fill-blue-400",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1),S("span",{class:"ml-2 text-loading"},"Loading bindings...",-1)]))):i.sortedBindings.length===0?(N(),H("div",URn," No bindings found"+J(r.searchTerm?' matching "'+r.searchTerm+'"':"")+". ",1)):(N(),H("div",qRn,[(N(!0),H(xe,null,Pe(i.bindingsToDisplay,a=>(N(),ot(s,{key:a.folder,binding:a,selected:i.isBindingSelected(a),"is-processing":a.isProcessing,onSelect:i.handleSelect,onInstall:i.handleInstall,onUninstall:i.handleUninstall,onReinstall:i.handleReinstall,onSettings:i.handleSettingsFromEntry,onReloadBinding:i.handleReloadFromEntry},null,8,["binding","selected","is-processing","onSelect","onInstall","onUninstall","onReinstall","onSettings","onReloadBinding"]))),128))]))])}const HO=Ye(ARn,[["render",GRn],["__scopeId","data-v-62a84717"]]),Y1="/assets/logo-BeKzDFPd.png",jRn={name:"InteractiveMenu",props:{title:{type:String,required:!1,default:"Menu"},icon:{type:String,required:!1,default:"feather:more-vertical"},commands:{type:Array,required:!0,default:()=>[]},force_position:{type:Number,required:!1,default:0},execute_cmd:{type:Function,required:!1},menuIconClass:{type:String,required:!1,default:""},selected_entry:{type:String,required:!1,default:null}},data(){return{isMenuOpen:!1,menuStyle:{top:"auto",bottom:"auto",left:"auto",right:"auto",transformOrigin:"top left"}}},methods:{updateFeatherIcons(){Se(()=>{Ce.replace({width:"1em",height:"1em","stroke-width":2})})},handleClickOutside(t){this.$refs.menuContainerRef&&!this.$refs.menuContainerRef.contains(t.target)&&this.closeMenu()},toggleMenu(){this.isMenuOpen?this.closeMenu():this.openMenu()},openMenu(){this.isMenuOpen=!0,Se(()=>{this.positionMenu(),this.updateFeatherIcons(),document.addEventListener("click",this.handleClickOutside,!0)})},closeMenu(){this.isMenuOpen=!1,document.removeEventListener("click",this.handleClickOutside,!0)},executeCommand(t){this.closeMenu(),typeof t.value=="function"?t.value():this.execute_cmd?this.execute_cmd(t):console.warn("InteractiveMenu: No action defined for command:",t.name)},positionMenu(){if(!this.isMenuOpen||!this.$refs.menuButtonRef||!this.$refs.menuRef)return;const t=this.$refs.menuButtonRef.getBoundingClientRect(),e=this.$refs.menuRef,n=e.style.visibility,o=e.style.display,r=e.style.position,i=e.style.top,s=e.style.left;e.style.visibility="hidden",e.style.position="fixed",e.style.top="-9999px",e.style.left="-9999px",e.style.display="block";const a=e.getBoundingClientRect();e.style.visibility=n,e.style.position=r,e.style.top=i,e.style.left=s,e.style.display=o;const l=window.innerWidth,c=window.innerHeight,u=8;let d={top:"auto",bottom:"auto",left:"auto",right:"auto",transformOrigin:""};const f=c-t.bottom-u,T=t.top-u,h=a.height;let g="below";this.force_position===1?g="above":this.force_position===2||f>=h?g="below":T>=h?g="above":g=T>f?"above":"below",g==="above"?(d.bottom="calc(100% + 4px)",d.top="auto",d.transformOrigin="bottom "):(d.top="calc(100% + 4px)",d.bottom="auto",d.transformOrigin="top "),l-t.left-u,t.right-u;const Q=a.width;let m="left-align";this.force_position===3?m="right-align":this.force_position===4?m="left-align":t.left+Q>l-u&&t.right-Q>u&&(m="right-align"),m==="right-align"?(d.right="0px",d.left="auto",d.transformOrigin+="right"):(d.left="0px",d.right="auto",d.transformOrigin+="left"),this.menuStyle=d}},mounted(){window.addEventListener("resize",this.positionMenu),this.updateFeatherIcons()},beforeUnmount(){window.removeEventListener("resize",this.positionMenu),document.removeEventListener("click",this.handleClickOutside,!0)}},zRn={class:"interactive-menu-container",ref:"menuContainerRef"},YRn=["title"],WRn=["src"],KRn=["data-feather"],ZRn={key:2,class:"interactive-menu-trigger-text"},XRn={key:3,"data-feather":"menu",class:"interactive-menu-trigger-icon"},JRn=["aria-labelledby"],eNn={class:"interactive-menu-list",role:"none"},tNn=["onClick","id"],nNn={class:"interactive-menu-item-checkmark-placeholder"},rNn={key:0,"data-feather":"check",class:"interactive-menu-item-checkmark-icon"},iNn={class:"interactive-menu-item-icon-container"},oNn=["src","alt"],sNn=["data-feather"],aNn={key:2,class:"interactive-menu-item-icon-text"},lNn={key:3,class:"interactive-menu-item-icon-placeholder"},cNn={class:"interactive-menu-item-name"};function uNn(t,e,n,o,r,i){return N(),H("div",zRn,[S("button",{onClick:e[0]||(e[0]=oe((...s)=>i.toggleMenu&&i.toggleMenu(...s),["prevent"])),title:n.title||"Open Menu",class:Ee(["interactive-menu-trigger",n.menuIconClass]),ref:"menuButtonRef",type:"button"},[_n(t.$slots,"trigger",{},()=>[n.icon&&!n.icon.includes("#")&&!n.icon.includes("feather:")?(N(),H("img",{key:0,src:n.icon,class:"interactive-menu-trigger-icon",alt:"Menu Icon"},null,8,WRn)):n.icon&&n.icon.includes("feather:")?(N(),H("i",{key:1,"data-feather":n.icon.split(":")[1],class:"interactive-menu-trigger-icon"},null,8,KRn)):n.icon&&n.icon.includes("#")?(N(),H("span",ZRn,J(n.icon.split("#")[1]),1)):(N(),H("i",XRn))],!0)],10,YRn),ne(Nr,{name:"interactive-menu-transition"},{default:Ge(()=>[r.isMenuOpen?(N(),H("div",{key:0,class:"interactive-menu-dropdown",style:an(r.menuStyle),ref:"menuRef",role:"menu","aria-orientation":"vertical","aria-labelledby":`menu-button-${t._uid}`},[S("ul",eNn,[(N(!0),H(xe,null,Pe(n.commands,(s,a)=>(N(),H("li",{key:a,onClick:oe(l=>i.executeCommand(s),["prevent"]),class:"interactive-menu-item group",role:"menuitem",tabindex:-1,id:`menu-item-${t._uid}-${a}`},[S("span",nNn,[n.selected_entry===s.name?(N(),H("i",rNn)):Z("",!0)]),S("span",iNn,[s.icon&&!s.icon.includes("#")&&!s.icon.includes("feather:")?(N(),H("img",{key:0,src:s.icon,alt:s.name,class:"interactive-menu-item-icon"},null,8,oNn)):s.icon&&s.icon.includes("feather:")?(N(),H("i",{key:1,"data-feather":s.icon.split(":")[1],class:"interactive-menu-item-icon"},null,8,sNn)):s.icon&&s.icon.includes("#")?(N(),H("span",aNn,J(s.icon.split("#")[1]),1)):(N(),H("span",lNn))]),S("span",cNn,J(s.name),1)],8,tNn))),128))])],12,JRn)):Z("",!0)]),_:1})],512)}const xh=Ye(jRn,[["render",uNn],["__scopeId","data-v-e42afcb4"]]),dNn={name:"ModelEntry",components:{InteractiveMenu:xh},props:{model:{type:Object,required:!0},isSelected:{type:Boolean,default:!1},isInstalled:{type:Boolean,default:!1},isProcessing:{type:Boolean,default:!1},progress:{type:Number,default:0},speed:{type:Number,default:0},total_size:{type:Number,default:0},downloaded_size:{type:Number,default:0},progressName:{type:String,default:"Processing..."}},emits:["select","install","uninstall","cancel-install","copy","copy-link"],data(){return{failedToLoad:!1,linkNotValid:!!this.model.error}},mounted(){Se(()=>{Ce.replace()})},updated(){Se(()=>{Ce.replace()})},methods:{formatDate(t){if(!t)return"N/A";try{const e=new Date(t);return isNaN(e.getTime())?"Invalid Date":e.toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})}catch(e){return console.error("Error formatting date:",e),"Invalid Date"}},formatFileSize(t){return G1(t)},getImgUrl(){var t;return((t=this.model)==null?void 0:t.icon)||Y1},defaultImg(t){this.failedToLoad=!0,t.target.src=Y1},handleClick(){if(this.isProcessing||!this.isInstalled||this.isSelected){console.log(`Click ignored: processing=${this.isProcessing}, installed=${this.isInstalled}, selected=${this.isSelected}`);return}console.log("Emitting select event for:",this.model.name),this.$emit("select",this.model)},handleInstallClick(){this.isProcessing||(console.log("Emitting install event for:",this.model.name),this.$emit("install",{model:this.model}))},handleUninstallClick(){this.isProcessing||!this.isInstalled||(console.log("Emitting uninstall event for:",this.model.name),this.$emit("uninstall",{model:this.model}))},handleCancelClick(){console.log("Emitting cancel-install event for:",this.model.name),this.$emit("cancel-install",{model:this.model})},handleCopyClick(){this.$emit("copy",{model:this.model})},handleCopyLinkClick(){this.$emit("copy-link",{model:this.model})},checkLinkValidity(){this.linkNotValid=!!this.model.error}},computed:{computedClasses(){const t=[];return this.isProcessing?t.push("opacity-70 pointer-events-none"):this.isSelected&&this.isInstalled?(t.push("border-[3px] border-blue-500 dark:border-blue-400 ring-2 ring-blue-300 dark:ring-blue-600 ring-offset-1 dark:ring-offset-gray-800"),t.push("bg-blue-50 dark:bg-blue-900/50"),t.push("cursor-default")):this.isInstalled&&!this.isSelected?(t.push("border-gray-200 dark:border-gray-700"),t.push("hover:border-blue-400 dark:hover:border-blue-600"),t.push("hover:bg-blue-50/50 dark:hover:bg-blue-900/20"),t.push("cursor-pointer")):this.isInstalled||(t.push("border-dashed border-gray-300 dark:border-gray-600"),t.push("opacity-80")),this.linkNotValid&&!this.isProcessing&&t.push("border-l-4 border-l-red-500"),t.join(" ")},isDisabled(){return this.isProcessing||!this.isInstalled},commandsList(){let t=[];return this.isInstalled?(t.push({name:"Uninstall",icon:"feather:trash-2",value:this.handleUninstallClick,disabled:this.isProcessing}),this.isSelected&&t.push({name:"Reload",icon:"feather:refresh-cw",value:this.handleClick,disabled:this.isProcessing})):t.push({name:"Install",icon:"feather:download",value:this.handleInstallClick,disabled:this.isProcessing||this.linkNotValid}),t.push({name:"Copy Info",icon:"feather:copy",value:this.handleCopyClick}),this.model.isCustomModel||t.push({name:"Copy Link",icon:"feather:clipboard",value:this.handleCopyLinkClick}),t},fileSize(){var n,o,r;const t=(o=(n=this.model)==null?void 0:n.variants)==null?void 0:o[0],e=(t==null?void 0:t.size)??((r=this.model)==null?void 0:r.size);return e?this.formatFileSize(e):"N/A"},speed_computed(){return this.formatFileSize(this.speed)+"/s"},total_size_computed(){return this.formatFileSize(this.total_size)},downloaded_size_computed(){return this.formatFileSize(this.downloaded_size)}},watch:{isProcessing(t,e){console.log(`Model ${this.model.name} processing state changed to: ${t}`),Se(()=>{Ce.replace()})},"model.error":function(t){this.linkNotValid=!!t}}},TNn=["title","aria-pressed","aria-disabled"],fNn={key:0},pNn={class:"flex flex-row"},hNn={class:"max-w-[300px] overflow-x-auto"},mNn={class:"flex gap-3 items-center grow"},gNn=["src"],_Nn={class:"flex-1 overflow-hidden"},QNn={class:"font-bold font-large text-lg truncate"},vNn={class:"flex items-center flex-row gap-2 my-1 mt-3"},yNn=["disabled"],bNn={key:1},ENn={class:"flex flex-row items-center gap-3 mb-2"},SNn=["src"],xNn={class:"font-bold font-large text-lg truncate flex-grow"},LNn={class:"flex items-center",title:"Hugging Face Model Card"},CNn=["href"],ANn={class:"flex items-center",title:"Approximate File Size"},wNn={class:"flex items-center",title:"Model License"},ONn={key:0,class:"flex items-center",title:"Quantizer Profile"},MNn=["href"],RNn={key:1,class:"flex items-center",title:"Original Model Creator Profile"},NNn=["href"],DNn={key:2,class:"flex items-center",title:"Last Update Date"},INn={key:3,class:"flex items-center",title:"Model Category"},kNn={key:4,class:"flex items-center",title:"Hugging Face Rank (May be outdated)"},HNn={key:2,class:"absolute z-10 inset-0 -m-px p-4 shadow-md text-center rounded-lg bg-white/80 dark:bg-gray-800/80 flex justify-center items-center backdrop-blur-sm"},PNn={class:"relative flex flex-col items-center justify-center w-full h-full"},$Nn={class:"absolute bottom-2 left-2 right-2 w-auto bg-white/70 dark:bg-gray-800/70 rounded-lg p-2 backdrop-blur-sm"},VNn={class:"flex justify-between mb-1 text-xs"},BNn={class:"font-medium text-blue-700 dark:text-blue-300"},FNn={key:0,class:"font-medium text-blue-700 dark:text-blue-300"},UNn={key:0,class:"w-full bg-gray-200 rounded-full h-1.5 dark:bg-gray-700 mb-1"},qNn={key:1,class:"flex justify-between text-xs text-blue-600 dark:text-blue-400"};function GNn(t,e,n,o,r,i){const s=ze("InteractiveMenu");return N(),H("div",{class:Ee(["relative items-start p-4 hover:bg-blue-100 dark:hover:bg-blue-900/30 rounded-lg mb-2 shadow-lg border-2 select-none transition-colors duration-150",i.computedClasses]),title:n.model.name,role:"button",tabindex:"0","aria-pressed":n.isSelected,"aria-disabled":i.isDisabled,onClick:e[9]||(e[9]=oe((...a)=>i.handleClick&&i.handleClick(...a),["prevent"])),onKeydown:[e[10]||(e[10]=Qn((...a)=>i.handleClick&&i.handleClick(...a),["enter"])),e[11]||(e[11]=Qn(oe((...a)=>i.handleClick&&i.handleClick(...a),["prevent"]),["space"]))]},[n.model.isCustomModel?(N(),H("div",fNn,[S("div",pNn,[S("div",hNn,[S("div",mNn,[S("img",{src:i.getImgUrl(),onError:e[0]||(e[0]=a=>i.defaultImg(a)),class:"w-10 h-10 rounded-lg object-cover flex-shrink-0"},null,40,gNn),S("div",_Nn,[S("h3",QNn,J(n.model.name),1)])])])]),S("div",vNn,[e[13]||(e[13]=S("div",{class:"flex grow items-center text-sm text-gray-600 dark:text-gray-400"},[S("i",{"data-feather":"hard-drive",class:"w-4 h-4 mr-1"}),Re(" Local Reference ")],-1)),S("div",null,[n.isInstalled?(N(),H("button",{key:0,title:"Remove Reference (Doesn't delete file)",type:"button",onClick:e[1]||(e[1]=oe((...a)=>i.handleUninstallClick&&i.handleUninstallClick(...a),["stop"])),disabled:n.isProcessing,class:"button-danger-sm"},e[12]||(e[12]=[S("i",{"data-feather":"trash-2",class:"w-4 h-4 mr-1"},null,-1),Re(" Remove ")]),8,yNn)):Z("",!0)])])])):Z("",!0),n.model.isCustomModel?Z("",!0):(N(),H("div",bNn,[S("div",ENn,[S("img",{ref:"imgElement",src:i.getImgUrl(),onError:e[2]||(e[2]=a=>i.defaultImg(a)),class:Ee(["w-10 h-10 rounded-lg object-cover flex-shrink-0",{grayscale:r.linkNotValid}])},null,42,SNn),S("h3",xNn,J(n.model.name),1),ne(s,{commands:i.commandsList,force_position:2,title:"Menu",onClick:e[3]||(e[3]=oe(()=>{},["stop"]))},null,8,["commands"])]),S("div",{class:Ee(["space-y-1 text-sm text-gray-700 dark:text-gray-300",{"opacity-60":r.linkNotValid}])},[S("div",LNn,[e[14]||(e[14]=S("i",{"data-feather":"link",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[15]||(e[15]=S("b",{class:"mr-1 flex-shrink-0"},"Card:",-1)),S("a",{href:"https://huggingface.co/"+n.model.quantizer+"/"+n.model.name,target:"_blank",onClick:e[4]||(e[4]=oe(()=>{},["stop"])),class:Ee(["truncate hover:text-blue-600 dark:hover:text-blue-400 duration-150 underline",{"text-red-500 pointer-events-none":r.linkNotValid}])},J(r.linkNotValid?"Link Invalid":`${n.model.quantizer}/${n.model.name}`),11,CNn)]),S("div",ANn,[e[16]||(e[16]=S("i",{"data-feather":"file",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[17]||(e[17]=S("b",{class:"mr-1"},"Size:",-1)),S("span",null,J(i.fileSize||"N/A"),1)]),S("div",wNn,[e[18]||(e[18]=S("i",{"data-feather":"key",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[19]||(e[19]=S("b",{class:"mr-1"},"License:",-1)),S("span",null,J(n.model.license||"N/A"),1)]),n.model.quantizer&&n.model.quantizer!=="None"&&n.model.type!=="transformers"?(N(),H("div",ONn,[e[20]||(e[20]=S("i",{"data-feather":"user",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[21]||(e[21]=S("b",{class:"mr-1"},"Quantizer:",-1)),S("a",{href:"https://huggingface.co/"+n.model.quantizer,target:"_blank",rel:"noopener noreferrer",onClick:e[5]||(e[5]=oe(()=>{},["stop"])),class:"truncate hover:text-blue-600 dark:hover:text-blue-400 duration-150 underline"},J(n.model.quantizer),9,MNn)])):Z("",!0),n.model.model_creator?(N(),H("div",RNn,[e[22]||(e[22]=S("i",{"data-feather":"users",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[23]||(e[23]=S("b",{class:"mr-1"},"Creator:",-1)),S("a",{href:n.model.model_creator_link,target:"_blank",rel:"noopener noreferrer",onClick:e[6]||(e[6]=oe(()=>{},["stop"])),class:"truncate hover:text-blue-600 dark:hover:text-blue-400 duration-150 underline"},J(n.model.model_creator),9,NNn)])):Z("",!0),n.model.last_commit_time?(N(),H("div",DNn,[e[24]||(e[24]=S("i",{"data-feather":"clock",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[25]||(e[25]=S("b",{class:"mr-1"},"Updated:",-1)),S("span",null,J(i.formatDate(n.model.last_commit_time)),1)])):Z("",!0),n.model.category?(N(),H("div",INn,[e[26]||(e[26]=S("i",{"data-feather":"grid",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[27]||(e[27]=S("b",{class:"mr-1"},"Category:",-1)),S("span",null,J(n.model.category),1)])):Z("",!0),n.model.rank?(N(),H("div",kNn,[e[28]||(e[28]=S("i",{"data-feather":"bar-chart-2",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[29]||(e[29]=S("b",{class:"mr-1"},"Rank:",-1)),S("a",{href:"https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard",target:"_blank",rel:"noopener noreferrer",onClick:e[7]||(e[7]=oe(()=>{},["stop"])),class:"hover:text-blue-600 dark:hover:text-blue-400 duration-150 underline"},J(n.model.rank),1)])):Z("",!0)],2)])),n.isProcessing?(N(),H("div",HNn,[S("div",PNn,[e[30]||(e[30]=S("div",{role:"status",class:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2"},[S("svg",{"aria-hidden":"true",class:"w-16 h-16 text-gray-300 animate-spin dark:text-gray-600 fill-blue-600",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})]),S("span",{class:"sr-only"},"Processing...")],-1)),S("div",$Nn,[S("div",VNn,[S("span",BNn,J(n.progressName),1),n.progress>0?(N(),H("span",FNn,J(Math.floor(n.progress))+"%",1)):Z("",!0)]),n.progress>0?(N(),H("div",UNn,[S("div",{class:"bg-blue-600 h-1.5 rounded-full",style:an({width:n.progress+"%"})},null,4)])):Z("",!0),n.progress>0&&n.total_size>0?(N(),H("div",qNn,[S("span",null,J(i.downloaded_size_computed)+"/"+J(i.total_size_computed),1),S("span",null,J(i.speed_computed)+"/s",1)])):Z("",!0),S("button",{onClick:e[8]||(e[8]=oe((...a)=>i.handleCancelClick&&i.handleCancelClick(...a),["stop"])),type:"button",title:"Cancel Operation",class:"button-danger-sm w-full mt-2 text-xs"}," Cancel ")])])])):Z("",!0)],42,TNn)}const jNn=Ye(dNn,[["render",GNn],["__scopeId","data-v-1f7c2197"]]),zNn={props:{show:{type:Boolean,default:!1},can_remove:{type:Boolean,default:!1},title:{type:String,default:"Select an option"},choices:{type:Array,required:!0}},data(){return{selectedChoice:null,showInput:!1,newFilename:""}},methods:{displayName(t){return typeof t=="string"?t:t&&t.name?t.name:""},selectChoice(t){this.selectedChoice=t,this.$emit("choice-selected",t)},closeDialog(){this.$emit("close-dialog")},validateChoice(){this.$emit("choice-validated",this.selectedChoice)},formatSize(t){const e=["bytes","KB","MB","GB"];let n=0;for(;t>=1024&&n[n.show?(N(),H("div",YNn,[S("div",WNn,[S("h2",KNn,[e[5]||(e[5]=S("svg",{class:"w-6 h-6 mr-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"})],-1)),Re(" "+J(n.title),1)]),S("div",ZNn,[S("ul",null,[(N(!0),H(xe,null,Pe(n.choices,(s,a)=>(N(),H("li",{key:a,class:"py-2 px-4 hover:bg-gray-200 dark:hover:bg-gray-600 transition duration-150 ease-in-out"},[S("div",XNn,[S("div",JNn,[s.isEditing?Le((N(),H("input",{key:1,"onUpdate:modelValue":l=>s.editName=l,onBlur:l=>i.finishEditing(s),onKeyup:Qn(l=>i.finishEditing(s),["enter"]),class:"bg-white dark:bg-gray-700 border border-gray-300 dark:border-gray-600 rounded px-2 py-1 text-sm",autofocus:""},null,40,tDn)),[[Je,s.editName]]):(N(),H("span",{key:0,onClick:l=>i.selectChoice(s),class:Ee([{"font-semibold":s===r.selectedChoice},"text-gray-800 dark:text-white cursor-pointer"])},J(i.displayName(s)),11,eDn)),s.size?(N(),H("span",nDn,J(i.formatSize(s.size)),1)):Z("",!0)]),S("div",rDn,[S("button",{onClick:l=>i.editChoice(s),class:"text-blue-500 hover:text-blue-600 mr-2"},e[6]||(e[6]=[S("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z"})],-1)]),8,iDn),n.can_remove?(N(),H("button",{key:0,onClick:l=>i.removeChoice(s,a),class:"text-red-500 hover:text-red-600"},e[7]||(e[7]=[S("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)]),8,oDn)):Z("",!0)])])]))),128))])]),r.showInput?(N(),H("div",sDn,[Le(S("input",{"onUpdate:modelValue":e[0]||(e[0]=s=>r.newFilename=s),placeholder:"Enter a filename",class:"border border-gray-300 dark:border-gray-600 p-2 rounded-lg w-full mb-2 bg-white dark:bg-gray-700 text-gray-800 dark:text-white"},null,512),[[Je,r.newFilename]]),S("button",{onClick:e[1]||(e[1]=(...s)=>i.addNewFilename&&i.addNewFilename(...s)),class:"bg-blue-500 hover:bg-blue-600 text-white font-bold py-2 px-4 rounded-lg transition duration-300"}," Add ")])):Z("",!0),S("div",aDn,[S("button",{onClick:e[2]||(e[2]=(...s)=>i.closeDialog&&i.closeDialog(...s)),class:"bg-gray-300 hover:bg-gray-400 text-gray-800 font-bold py-2 px-4 rounded-lg transition duration-300"}," Cancel "),S("button",{onClick:e[3]||(e[3]=(...s)=>i.validateChoice&&i.validateChoice(...s)),disabled:!r.selectedChoice,class:Ee([{"bg-blue-500 hover:bg-blue-600":r.selectedChoice,"bg-gray-400 cursor-not-allowed":!r.selectedChoice},"text-white font-bold py-2 px-4 rounded-lg transition duration-300"])}," Validate ",10,lDn),S("button",{onClick:e[4]||(e[4]=(...s)=>i.toggleInput&&i.toggleInput(...s)),class:"bg-green-500 hover:bg-green-600 text-white font-bold py-2 px-4 rounded-lg transition duration-300"}," Add New ")])])])):Z("",!0)]),_:1})}const Lh=Ye(zNn,[["render",cDn],["__scopeId","data-v-f43216be"]]),uDn={name:"ModelsZoo",components:{ModelEntry:jNn,ChoiceDialog:Lh},props:{api_post_req:{type:Function,required:!0},api_get_req:{type:Function,required:!0},show_toast:{type:Function,required:!0},show_yes_no_dialog:{type:Function,required:!0},client_id:{type:String,required:!0}},emits:["settings-changed"],data(){return{allModels:[],filteredModels:[],pagedModels:[],isLoadingModels:!1,isSearching:!1,searchTerm:"",sortOption:"rank",showInstalledOnly:!1,referencePath:"",modelUrl:"",isDownloading:!1,itemsPerPage:15,currentPage:1,searchDebounceTimer:null,observer:null,downloadProgress:{visible:!1,name:"",progress:0,speed:0,total_size:0,downloaded_size:0,details:null},variantSelectionDialog:{visible:!1,title:"Select Model Variant",choices:[],modelToInstall:null,selectedVariant:null},defaultIcon:Y1}},computed:{currentBindingNameComputed(){const t=this.$store.state.config.binding_name;if(!t)return"None Selected";const e=(this.$store.state.bindingsZoo||[]).find(n=>n.folder===t);return e?e.name:t},currentModelInfoComputed(){const t=this.$store.state.config.model_name;if(!t||this.allModels.length===0)return null;const e=this.allModels.find(n=>n.name===t);return e?{name:e.name,icon:e.icon||this.defaultIcon}:null},hasMoreModelsToLoad(){return this.pagedModels.length{console.log(`Store refresh dispatches initiated for ${t}. Waiting for store watchers.`)}).catch(n=>{console.error(`Error dispatching store refresh for binding ${t}:`,n),this.show_toast(`Failed to load models for binding ${t}.`,5,!1),this.isLoadingModels=!1})):(console.log("Binding removed, local models cleared."),this.isLoadingModels=!1))}},"$store.state.modelsArr":{handler(){console.log("Store installedModels changed, reprocessing."),this.processAndCombineModels()},deep:!1},allModels:{handler(t,e){t!==e&&t.length>0?(console.log("Processed allModels changed, applying filters and reloading page 1."),this.currentPage=1,this.pagedModels=[],this.applyFiltersAndSort(),this.loadMoreModels()):t.length===0&&e.length>0?(console.log("Processed allModels cleared, resetting filters and paged models."),this.filteredModels=[],this.pagedModels=[],this.currentPage=1):t===e&&t.length>0&&(console.log("allModels reference same, but potentially updated internal state. Re-applying filters."),this.currentPage=1,this.pagedModels=[],this.applyFiltersAndSort(),this.loadMoreModels())},deep:!0},watchSources(t,e){(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2])&&(console.log("Filter/Sort/Search changed, resetting page and applying filters."),this.currentPage=1,this.pagedModels=[],this.applyFiltersAndSort(),this.loadMoreModels())}},methods:{async processAndCombineModels(){var i;this.isLoadingModels=!0,console.log("Processing models from store...");const t=this.$store.state.modelsZoo,e=new Set(this.$store.state.modelsArr),n=s=>{let a=s.id||s.name||s.filename||"unknown";return s.quantizer&&(a+=`-${s.quantizer}`),s.variants&&s.variants.length>0&&s.variants[0].name?a+=`-${s.variants[0].name}`:s.filename&&(a+=`-${s.filename}`),a},o=(i=this.downloadProgress.details)==null?void 0:i.model_id,r=(t||[]).map(s=>{const a=n(s);return{name:s.name,author:s.author,rank:s.rank,quantizer:s.quantizer,description:s.description,license:s.license,last_commit_time:s.last_commit_time,variants:s.variants?[...s.variants]:[],filename:s.filename,path:s.path,type:s.type,icon:s.icon||this.defaultIcon,isInstalled:e.has(s.name)||s.variants&&s.variants.some(l=>e.has(l.name)),isProcessing:o===a&&this.isDownloading||!1,id:a}});this.$store.state.modelsArr.forEach(s=>{if(!r.some(l=>l.name===s||l.variants&&l.variants.some(c=>c.name===s))){const l=s;r.push({name:s,isInstalled:!0,isProcessing:o===l&&this.isDownloading||!1,isCustomModel:!0,icon:this.defaultIcon,id:l,rank:-1,author:"Local"})}}),this.allModels=r,this.$store.state.config.binding_name?!this.isDownloading&&this.allModels.length>0&&(this.isLoadingModels=!1):this.isLoadingModels=!1,console.log(`Processed ${this.allModels.length} total models. Loading state: ${this.isLoadingModels}`)},applyFiltersAndSort(){this.isSearching=!0,console.time("FilterSortModels");let t=[...this.allModels];if(this.showInstalledOnly&&(t=t.filter(e=>e.isInstalled)),this.searchTerm){const e=this.searchTerm.toLowerCase();t=t.filter(n=>{var o,r,i,s,a;return((o=n.name)==null?void 0:o.toLowerCase().includes(e))||((r=n.author)==null?void 0:r.toLowerCase().includes(e))||((i=n.quantizer)==null?void 0:i.toLowerCase().includes(e))||((s=n.description)==null?void 0:s.toLowerCase().includes(e))||((a=n.license)==null?void 0:a.toLowerCase().includes(e))})}t.sort((e,n)=>{if(e.isInstalled&&!n.isInstalled)return-1;if(!e.isInstalled&&n.isInstalled)return 1;switch(this.sortOption){case"rank":return(n.rank??-1/0)-(e.rank??-1/0);case"name":return(e.name||"").localeCompare(n.name||"");case"last_commit_time":{const o=e.last_commit_time?new Date(e.last_commit_time):null,r=n.last_commit_time?new Date(n.last_commit_time):null;return o&&r?r-o:o?-1:r?1:0}case"quantizer":return(e.quantizer||"").localeCompare(n.quantizer||"");case"license":return(e.license||"").localeCompare(n.license||"");default:return 0}}),this.filteredModels=t,console.timeEnd("FilterSortModels"),this.isSearching=!1,console.log(`Filtered/Sorted models: ${this.filteredModels.length}`)},debounceSearch(){this.isSearching=!0,clearTimeout(this.searchDebounceTimer),this.searchDebounceTimer=setTimeout(()=>{},500)},loadMoreModels(){if(this.isLoadingModels||this.isSearching||!this.hasMoreModelsToLoad)return;console.log(`Loading page ${this.currentPage} for models`);const t=(this.currentPage-1)*this.itemsPerPage,e=t+this.itemsPerPage,n=this.filteredModels.slice(t,e),o=n.filter(r=>!this.pagedModels.some(i=>(i.id||i.name)===(r.id||r.name)));o.length>0?(this.pagedModels.push(...o),this.currentPage++,Se(Ce.replace)):n.length===0&&this.hasMoreModelsToLoad&&console.warn("Load more triggered but no new items found in slice.")},handleSelect(t){if(console.log("Model selected in child:",t.name),this.isDownloading||this.isLoadingModels){this.show_toast("Please wait for the current operation to finish.",3,!1);return}if(!t.isInstalled){this.show_toast(`Model "${t.name}" is not installed.`,3,!1);return}this.$store.state.config.model_name!==t.name&&(this.$store.state.config.model_name=t.name,this.show_toast(`Selecting model: ${t.name}...`,2,!0),this.isLoadingModels=!0,this.$emit("settings-changed"),setTimeout(()=>{this.isLoadingModels=!1,this.$store.state.config.model_name===t.name?(console.log("Model selection confirmed in store."),Se(Ce.replace)):console.warn("Model selection change not reflected in store after emit and delay.")},500))},handleInstall(t){const e=t.model;console.log("Install requested for:",e.name);const n=e.variants||[];if(e.isInstalled){this.show_toast(`Model "${e.name}" is already installed.`,3,!1);return}if(this.isDownloading){this.show_toast("Another operation is already in progress.",3,!1);return}if(n.length>0)this.variantSelectionDialog.choices=n.map(o=>({...o,id:o.name||`variant-${Math.random().toString(36).substring(7)}`,label:`${o.name||"Unknown Variant"} (${G1(o.size||0)})`})),this.variantSelectionDialog.modelToInstall=e,this.variantSelectionDialog.title=`Select variant for ${e.name}`,this.variantSelectionDialog.visible=!0;else{const o=e.filename||e.name,r=e.quantizer||"Unknown",i=e.path||`https://huggingface.co/${e.author||r}/${e.name}/resolve/main/${o}`;this.startDownload(e,i,o)}},handleVariantSelected(t){this.variantSelectionDialog.selectedVariant=t},handleVariantValidated(t){if(!t||!this.variantSelectionDialog.modelToInstall){this.closeVariantDialog();return}const e=this.variantSelectionDialog.modelToInstall,n=t,o=e.quantizer||"Unknown",r=n.path||`https://huggingface.co/${e.author||o}/${e.name}/resolve/main/${n.name}`;this.startDownload(e,r,n.name),this.closeVariantDialog()},closeVariantDialog(){this.variantSelectionDialog.visible=!1,this.variantSelectionDialog.choices=[],this.variantSelectionDialog.modelToInstall=null,this.variantSelectionDialog.selectedVariant=null},startDownload(t,e,n){const o=t.id||t.name;if(console.log(`Starting download: ${t.name}, Variant: ${n}, Path: ${e}, ID: ${o}`),this.isDownloading){this.show_toast("Another operation is in progress.",3,!1);return}const r=this.$store.state.config.binding_name;if(!r){this.show_toast("No binding selected. Cannot install model.",4,!1);return}this.setModelProcessing(o,!0),this.isDownloading=!0,this.isLoadingModels=!0,this.downloadProgress={visible:!0,name:`Downloading ${t.name}${n!==t.name?` (${n})`:""}`,progress:0,speed:0,total_size:0,downloaded_size:0,details:{model_name:t.name,binding_folder:r,model_url:e,variant_name:n,model_id:o,type:t.type||"gguf"}},Ze.emit("install_model",{path:e,name:t.name,variant_name:n,type:t.type||"gguf",binding:r,model_id:o}),console.log("Install command sent via socket.")},async handleUninstall(t){const e=t.model,n=e.id||e.name;if(this.isDownloading){this.show_toast("Another operation is in progress.",3,!1);return}if(!await this.show_yes_no_dialog(`Uninstall model "${e.name}"?`,"Uninstall","Cancel"))return;const r=this.$store.state.config.binding_name;if(!r){this.show_toast("No binding selected. Cannot uninstall model.",4,!1);return}console.log(`Starting uninstall for: ${e.name}, ID: ${n}`),this.setModelProcessing(n,!0),this.isDownloading=!0,this.isLoadingModels=!0,this.downloadProgress={visible:!0,name:`Uninstalling ${e.name}...`,progress:50,speed:0,total_size:0,downloaded_size:0,details:{model_id:n,model_name:e.name,operation:"uninstall",binding_folder:r}},Ze.emit("uninstall_model",{name:e.name,type:e.type||"gguf",binding:r,model_id:n}),console.log("Uninstall command sent via socket.")},handleCancelInstall(t){const e=t!=null&&t.model?{model_name:t.model.name,binding_folder:this.$store.state.config.binding_name,model_url:t.model.path||"unknown",variant_name:t.model.filename||t.model.name,model_id:t.model.id||t.model.name}:this.downloadProgress.details||t;if(!e||!e.model_id){console.warn("Cancel requested but no details found or missing ID."),this.downloadProgress.visible&&this.resetDownloadState(null,!1);return}console.log("Cancelling operation for:",e);const n=e.binding_folder||this.$store.state.config.binding_name;if(!n){console.error("Cannot cancel, binding folder unknown."),this.show_toast("Cannot cancel operation: Binding context missing.",4,!1);return}Ze.emit("cancel_install",{model_name:e.model_name,binding_folder:n,model_url:e.model_url,variant_name:e.variant_name,model_id:e.model_id})},handleCopy(t){},handleCopyLink(t){},async createReference(){if(!this.referencePath){this.show_toast("Please enter a path.",3,!1);return}if(this.isDownloading){this.show_toast("Another operation is in progress.",3,!1);return}const t=this.$store.state.config.binding_name;if(!t){this.show_toast("No binding selected. Cannot add reference.",4,!1);return}this.isLoadingModels=!0;try{const e=await this.api_post_req("add_reference_to_local_model",{path:this.referencePath,binding:t});e.status?(this.show_toast("Reference created.",4,!0),this.referencePath="",this.$store.dispatch("refreshModels",{binding:t})):(this.show_toast(`Couldn't create reference: ${e.error||"Unknown"}`,4,!1),this.isLoadingModels=!1)}catch(e){this.show_toast(`Error: ${e.message}`,4,!1),this.isLoadingModels=!1}},installFromInput(){if(!this.modelUrl){this.show_toast("Enter URL or HF ID.",3,!1);return}if(this.isDownloading){this.show_toast("Another operation is in progress.",3,!1);return}if(!this.$store.state.config.binding_name){this.show_toast("No binding selected. Cannot install model.",4,!1);return}let e=this.modelUrl.trim(),n="unknown_model",o="unknown_variant",r="gguf",i="Unknown",s=e;const a=/^([a-zA-Z0-9\-_.]+)\/([a-zA-Z0-9\-_.]+)(\/resolve\/main\/)?([a-zA-Z0-9\-_.]+\.(gguf|bin|safetensors))?$/,l=e.match(a),c=/^([a-zA-Z0-9\-_.]+)\/([a-zA-Z0-9\-_.]+)$/,u=e.match(c);if(l)i=l[1],n=l[2],o=l[4]||n,s=`${i}/${n}`,e.startsWith("http")||(e=`https://huggingface.co/${i}/${n}`+(l[3]?l[3]:"/resolve/main/")+o),r=l[5]||"gguf",this.show_toast(`Detected HF Model: ${s}, File: ${o}`,2,!0);else if(u&&!e.startsWith("http"))i=u[1],n=u[2],o=n,s=`${i}/${n}`,e=`https://huggingface.co/${i}/${n}`,this.show_toast(`Detected HF Repo ID: ${s}. Attempting download (may require variant selection).`,2,!0);else if(e.startsWith("http"))try{const f=new URL(e),T=f.pathname.split("/").filter(h=>h);T.length>0?(o=T[T.length-1],n=o.split(".")[0],f.hostname==="huggingface.co"&&T.length>=2?(i=T[0],n=T[1],s=`${i}/${n}`):s=n,o.toLowerCase().endsWith(".safetensors")?r="safetensors":o.toLowerCase().endsWith(".bin")&&(r="bin")):(n=f.hostname,o=n,s=n)}catch{this.show_toast("Invalid URL.",4,!1);return}else{this.show_toast("Invalid input. Use URL or HF ID (e.g., TheBloke/Llama-2-7B-GGUF).",4,!1);return}const d={name:n,author:i,type:r,id:s,filename:o,path:e};this.startDownload(d,e,o),this.modelUrl=""},imgPlaceholder(t){t.target.src=this.defaultIcon},setModelProcessing(t,e){const n=this.allModels.findIndex(o=>(o.id||o.name)===t);if(n!==-1){if(this.allModels[n].isProcessing!==e){const o={...this.allModels[n],isProcessing:e},r=[...this.allModels];r[n]=o,this.allModels=r,console.log(`Set processing ${e} for ${t}`)}}else console.warn(`setModelProcessing: Model with ID ${t} not found in allModels.`)},resetDownloadState(t=null,e=!1){(!t||this.downloadProgress.details&&this.downloadProgress.details.model_id===t)&&(this.downloadProgress.visible=!1,this.downloadProgress.details=null,this.isDownloading=!1),t&&this.setModelProcessing(t,!1),!this.isDownloading&&(!this.$store.state.config.binding_name||this.allModels.length>0)&&(this.isLoadingModels=!1),console.log(`Reset download state. Global loading: ${this.isLoadingModels}`)},installProgressListener(t){var o,r,i;console.log("Socket install_progress received:",t);const e=t.model_id||t.model_name;if(!e){console.error("Progress msg missing ID:",t);return}const n=(o=this.downloadProgress.details)==null?void 0:o.model_id;if(this.isDownloading&&e!==n){console.log(`Ignoring progress for ${e}, currently processing ${n}`);return}switch(!this.isDownloading&&(t.status==="progress"||t.status==="downloading")&&console.warn(`Received progress for ${e} but not in downloading state.`),t.status){case"progress":case"downloading":this.isLoadingModels=!0,this.downloadProgress.visible||(this.downloadProgress.visible=!0),this.downloadProgress.details||(this.downloadProgress.details={model_id:e}),this.downloadProgress.name=t.message||`Processing ${t.model_name||e}...`,this.downloadProgress.progress=t.progress||0,this.downloadProgress.speed=t.speed||0,this.downloadProgress.total_size=t.total_size||0,this.downloadProgress.downloaded_size=t.downloaded_size||0,this.setModelProcessing(e,!0);break;case"succeeded":{const s=t.operation||(((r=this.downloadProgress.details)==null?void 0:r.operation)==="uninstall"?"uninstall":"install");this.show_toast(`"${t.model_name||e}" ${s} succeeded!`,4,!0),this.resetDownloadState(e,!0),this.$store.dispatch("refreshModels",{binding:this.$store.state.config.binding_name});break}case"failed":case"cancelled":{const s=t.operation||((i=this.downloadProgress.details)==null?void 0:i.operation)||"operation";this.show_toast(`"${t.model_name||e}" ${s} ${t.status}: ${t.error||"Unknown reason"}`,5,!1),this.resetDownloadState(e,!1);break}default:console.warn("Unknown progress status:",t.status)}},setupIntersectionObserver(){},destroyIntersectionObserver(){}},async mounted(){console.log("updated"),await this.$store.dispatch("refreshModelsZoo"),await this.$store.dispatch("refreshModels"),this.processAndCombineModels(),Ze.on("install_progress",this.installProgressListener),Se(()=>{Ce.replace(),this.setupIntersectionObserver()}),this.$store.state.config.binding_name&&this.allModels.length===0&&!this.isLoadingModels&&(console.log("Mounted with binding but no models, triggering initial load check."),this.isLoadingModels=!0,Promise.all([this.$store.dispatch("refreshModelsZoo",{binding:this.$store.state.config.binding_name}),this.$store.dispatch("refreshModels",{binding:this.$store.state.config.binding_name})]).catch(t=>{console.error("Error dispatching initial store refresh:",t),this.show_toast(`Failed initial load for ${this.$store.state.config.binding_name}.`,5,!1),this.isLoadingModels=!1}))},unmounted(){Ze.off("install_progress",this.installProgressListener),this.destroyIntersectionObserver(),clearTimeout(this.searchDebounceTimer)},async updated(){Se(()=>{Ce.replace(),this.$refs.loadMoreTrigger&&!this.observer?this.setupIntersectionObserver():!this.$refs.loadMoreTrigger&&this.observer&&this.destroyIntersectionObserver()})}},dDn={class:"user-settings-panel space-y-6"},TDn={class:"flex flex-col sm:flex-row justify-between items-start sm:items-center border-b border-blue-300 dark:border-blue-600 pb-3 mb-4"},fDn={key:0,class:"flex items-center gap-2 text-sm font-medium p-2 bg-blue-100 dark:bg-blue-800/50 rounded-md border border-blue-300 dark:border-blue-600 shrink-0 text-blue-700 dark:text-blue-200"},pDn=["src"],hDn={class:"font-semibold"},mDn={key:1,class:"text-sm font-medium text-orange-600 dark:text-orange-400 p-2 bg-orange-100 dark:bg-orange-900/30 rounded-md border border-orange-300 dark:border-orange-600 shrink-0"},gDn={key:2,class:"text-sm font-medium text-red-600 dark:text-red-400 p-2 bg-red-100 dark:bg-red-900/30 rounded-md border border-red-300 dark:border-red-600 shrink-0"},_Dn={class:"text-sm text-blue-600 dark:text-blue-400"},QDn={class:"font-semibold"},vDn={key:0,class:"p-3 text-center text-orange-600 dark:text-orange-400 bg-orange-100 dark:bg-orange-900/30 rounded-md border border-orange-300 dark:border-orange-600"},yDn={class:"grid grid-cols-1 md:grid-cols-3 gap-4 mb-4 items-center"},bDn={class:"relative md:col-span-2"},EDn={key:0,class:"absolute inset-y-0 right-0 pr-3 flex items-center"},SDn={class:"flex items-center space-x-2"},xDn={for:"model-filter-installed",class:"flex items-center space-x-1 cursor-pointer text-sm label"},LDn={key:1,class:"flex justify-center items-center p-10 text-loading"},CDn={key:2,class:"text-center text-blue-500 dark:text-blue-400 py-10"},ADn={key:3,class:"text-center text-blue-500 dark:text-blue-400 py-10"},wDn={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",ref:"scrollContainer"},ODn={ref:"loadMoreTrigger",class:"h-10"},MDn={key:0,class:"text-center text-blue-500 dark:text-blue-400 py-4"},RDn={class:"pt-6 border-t border-blue-200 dark:border-blue-700 mt-6"},NDn={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},DDn={class:"flex"},IDn={class:"flex"},kDn=["disabled"],HDn={key:0,class:"mt-4 p-3 bg-blue-100 dark:bg-blue-900/30 border border-blue-200 dark:border-blue-700 rounded-md"},PDn={class:"flex justify-between items-center mb-1"},$Dn={class:"text-sm font-medium text-blue-700 dark:text-blue-300"},VDn={class:"text-xs font-medium text-progress"},BDn={class:"animated-progressbar-bg h-1.5"},FDn={class:"flex justify-between items-center mt-1 text-xs text-progress"};function UDn(t,e,n,o,r,i){const s=ze("ModelEntry"),a=ze("ChoiceDialog");return N(),H("div",dDn,[S("div",TDn,[e[11]||(e[11]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 mb-2 sm:mb-0"}," Models Zoo ",-1)),i.currentModelInfoComputed?(N(),H("div",fDn,[S("img",{src:i.currentModelInfoComputed.icon,onError:e[0]||(e[0]=(...l)=>i.imgPlaceholder&&i.imgPlaceholder(...l)),class:"w-6 h-6 rounded-lg object-cover flex-shrink-0",alt:"Current Model Icon"},null,40,pDn),S("span",null,[e[10]||(e[10]=Re("Active: ")),S("span",hDn,J(i.currentModelInfoComputed.name),1)])])):t.$store.state.config.binding_name?(N(),H("div",gDn," No model selected! ")):(N(),H("div",mDn," Select a Binding first! "))]),S("p",_Dn,[e[12]||(e[12]=Re(" Select a model compatible with your chosen binding (")),S("span",QDn,J(i.currentBindingNameComputed||"None Selected"),1),e[13]||(e[13]=Re("). Installed models are shown first. Models may require specific variants (e.g., GGUF, GPTQ) depending on the binding. "))]),t.$store.state.config.binding_name?Z("",!0):(N(),H("div",vDn," Please select a Binding from the 'Bindings' section to see available models. ")),S("div",yDn,[S("div",bDn,[e[15]||(e[15]=S("div",{class:"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none"},[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-5 h-5 text-blue-400 dark:text-blue-500 feather feather-search"},[S("circle",{cx:"11",cy:"11",r:"8"}),S("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"})])],-1)),Le(S("input",{type:"search","onUpdate:modelValue":e[1]||(e[1]=l=>r.searchTerm=l),placeholder:"Search models by name, author, quantizer, description...",class:"input search-input pl-10 w-full",onInput:e[2]||(e[2]=(...l)=>i.debounceSearch&&i.debounceSearch(...l))},null,544),[[Je,r.searchTerm]]),r.isSearching?(N(),H("div",EDn,e[14]||(e[14]=[S("svg",{"aria-hidden":"true",class:"w-5 h-5 text-blue-400 animate-spin dark:text-blue-500 fill-blue-600",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Re(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1)]))):Z("",!0)]),S("div",SDn,[S("label",xDn,[Le(S("input",{type:"checkbox",id:"model-filter-installed","onUpdate:modelValue":e[3]||(e[3]=l=>r.showInstalledOnly=l),class:"rounded text-blue-600 focus:ring-blue-500 border-blue-300 dark:border-blue-600 bg-blue-100 dark:bg-blue-700 focus:ring-offset-blue-100 dark:focus:ring-offset-blue-800"},null,512),[[vl,r.showInstalledOnly]]),e[16]||(e[16]=S("span",null,"Installed Only",-1))])]),S("div",null,[e[18]||(e[18]=S("label",{for:"model-sort",class:"sr-only"},"Sort models by",-1)),Le(S("select",{id:"model-sort","onUpdate:modelValue":e[4]||(e[4]=l=>r.sortOption=l),class:"input"},e[17]||(e[17]=[tr('',5)]),512),[[Dr,r.sortOption]])])]),r.isLoadingModels?(N(),H("div",LDn,e[19]||(e[19]=[S("svg",{"aria-hidden":"true",class:"w-8 h-8 mr-2 text-blue-300 animate-spin dark:text-blue-600 fill-blue-600",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Re(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1),S("span",null,"Loading models...",-1)]))):r.pagedModels.length===0&&r.filteredModels.length>0?(N(),H("div",CDn," No models found matching filters"+J(r.searchTerm?' and search "'+r.searchTerm+'"':"")+". ",1)):r.allModels.length===0&&!r.isLoadingModels&&t.$store.state.config.binding_name?(N(),H("div",ADn," No models available for the selected binding. Try adding a reference or downloading below. ")):Z("",!0),S("div",wDn,[(N(!0),H(xe,null,Pe(r.pagedModels,l=>{var c,u,d,f,T;return N(),ot(s,{key:l.id||l.name,model:l,"is-selected":t.$store.state.config.model_name===l.name,"is-installed":l.isInstalled,"is-processing":l.isProcessing,progress:((c=r.downloadProgress.details)==null?void 0:c.model_id)===(l.id||l.name)?r.downloadProgress.progress:0,speed:((u=r.downloadProgress.details)==null?void 0:u.model_id)===(l.id||l.name)?r.downloadProgress.speed:0,total_size:((d=r.downloadProgress.details)==null?void 0:d.model_id)===(l.id||l.name)?r.downloadProgress.total_size:0,downloaded_size:((f=r.downloadProgress.details)==null?void 0:f.model_id)===(l.id||l.name)?r.downloadProgress.downloaded_size:0,"progress-name":((T=r.downloadProgress.details)==null?void 0:T.model_id)===(l.id||l.name)?r.downloadProgress.name:"",onSelect:i.handleSelect,onInstall:i.handleInstall,onUninstall:i.handleUninstall,onCancelInstall:i.handleCancelInstall,onCopy:i.handleCopy,onCopyLink:i.handleCopyLink},null,8,["model","is-selected","is-installed","is-processing","progress","speed","total_size","downloaded_size","progress-name","onSelect","onInstall","onUninstall","onCancelInstall","onCopy","onCopyLink"])}),128))],512),S("div",ODn,[i.hasMoreModelsToLoad&&!r.isLoadingModels?(N(),H("div",MDn," Loading more models... ")):Z("",!0)],512),S("section",RDn,[e[25]||(e[25]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Add Model",-1)),S("div",NDn,[S("div",null,[e[20]||(e[20]=S("label",{for:"reference_path",class:"label mb-1"},"Add Reference to Local Model File/Folder",-1)),S("div",DDn,[Le(S("input",{type:"text",id:"reference_path","onUpdate:modelValue":e[5]||(e[5]=l=>r.referencePath=l),class:"input input-sm rounded-r-none flex-grow",placeholder:"Enter full path to model file or folder..."},null,512),[[Je,r.referencePath]]),S("button",{onClick:e[6]||(e[6]=(...l)=>i.createReference&&i.createReference(...l)),class:"btn btn-primary btn-sm rounded-l-none flex-shrink-0",title:"Add Reference"},"Add")]),e[21]||(e[21]=S("p",{class:"text-xs text-blue-500 dark:text-blue-400 mt-1"},"Creates a link without copying the model. Binding must support references.",-1))]),S("div",null,[e[23]||(e[23]=S("label",{for:"model_url",class:"label mb-1"},"Download Model from URL or Hugging Face ID",-1)),S("div",IDn,[Le(S("input",{type:"text",id:"model_url","onUpdate:modelValue":e[7]||(e[7]=l=>r.modelUrl=l),class:"input input-sm rounded-r-none flex-grow",placeholder:"Enter URL or HF ID (e.g., TheBloke/Llama-2-7B-GGUF)..."},null,512),[[Je,r.modelUrl]]),S("button",{onClick:e[8]||(e[8]=(...l)=>i.installFromInput&&i.installFromInput(...l)),class:"btn btn-success btn-sm rounded-l-none flex-shrink-0",title:"Download and Install",disabled:r.isDownloading},[(N(),H("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:Ee(["w-4 h-4",r.isDownloading?"animate-spin feather feather-loader":"feather feather-download"])},e[22]||(e[22]=[tr('',11)]),2))],8,kDn)]),e[24]||(e[24]=S("p",{class:"text-xs text-blue-500 dark:text-blue-400 mt-1"},"Downloads the model to the binding's models folder.",-1))])]),r.downloadProgress.visible?(N(),H("div",HDn,[S("div",PDn,[S("span",$Dn,J(r.downloadProgress.name),1),S("span",VDn,J(r.downloadProgress.progress.toFixed(1))+"%",1)]),S("div",BDn,[S("div",{class:"animated-progressbar-fg h-1.5 rounded-full",style:an({width:r.downloadProgress.progress+"%"})},null,4)]),S("div",FDn,[S("span",null,J(i.downloadedSizeComputed)+" / "+J(i.totalSizeComputed),1),S("span",null,J(i.speedComputed)+"/s",1)]),S("button",{onClick:e[9]||(e[9]=l=>i.handleCancelInstall(r.downloadProgress.details)),class:"btn btn-secondary btn-sm mt-2 text-xs text-red-500 dark:text-red-400 hover:bg-red-200 dark:hover:bg-red-700"},"Cancel Operation")])):Z("",!0)]),ne(a,{show:r.variantSelectionDialog.visible,title:r.variantSelectionDialog.title,choices:r.variantSelectionDialog.choices,onChoiceSelected:i.handleVariantSelected,onChoiceValidated:i.handleVariantValidated,onCloseDialog:i.closeVariantDialog},null,8,["show","title","choices","onChoiceSelected","onChoiceValidated","onCloseDialog"])])}const PO=Ye(uDn,[["render",UDn],["__scopeId","data-v-8f6b5014"]]),qDn={name:"PersonalityEntry",components:{InteractiveMenu:xh},props:{personality:{type:Object,required:!0},select_language:{type:Boolean,default:!1},isActive:{type:Boolean,default:!1},full_path:{type:String,required:!0},isMounted:{type:Boolean,default:!1},isProcessing:{type:Boolean,default:!1},isStarred:{type:Boolean,default:!1},baseUrl:{type:String,default:""}},emits:["select","mount","unmount","remount","edit","copy-to-custom","reinstall","settings","copy-personality-name","open-folder","error","toggle-star"],data(){return{selectedLanguage:this.personality.language||"",showHelpPopup:!1,renderedHelp:""}},computed:{personalityId(){return this.personality.id||this.full_path.replace(/[/:]/g,"-")},renderedDescription(){return this.personality.description?/<[a-z][\s\S]*>/i.test(this.personality.description)?Rc.sanitize(this.personality.description):this.personality.description:"No description available."},commandsList(){let t=[];return this.isMounted?t.push({name:"unmount",icon:"feather:stop-circle",is_file:!1,value:this.emitUnmount}):t.push({name:"mount",icon:"feather:play",is_file:!1,value:this.emitMount}),this.isMounted&&t.push({name:"remount",icon:"feather:refresh-cw",is_file:!1,value:this.emitRemount}),t.push({name:"reinstall",icon:"feather:download-cloud",is_file:!1,value:this.emitReinstall}),this.personality.category==="custom_personalities"?t.push({name:"edit",icon:"feather:edit-3",is_file:!1,value:this.emitEdit}):t.push({name:"Copy to custom personalities",icon:"feather:copy",is_file:!1,value:this.emitCopyToCustom}),this.isActive&&this.personality.has_scripts&&t.push({name:"settings",icon:"feather:settings",is_file:!1,value:this.emitSettings}),t.push({name:"Open Folder",icon:"feather:folder",is_file:!1,value:this.emitOpenFolder}),t.push({name:"Copy Name",icon:"feather:clipboard",is_file:!1,value:this.emitCopyName}),t},watchedFeatherProps(){return[this.isActive,this.isMounted,this.isProcessing,this.isStarred,this.showHelpPopup]}},watch:{"personality.language"(t){const e=t||"";this.selectedLanguage!==e&&(this.selectedLanguage=e)},watchedFeatherProps:{handler(){this.updateFeatherIcons()},deep:!0,flush:"post"}},methods:{updateFeatherIcons(){Se(()=>{Ce.replace()})},formatDate(t){if(!t)return"";try{const e={year:"numeric",month:"short",day:"numeric"};return new Date(t).toLocaleDateString(void 0,e)}catch(e){return console.error("Error formatting date:",e),t}},getPersonalityIconUrl(t){if(!t)return Wi;const e=t.startsWith("/")?t:`/${t}`,n=this.baseUrl.endsWith("/")||e.startsWith("/")?"":"/";let o=e.startsWith("/")?e.substring(1):e;return o=o==="/"?"":o,`${this.baseUrl}${n}${o}`},handleImgError(t){t.target.src=Wi,this.$emit("error",t)},handleSelect(){this.isMounted?this.$emit("select",{personality:{...this.personality,language:this.selectedLanguage}}):console.log("Personality must be mounted to be selected.")},emitAction(t){this.$emit(t,{personality:{...this.personality,language:this.selectedLanguage}})},toggleStar(){this.emitAction("toggle-star")},emitMount(){this.emitAction("mount")},emitUnmount(){this.emitAction("unmount")},emitRemount(){this.emitAction("remount")},emitReinstall(){this.emitAction("reinstall")},emitEdit(){this.emitAction("edit")},emitCopyToCustom(){this.emitAction("copy-to-custom")},emitSettings(){this.emitAction("settings")},emitOpenFolder(){this.emitAction("open-folder")},emitCopyName(){this.emitAction("copy-personality-name")},showHelp(){if(this.personality.help){Et.setOptions({gfm:!0,breaks:!0});const t=Et.parse(this.personality.help);this.renderedHelp=Rc.sanitize(t),this.showHelpPopup=!0,this.updateFeatherIcons()}},closeHelp(){this.showHelpPopup=!1}},mounted(){this.updateFeatherIcons()}},GDn=["title"],jDn={key:0,class:"absolute inset-0 bg-gray-400 dark:bg-gray-700 bg-opacity-50 dark:bg-opacity-50 flex items-center justify-center rounded-lg z-20"},zDn=["title"],YDn={key:0,"data-feather":"star",class:"w-5 h-5 fill-current text-yellow-500 dark:text-yellow-400"},WDn={key:1,"data-feather":"star",class:"w-5 h-5 stroke-current"},KDn={class:"flex-grow"},ZDn={class:"flex items-start mb-3"},XDn=["src"],JDn={class:"flex-grow overflow-hidden min-w-0"},eIn=["title"],tIn=["title"],nIn=["title"],rIn=["title"],iIn={class:"text-xs text-gray-400 dark:text-gray-500 mb-3 space-y-1"},oIn={key:0},sIn={key:1},aIn={class:"mb-4"},lIn=["innerHTML"],cIn={key:1,class:"mb-3 mt-auto"},uIn=["for"],dIn=["id"],TIn=["value"],fIn={class:"mt-auto pt-3 border-t border-gray-200 dark:border-gray-700"},pIn={class:"flex justify-between items-center"},hIn={class:"flex space-x-1"},mIn={class:"bg-white dark:bg-gray-800 p-6 rounded-lg shadow-xl w-full max-w-2xl max-h-[80vh] flex flex-col"},gIn={class:"flex justify-between items-center mb-4 border-b pb-2 dark:border-gray-600"},_In={class:"text-xl font-bold text-gray-800 dark:text-gray-100"},QIn={class:"flex-grow overflow-y-auto custom-scrollbar prose dark:prose-invert max-w-none pr-2"},vIn=["innerHTML"],yIn={class:"mt-4 pt-4 border-t dark:border-gray-600 text-right"};function bIn(t,e,n,o,r,i){const s=ze("InteractiveMenu");return N(),H("div",{class:Ee(["flex flex-col p-3 rounded-lg border hover:shadow-md transition-shadow duration-150",{"border-2 border-secondary dark:border-secondary-dark shadow-md":n.isActive,"border-gray-200 dark:border-gray-700":!n.isActive,"opacity-50 pointer-events-none":n.isProcessing}]),title:n.personality.tool_description||n.personality.description||n.personality.name,onClick:e[11]||(e[11]=(...a)=>i.handleSelect&&i.handleSelect(...a))},[n.isProcessing?(N(),H("div",jDn,e[12]||(e[12]=[S("svg",{"aria-hidden":"true",class:"w-8 h-8 text-gray-200 animate-spin dark:text-gray-600 fill-primary",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Re(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1)]))):Z("",!0),S("button",{onClick:e[0]||(e[0]=oe((...a)=>i.toggleStar&&i.toggleStar(...a),["stop"])),class:"absolute top-2 right-2 p-1 rounded-full hover:bg-gray-200 dark:hover:bg-gray-600 text-gray-400 hover:text-yellow-500 dark:text-gray-400 dark:hover:text-yellow-400 focus:outline-none z-10",title:n.isStarred?"Unstar":"Star"},[n.isStarred?(N(),H("i",YDn)):(N(),H("i",WDn))],8,zDn),S("div",KDn,[S("div",ZDn,[S("img",{src:i.getPersonalityIconUrl(n.personality.avatar),onError:e[1]||(e[1]=(...a)=>i.handleImgError&&i.handleImgError(...a)),alt:"Personality Icon",class:"w-16 h-16 rounded-lg object-cover mr-4 flex-shrink-0 border border-gray-200 dark:border-gray-600"},null,40,XDn),S("div",JDn,[S("h3",{class:"font-bold text-lg text-gray-800 dark:text-gray-100 truncate",title:n.personality.name},J(n.personality.name),9,eIn),n.personality.author?(N(),H("p",{key:0,class:"text-xs text-gray-500 dark:text-gray-400 truncate",title:`By ${n.personality.author}`}," By "+J(n.personality.author),9,tIn)):Z("",!0),n.personality.version?(N(),H("p",{key:1,class:"text-xs text-gray-500 dark:text-gray-400",title:`Version: ${n.personality.version}`}," v"+J(n.personality.version),9,nIn)):Z("",!0),n.personality.category?(N(),H("p",{key:2,class:"text-xs text-gray-500 dark:text-gray-400 truncate",title:`Category: ${n.personality.category}`},J(n.personality.category),9,rIn)):Z("",!0)]),n.personality.help?(N(),H("button",{key:0,onClick:e[2]||(e[2]=oe((...a)=>i.showHelp&&i.showHelp(...a),["stop"])),class:"ml-2 text-blue-500 hover:text-blue-600 transition duration-150 ease-in-out flex-shrink-0 p-1 -mr-1",title:"Help"},e[13]||(e[13]=[S("i",{"data-feather":"help-circle",class:"h-5 w-5"},null,-1)]))):Z("",!0)]),S("div",iIn,[n.personality.creation_date?(N(),H("p",oIn,"Created: "+J(i.formatDate(n.personality.creation_date)),1)):Z("",!0),n.personality.last_update_date?(N(),H("p",sIn,"Updated: "+J(i.formatDate(n.personality.last_update_date)),1)):Z("",!0)]),S("div",aIn,[S("p",{class:"text-sm text-gray-600 dark:text-gray-300 h-20 overflow-y-auto custom-scrollbar",innerHTML:i.renderedDescription},null,8,lIn)])]),n.select_language&&n.personality.languages&&n.personality.languages.length>0&&!n.isMounted?(N(),H("div",cIn,[S("label",{for:"lang-select-"+i.personalityId,class:"block text-xs font-medium text-gray-700 dark:text-gray-300 mb-1"},"Language:",8,uIn),Le(S("select",{id:"lang-select-"+i.personalityId,"onUpdate:modelValue":e[3]||(e[3]=a=>r.selectedLanguage=a),onClick:e[4]||(e[4]=oe(()=>{},["stop"])),class:"block w-full pl-2 pr-8 py-1 text-xs border-gray-300 dark:border-gray-600 bg-gray-50 dark:bg-gray-700 text-gray-900 dark:text-gray-100 focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 rounded-md"},[e[14]||(e[14]=S("option",{value:""},"Default",-1)),(N(!0),H(xe,null,Pe(n.personality.languages,a=>(N(),H("option",{key:a,value:a},J(a),9,TIn))),128))],8,dIn),[[Dr,r.selectedLanguage]])])):Z("",!0),S("div",fIn,[S("div",pIn,[S("div",hIn,[n.isMounted?(N(),H("button",{key:1,onClick:e[6]||(e[6]=oe(a=>i.emitAction("unmount"),["stop"])),class:"px-2 py-1 text-xs font-medium rounded-md text-white bg-red-600 hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-offset-1 focus:ring-red-500 dark:bg-red-700 dark:hover:bg-red-600",title:"Unmount personality"},e[16]||(e[16]=[S("div",{class:"flex items-center"},[S("i",{"data-feather":"stop-circle",class:"w-3 h-3 mr-1"}),Re("Unmount")],-1)]))):(N(),H("button",{key:0,onClick:e[5]||(e[5]=oe(a=>i.emitAction("mount"),["stop"])),class:"px-2 py-1 text-xs font-medium rounded-md text-white bg-green-600 hover:bg-green-700 focus:outline-none focus:ring-2 focus:ring-offset-1 focus:ring-green-500 dark:bg-green-700 dark:hover:bg-green-600",title:"Mount personality"},e[15]||(e[15]=[S("div",{class:"flex items-center"},[S("i",{"data-feather":"play",class:"w-3 h-3 mr-1"}),Re("Mount")],-1)]))),n.isMounted?(N(),H("button",{key:2,onClick:e[7]||(e[7]=oe(a=>i.emitAction("remount"),["stop"])),class:"p-1 rounded-md hover:bg-gray-200 dark:hover:bg-gray-600 text-gray-500 dark:text-gray-400 focus:outline-none",title:"Remount personality"},e[17]||(e[17]=[S("i",{"data-feather":"refresh-cw",class:"w-4 h-4"},null,-1)]))):Z("",!0)]),ne(s,{commands:i.commandsList,force_position:2,title:"More actions",class:"text-gray-500 hover:text-gray-600 dark:text-gray-400 dark:hover:text-gray-300 p-1"},{trigger:Ge(()=>e[18]||(e[18]=[S("i",{"data-feather":"more-vertical",class:"w-5 h-5"},null,-1)])),_:1},8,["commands"])])]),r.showHelpPopup?(N(),H("div",{key:2,onClick:e[10]||(e[10]=oe(()=>{},["stop"])),class:"fixed inset-0 bg-black bg-opacity-70 flex justify-center items-center z-50 p-4"},[S("div",mIn,[S("div",gIn,[S("h2",_In,"Help: "+J(n.personality.name),1),S("button",{onClick:e[8]||(e[8]=(...a)=>i.closeHelp&&i.closeHelp(...a)),class:"text-gray-500 hover:text-red-600 dark:text-gray-400 dark:hover:text-red-500 p-1 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700"},e[19]||(e[19]=[S("i",{"data-feather":"x",class:"w-5 h-5"},null,-1)]))]),S("div",QIn,[S("div",{innerHTML:r.renderedHelp},null,8,vIn)]),S("div",yIn,[S("button",{onClick:e[9]||(e[9]=(...a)=>i.closeHelp&&i.closeHelp(...a)),class:"px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600"},"Close")])])])):Z("",!0)],10,GDn)}const Nk=Ye(qDn,[["render",bIn],["__scopeId","data-v-84eb42ea"]]),EIn="/",$O="lollms_starred_personalities",SIn={name:"PersonalitiesZoo",components:{PersonalityEntry:Nk},emits:["settings-changed"],data(){return{allPersonalities:[],persCatgArr:[],selectedCategory:"",searchPersonality:"",searchPersonalityInProgress:!1,searchDebounceTimer:null,searchDebounceDelay:350,isLoading:!1,bUrl:EIn,defaultPersonalityIcon_:Wi,maxDisplayedMounted:5,starredPaths:[],displayedCount:24,loadBatchSize:24,observer:null}},computed:{configFile(){return this.$store.state.config||{personalities:[],active_personality_id:-1,personality_category:""}},mountedPersArr(){if(!this.configFile.personalities||this.allPersonalities.length===0)return[];const t=new Set(this.configFile.personalities);return this.allPersonalities.filter(e=>{const n=e.full_path,o=Array.isArray(e.languages)?e.languages.map(r=>`${n}:${r}`):[];return t.has(n)||o.some(r=>t.has(r))})},active_personality_name(){if(this.configFile.active_personality_id<0||!this.configFile.personalities||this.configFile.active_personality_id>=this.configFile.personalities.length)return null;const t=this.configFile.personalities[this.configFile.active_personality_id],e=t?t.split(":")[0]:null,n=this.allPersonalities.find(o=>o.full_path===e);return n?n.name:null},displayedMountedPersonalities(){return this.mountedPersArr.slice(0,this.maxDisplayedMounted)},fullyFilteredPersonalities(){let t=[...this.allPersonalities];if(this.selectedCategory==="Starred"){const e=new Set(this.starredPaths);t=t.filter(n=>e.has(n.full_path))}else this.selectedCategory&&(t=t.filter(e=>e.category===this.selectedCategory));if(this.searchPersonality){const e=this.searchPersonality.toLowerCase();t=t.filter(n=>{try{return n.name&&n.name.toLowerCase().includes(e)||n.author&&n.author.toLowerCase().includes(e)||n.description&&n.description.toLowerCase().includes(e)||n.full_path&&n.full_path.toLowerCase().includes(e)}catch{return!1}})}return t.sort((e,n)=>e.isMounted&&!n.isMounted?-1:!e.isMounted&&n.isMounted?1:(e.name||"").localeCompare(n.name||"")),t},renderedPersonalities(){return this.fullyFilteredPersonalities.slice(0,this.displayedCount)}},watch:{"configFile.personalities":{handler(){this.syncLocalMountedFlags()},deep:!0},"configFile.personality_category":{handler(t){const e=t||"";this.selectedCategory!==e&&(this.persCatgArr.includes(e)||e===""||e==="Starred")&&(this.selectedCategory=e,this.applyFiltersAndSort())}},selectedCategory(t){(this.$store.state.config.personality_category||"")!==t&&(this.$store.state.config.personality_category=t,this.$emit("settings-changed"))},starredPaths:{handler(){this.fetchCategories(),this.selectedCategory==="Starred"&&this.applyFiltersAndSort(),this.markStarredInAllPersonalities()},deep:!0}},methods:{async api_get_req(t){try{const e=await ce.get(`${t.startsWith("/")?"":"/"}${t}`);if(e)return e.data}catch(e){return this.$store.state.toast.showToast(`API GET Error (${t}): ${e.message}`,4,!1),console.error(`API GET Error (${t}):`,e),null}},async api_post_req(t,e={}){const n={...e,client_id:this.$store.state.client_id};try{const o=await ce.post(`${t.startsWith("/")?"":"/"}${t}`,n);return typeof o.data=="object"&&o.data!==null&&"status"in o.data?o.data:(console.warn(`API POST response for ${t} has unexpected structure:`,o.data),{status:!1,error:"Unexpected response structure",data:o.data})}catch(o){return this.$store.state.toast.showToast(`API POST Error (${t}): ${o.message}`,4,!1),console.error(`API POST Error (${t}):`,o),{status:!1,error:o.message}}},async getPersonalitiesArr(){this.isLoading=!0;try{const t=await this.api_get_req("get_all_personalities"),e=this.configFile;console.log("Processing get_all_personalities response");let n=[];const o=new Set(e.personalities||[]),r=new Set(this.starredPaths);if(t)for(const i in t){const s=t[i];Array.isArray(s)&&s.forEach(a=>{const l=`${i}/${a.folder}`,c=a.id||l,u=Array.isArray(a.languages)?a.languages.map(f=>`${l}:${f}`):[],d=o.has(l)||u.some(f=>o.has(f));n.push({...a,category:i,language:"",full_path:l,isMounted:d,isStarred:r.has(l),id:c,isProcessing:!1})})}this.allPersonalities=n,this.applyFiltersAndSort(),console.log(`Fetched ${this.allPersonalities.length} total personalities.`)}finally{this.isLoading=!1,Se(Ce.replace)}},async fetchCategories(){this.isLoading=!0;try{const t=await this.api_get_req("list_personalities_categories");this.persCatgArr=t?t.sort():[];const e=this.configFile.personality_category,n=e&&(this.persCatgArr.includes(e)||e==="Starred");this.selectedCategory=n?e:""}finally{this.isLoading=!1,Se(Ce.replace)}},async fetchPersonalitiesAndCategories(){await this.fetchCategories(),await this.getPersonalitiesArr()},applyFiltersAndSort(){this.displayedCount=this.loadBatchSize,this.searchPersonalityInProgress=!1,Se(()=>{Ce.replace();const t=this.$el.querySelector(".personalities-grid-container");t&&(t.scrollTop=0),this.setupObserver()})},searchPersonality_func(){this.searchPersonalityInProgress=!0,clearTimeout(this.searchDebounceTimer),this.searchDebounceTimer=setTimeout(()=>{this.applyFiltersAndSort()},this.searchDebounceDelay)},clearSearch(){this.searchPersonality="",this.applyFiltersAndSort()},loadStarred(){try{const t=localStorage.getItem($O);this.starredPaths=t?JSON.parse(t):[]}catch(t){console.error("Failed to load starred personalities:",t),this.starredPaths=[]}this.markStarredInAllPersonalities()},saveStarred(){try{localStorage.setItem($O,JSON.stringify(this.starredPaths))}catch(t){console.error("Failed to save starred personalities:",t)}},markStarredInAllPersonalities(){const t=new Set(this.starredPaths);this.allPersonalities.forEach(e=>{e.isStarred=t.has(e.full_path)})},toggleStar(t){const e=t.personality.full_path,n=this.starredPaths.indexOf(e);n>-1?this.starredPaths.splice(n,1):this.starredPaths.push(e);const o=this.allPersonalities.find(r=>r.full_path===e);o&&(o.isStarred=n===-1),this.saveStarred(),this.$store.state.toast.showToast(`${t.personality.name} ${n>-1?"unstarred":"starred"}`,2,!0),Se(Ce.replace)},syncLocalMountedFlags(){const t=new Set(this.configFile.personalities||[]);let e=!1;this.allPersonalities.forEach(n=>{const o=n.full_path,r=Array.isArray(n.languages)?n.languages.map(s=>`${o}:${s}`):[],i=t.has(o)||r.some(s=>t.has(s));n.isMounted!==i&&(n.isMounted=i,e=!0)}),e&&this.applyFiltersAndSort(),Se(Ce.replace)},personalityImgPlaceholder(t){t.target.src=this.defaultPersonalityIcon_},getPersonalityIconUrl(t){if(!t)return this.defaultPersonalityIcon_;const e=t.startsWith("/")?t:`/${t}`,n=this.bUrl.endsWith("/")||e.startsWith("/")?"":"/";let o=e.startsWith("/")?e.substring(1):e;return o=o==="/"?"":o,`${this.bUrl}${n}${o}`},isActivePersonality(t){if(!this.configFile||this.configFile.active_personality_id<0||!this.configFile.personalities)return!1;const e=this.configFile.personalities[this.configFile.active_personality_id],n=e?e.split(":")[0]:null;return t.full_path===n},setPersonalityProcessing(t,e){const n=t.personality.id||t.personality.full_path;(r=>{const i=r.find(s=>(s.id||s.full_path)===n);i&&(i.isProcessing=e)})(this.allPersonalities),Se(Ce.replace)},getCategoryCount(t){return this.allPersonalities.filter(e=>e.category===t).length},getResultLabel(){return this.searchPersonality?"Search results":this.selectedCategory==="Starred"?"Starred Personalities":this.selectedCategory?`Personalities in "${this.selectedCategory}"`:"All Personalities"},async onPersonalitySelected(t){const e=t.personality;if(this.isLoading){this.$store.state.toast.showToast("Loading...",4,!1);return}if(!e.isMounted){this.$store.state.toast.showToast(`Mount "${e.name}" first.`,3,!1);return}if(this.isActivePersonality(e)){this.$store.state.toast.showToast(`"${e.name}" is already active.`,3,!1);return}this.setPersonalityProcessing(t,!0),this.$store.state.toast.showToast(`Selecting ${e.name}...`,2,!0);const n=await this.select_personality(e);n&&n.status?(this.$emit("settings-changed"),this.$store.state.toast.showToast(`Selected personality: ${e.name}`,4,!0)):this.$store.state.toast.showToast(`Failed to select ${e.name}: ${(n==null?void 0:n.error)||"Unknown error"}`,4,!1),this.setPersonalityProcessing(t,!1),Se(Ce.replace)},async select_personality(t){if(!t)return{status:!1,error:"no personality - select_personality"};let e=t.language?`${t.full_path}:${t.language}`:t.full_path;if(this.$store.state.config.personalities.findIndex(i=>i===e||i===t.full_path)===-1){if(this.$store.state.config.personalities.findIndex(s=>s===t.full_path)===-1)return console.error("Personality path not found in store config:",e,t.full_path),{status:!1,error:"Personality path not found in current config"};e=t.full_path}const o=this.$store.state.config.personalities.findIndex(i=>i===e);if(o===-1)return console.error("Consistency Error: Personality path disappeared after check:",e),{status:!1,error:"Internal error finding personality ID"};const r={client_id:this.$store.state.client_id,id:o};try{const i=await ce.post("/select_personality",r,{headers:{"Content-Type":"application/json"}});return i&&i.data?(await this.$store.dispatch("refreshConfig"),i.data):{status:!1,error:"No response data from select_personality"}}catch(i){return console.error("Error in select_personality API call:",i),{status:!1,error:i.message}}},async mountPersonality(t){const e=t.personality;if(e.isMounted){this.$store.state.toast.showToast(`${e.name} is already mounted.`,3,!1);return}if(e.disclaimer&&e.disclaimer.trim()!==""&&!await this.$store.state.yesNoDialog.askQuestion(`Disclaimer for ${e.name}: +This overwrites files.`,"Reinstall","Cancel")){this.setBindingProcessing(t.folder,!0),this.isLoadingAction=!0;try{const n=await this.internal_api_post_req("reinstall_binding",{name:t.folder});n&&n.status?(this.show_toast(`Binding "${t.name}" reinstalled successfully! Reload recommended.`,5,!0),await this.fetchBindings()):this.show_toast(`Failed to reinstall "${t.name}": ${(n==null?void 0:n.error)||"Unknown error"}`,4,!1)}catch{}finally{this.setBindingProcessing(t.folder,!1),this.isLoadingAction=!1,Se(Ce.replace)}}},handleSettingsFromEntry(t){if(!t||!t.folder){console.error("Invalid binding data in handleSettingsFromEntry:",t),this.show_toast("Internal error: Invalid binding data.",4,!1);return}this.handleSettings(t.folder)},async handleSettings(t){if(console.log("Handling settings from"),console.log(t),!t){this.show_toast("No binding specified.",3,!1);return}const e=this.bindings.find(n=>n.folder===t);if(!e){this.show_toast(`Binding "${t}" not found.`,4,!1);return}if(!e.installed){this.show_toast(`"${e.name}" is not installed.`,3,!1);return}if(t!==this.$store.state.config.binding_name){this.show_toast(`Select "${e.name}" first to configure it.`,4,!1);return}this.isLoadingAction=!0;try{const n=await this.internal_api_post_req("get_active_binding_settings");if(n&&Object.keys(n).length>0){const o=e.name||t,r=await this.show_universal_form(n,`Settings - ${o}`,"Save","Cancel");if(r!=null){const i=await this.internal_api_post_req("set_active_binding_settings",{settings:r});i&&i.status?(this.show_toast(`Settings for "${o}" updated. Reloading...`,4,!0),await this.internal_api_post_req("update_binding_settings"),this.show_toast(`Binding "${o}" reloaded with new settings.`,4,!0),this.$emit("settings-changed",!0),this.refresh_config()):this.show_toast(`Failed to update settings for "${o}": ${(i==null?void 0:i.error)||"Unknown error"}`,4,!1)}else this.show_toast(`Settings update for "${o}" cancelled.`,3,!1)}else n&&Object.keys(n).length===0?this.show_toast(`"${e.name}" has no settings.`,4,!1):this.show_toast(`Could not get settings for "${e.name}".`,4,!1)}catch{}finally{this.isLoadingAction=!1,Se(Ce.replace)}},handleReloadFromEntry(t){if(!t||!t.folder){console.error("Invalid binding data in handleReloadFromEntry:",t),this.show_toast("Internal error: Invalid binding data.",4,!1);return}this.handleReload(t.folder)},async handleReload(t){if(!t){this.show_toast("No binding specified.",3,!1);return}const e=this.bindings.find(n=>n.folder===t);if(!e){this.show_toast(`Binding "${t}" not found.`,4,!1);return}if(!e.installed){this.show_toast(`"${e.name}" is not installed.`,3,!1);return}if(t!==this.$store.state.config.binding_name){this.show_toast(`"${e.name}" is not active. Select it first.`,3,!1);return}this.isLoadingAction=!0,this.show_toast(`Reloading "${e.name}"...`,3,!0);try{const n=await this.internal_api_post_req("reload_binding",{name:t});n&&n.status?(this.show_toast(`Binding "${e.name}" reloaded.`,4,!0),this.refresh_config()):this.show_toast(`Failed to reload "${e.name}": ${(n==null?void 0:n.error)||"Unknown error"}`,4,!1)}catch{}finally{this.isLoadingAction=!1,Se(Ce.replace)}}},mounted(){this.fetchBindings(),Se(()=>{Ce.replace()})},updated(){Se(()=>{Ce.replace()})}},wRn={class:"user-settings-panel space-y-6 p-4 md:p-6"},ORn={class:"flex flex-col sm:flex-row justify-between items-start sm:items-center border-b border-blue-300 dark:border-blue-600 pb-3 mb-4"},MRn={key:0,class:"flex items-center gap-2 text-sm font-medium p-2 bg-blue-200 dark:bg-blue-800 rounded-md border border-blue-300 dark:border-blue-600 text-blue-700 dark:text-blue-200"},RRn=["src"],NRn={class:"font-semibold"},DRn=["disabled"],IRn=["disabled"],kRn={key:1,class:"text-sm font-medium text-red-600 dark:text-red-400 p-2 bg-red-100 dark:bg-red-900/30 rounded-md border border-red-300 dark:border-red-600"},HRn={class:"flex flex-col sm:flex-row gap-4 mb-4"},PRn={class:"relative flex-grow"},$Rn=["disabled"],VRn={class:"flex-shrink-0"},BRn=["disabled"],FRn={key:0,class:"flex justify-center items-center p-10"},URn={key:1,class:"text-center text-blue-500 dark:text-blue-400 py-10"},qRn={key:2,class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 scrollbar"};function GRn(t,e,n,o,r,i){const s=ze("BindingEntry");return N(),H("div",wRn,[S("div",ORn,[e[8]||(e[8]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-200 mb-2 sm:mb-0"}," Binding Zoo ",-1)),i.currentBindingInfo?(N(),H("div",MRn,[S("img",{src:i.getIconPath(i.currentBindingInfo.icon),onError:e[0]||(e[0]=(...a)=>i.imgPlaceholder&&i.imgPlaceholder(...a)),class:"w-6 h-6 rounded-full object-cover flex-shrink-0",alt:"Current Binding Icon"},null,40,RRn),S("span",null,[e[5]||(e[5]=Me("Active: ")),S("span",NRn,J(i.currentBindingInfo.name),1)]),S("button",{onClick:e[1]||(e[1]=a=>i.handleSettings(t.$store.state.config.binding_name)),disabled:r.isLoadingAction||n.loading,class:"svg-button ml-2 disabled:opacity-50 disabled:cursor-not-allowed",title:"Configure Active Binding"},e[6]||(e[6]=[S("i",{"data-feather":"settings",class:"w-4 h-4"},null,-1)]),8,DRn),S("button",{onClick:e[2]||(e[2]=a=>i.handleReload(t.$store.state.config.binding_name)),disabled:r.isLoadingAction||n.loading,class:"svg-button ml-1 disabled:opacity-50 disabled:cursor-not-allowed",title:"Reload Active Binding"},e[7]||(e[7]=[S("i",{"data-feather":"refresh-cw",class:"w-4 h-4"},null,-1)]),8,IRn)])):(N(),H("div",kRn," No binding selected! "))]),e[13]||(e[13]=S("p",{class:"text-sm text-blue-600 dark:text-blue-400"}," Bindings are the engines that run the AI models. Select an installed binding to enable model selection and generation. ",-1)),S("div",HRn,[S("div",PRn,[e[9]||(e[9]=S("div",{class:"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none"},[S("i",{"data-feather":"search",class:"w-5 h-5 text-blue-400 dark:text-blue-500"})],-1)),Le(S("input",{type:"search","onUpdate:modelValue":e[3]||(e[3]=a=>r.searchTerm=a),placeholder:"Search bindings by name or author...",class:"search-input pl-10 w-full","aria-label":"Search bindings",disabled:r.isLoadingBindings||n.loading},null,8,$Rn),[[Je,r.searchTerm]])]),S("div",VRn,[e[11]||(e[11]=S("label",{for:"binding-sort",class:"sr-only"},"Sort bindings by",-1)),Le(S("select",{id:"binding-sort","onUpdate:modelValue":e[4]||(e[4]=a=>r.sortOption=a),class:"input w-full sm:w-auto","aria-label":"Sort bindings by",disabled:r.isLoadingBindings||n.loading},e[10]||(e[10]=[S("option",{value:"name"},"Sort by Name",-1),S("option",{value:"author"},"Sort by Author",-1),S("option",{value:"status"},"Sort by Status",-1)]),8,BRn),[[Dr,r.sortOption]])])]),r.isLoadingBindings?(N(),H("div",FRn,e[12]||(e[12]=[S("svg",{"aria-hidden":"true",role:"status",class:"w-8 h-8 text-blue-300 animate-spin dark:text-blue-600 fill-blue-600 dark:fill-blue-400",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1),S("span",{class:"ml-2 text-loading"},"Loading bindings...",-1)]))):i.sortedBindings.length===0?(N(),H("div",URn," No bindings found"+J(r.searchTerm?' matching "'+r.searchTerm+'"':"")+". ",1)):(N(),H("div",qRn,[(N(!0),H(xe,null,Pe(i.bindingsToDisplay,a=>(N(),ot(s,{key:a.folder,binding:a,selected:i.isBindingSelected(a),"is-processing":a.isProcessing,onSelect:i.handleSelect,onInstall:i.handleInstall,onUninstall:i.handleUninstall,onReinstall:i.handleReinstall,onSettings:i.handleSettingsFromEntry,onReloadBinding:i.handleReloadFromEntry},null,8,["binding","selected","is-processing","onSelect","onInstall","onUninstall","onReinstall","onSettings","onReloadBinding"]))),128))]))])}const HO=Ye(ARn,[["render",GRn],["__scopeId","data-v-62a84717"]]),Y1="/assets/logo-6TyToX4A.png",jRn={name:"InteractiveMenu",props:{title:{type:String,required:!1,default:"Menu"},icon:{type:String,required:!1,default:"feather:more-vertical"},commands:{type:Array,required:!0,default:()=>[]},force_position:{type:Number,required:!1,default:0},execute_cmd:{type:Function,required:!1},menuIconClass:{type:String,required:!1,default:""},selected_entry:{type:String,required:!1,default:null}},data(){return{isMenuOpen:!1,menuStyle:{top:"auto",bottom:"auto",left:"auto",right:"auto",transformOrigin:"top left"}}},methods:{updateFeatherIcons(){Se(()=>{Ce.replace({width:"1em",height:"1em","stroke-width":2})})},handleClickOutside(t){this.$refs.menuContainerRef&&!this.$refs.menuContainerRef.contains(t.target)&&this.closeMenu()},toggleMenu(){this.isMenuOpen?this.closeMenu():this.openMenu()},openMenu(){this.isMenuOpen=!0,Se(()=>{this.positionMenu(),this.updateFeatherIcons(),document.addEventListener("click",this.handleClickOutside,!0)})},closeMenu(){this.isMenuOpen=!1,document.removeEventListener("click",this.handleClickOutside,!0)},executeCommand(t){this.closeMenu(),typeof t.value=="function"?t.value():this.execute_cmd?this.execute_cmd(t):console.warn("InteractiveMenu: No action defined for command:",t.name)},positionMenu(){if(!this.isMenuOpen||!this.$refs.menuButtonRef||!this.$refs.menuRef)return;const t=this.$refs.menuButtonRef.getBoundingClientRect(),e=this.$refs.menuRef,n=e.style.visibility,o=e.style.display,r=e.style.position,i=e.style.top,s=e.style.left;e.style.visibility="hidden",e.style.position="fixed",e.style.top="-9999px",e.style.left="-9999px",e.style.display="block";const a=e.getBoundingClientRect();e.style.visibility=n,e.style.position=r,e.style.top=i,e.style.left=s,e.style.display=o;const l=window.innerWidth,c=window.innerHeight,u=8;let d={top:"auto",bottom:"auto",left:"auto",right:"auto",transformOrigin:""};const f=c-t.bottom-u,T=t.top-u,h=a.height;let g="below";this.force_position===1?g="above":this.force_position===2||f>=h?g="below":T>=h?g="above":g=T>f?"above":"below",g==="above"?(d.bottom="calc(100% + 4px)",d.top="auto",d.transformOrigin="bottom "):(d.top="calc(100% + 4px)",d.bottom="auto",d.transformOrigin="top "),l-t.left-u,t.right-u;const Q=a.width;let m="left-align";this.force_position===3?m="right-align":this.force_position===4?m="left-align":t.left+Q>l-u&&t.right-Q>u&&(m="right-align"),m==="right-align"?(d.right="0px",d.left="auto",d.transformOrigin+="right"):(d.left="0px",d.right="auto",d.transformOrigin+="left"),this.menuStyle=d}},mounted(){window.addEventListener("resize",this.positionMenu),this.updateFeatherIcons()},beforeUnmount(){window.removeEventListener("resize",this.positionMenu),document.removeEventListener("click",this.handleClickOutside,!0)}},zRn={class:"interactive-menu-container",ref:"menuContainerRef"},YRn=["title"],WRn=["src"],KRn=["data-feather"],ZRn={key:2,class:"interactive-menu-trigger-text"},XRn={key:3,"data-feather":"menu",class:"interactive-menu-trigger-icon"},JRn=["aria-labelledby"],eNn={class:"interactive-menu-list",role:"none"},tNn=["onClick","id"],nNn={class:"interactive-menu-item-checkmark-placeholder"},rNn={key:0,"data-feather":"check",class:"interactive-menu-item-checkmark-icon"},iNn={class:"interactive-menu-item-icon-container"},oNn=["src","alt"],sNn=["data-feather"],aNn={key:2,class:"interactive-menu-item-icon-text"},lNn={key:3,class:"interactive-menu-item-icon-placeholder"},cNn={class:"interactive-menu-item-name"};function uNn(t,e,n,o,r,i){return N(),H("div",zRn,[S("button",{onClick:e[0]||(e[0]=oe((...s)=>i.toggleMenu&&i.toggleMenu(...s),["prevent"])),title:n.title||"Open Menu",class:Ee(["interactive-menu-trigger",n.menuIconClass]),ref:"menuButtonRef",type:"button"},[_n(t.$slots,"trigger",{},()=>[n.icon&&!n.icon.includes("#")&&!n.icon.includes("feather:")?(N(),H("img",{key:0,src:n.icon,class:"interactive-menu-trigger-icon",alt:"Menu Icon"},null,8,WRn)):n.icon&&n.icon.includes("feather:")?(N(),H("i",{key:1,"data-feather":n.icon.split(":")[1],class:"interactive-menu-trigger-icon"},null,8,KRn)):n.icon&&n.icon.includes("#")?(N(),H("span",ZRn,J(n.icon.split("#")[1]),1)):(N(),H("i",XRn))],!0)],10,YRn),ne(Nr,{name:"interactive-menu-transition"},{default:Ge(()=>[r.isMenuOpen?(N(),H("div",{key:0,class:"interactive-menu-dropdown",style:an(r.menuStyle),ref:"menuRef",role:"menu","aria-orientation":"vertical","aria-labelledby":`menu-button-${t._uid}`},[S("ul",eNn,[(N(!0),H(xe,null,Pe(n.commands,(s,a)=>(N(),H("li",{key:a,onClick:oe(l=>i.executeCommand(s),["prevent"]),class:"interactive-menu-item group",role:"menuitem",tabindex:-1,id:`menu-item-${t._uid}-${a}`},[S("span",nNn,[n.selected_entry===s.name?(N(),H("i",rNn)):Z("",!0)]),S("span",iNn,[s.icon&&!s.icon.includes("#")&&!s.icon.includes("feather:")?(N(),H("img",{key:0,src:s.icon,alt:s.name,class:"interactive-menu-item-icon"},null,8,oNn)):s.icon&&s.icon.includes("feather:")?(N(),H("i",{key:1,"data-feather":s.icon.split(":")[1],class:"interactive-menu-item-icon"},null,8,sNn)):s.icon&&s.icon.includes("#")?(N(),H("span",aNn,J(s.icon.split("#")[1]),1)):(N(),H("span",lNn))]),S("span",cNn,J(s.name),1)],8,tNn))),128))])],12,JRn)):Z("",!0)]),_:1})],512)}const xh=Ye(jRn,[["render",uNn],["__scopeId","data-v-e42afcb4"]]),dNn={name:"ModelEntry",components:{InteractiveMenu:xh},props:{model:{type:Object,required:!0},isSelected:{type:Boolean,default:!1},isInstalled:{type:Boolean,default:!1},isProcessing:{type:Boolean,default:!1},progress:{type:Number,default:0},speed:{type:Number,default:0},total_size:{type:Number,default:0},downloaded_size:{type:Number,default:0},progressName:{type:String,default:"Processing..."}},emits:["select","install","uninstall","cancel-install","copy","copy-link"],data(){return{failedToLoad:!1,linkNotValid:!!this.model.error}},mounted(){Se(()=>{Ce.replace()})},updated(){Se(()=>{Ce.replace()})},methods:{formatDate(t){if(!t)return"N/A";try{const e=new Date(t);return isNaN(e.getTime())?"Invalid Date":e.toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})}catch(e){return console.error("Error formatting date:",e),"Invalid Date"}},formatFileSize(t){return G1(t)},getImgUrl(){var t;return((t=this.model)==null?void 0:t.icon)||Y1},defaultImg(t){this.failedToLoad=!0,t.target.src=Y1},handleClick(){if(this.isProcessing||!this.isInstalled||this.isSelected){console.log(`Click ignored: processing=${this.isProcessing}, installed=${this.isInstalled}, selected=${this.isSelected}`);return}console.log("Emitting select event for:",this.model.name),this.$emit("select",this.model)},handleInstallClick(){this.isProcessing||(console.log("Emitting install event for:",this.model.name),this.$emit("install",{model:this.model}))},handleUninstallClick(){this.isProcessing||!this.isInstalled||(console.log("Emitting uninstall event for:",this.model.name),this.$emit("uninstall",{model:this.model}))},handleCancelClick(){console.log("Emitting cancel-install event for:",this.model.name),this.$emit("cancel-install",{model:this.model})},handleCopyClick(){this.$emit("copy",{model:this.model})},handleCopyLinkClick(){this.$emit("copy-link",{model:this.model})},checkLinkValidity(){this.linkNotValid=!!this.model.error}},computed:{computedClasses(){const t=[];return this.isProcessing?t.push("opacity-70 pointer-events-none"):this.isSelected&&this.isInstalled?(t.push("border-[3px] border-blue-500 dark:border-blue-400 ring-2 ring-blue-300 dark:ring-blue-600 ring-offset-1 dark:ring-offset-gray-800"),t.push("bg-blue-50 dark:bg-blue-900/50"),t.push("cursor-default")):this.isInstalled&&!this.isSelected?(t.push("border-gray-200 dark:border-gray-700"),t.push("hover:border-blue-400 dark:hover:border-blue-600"),t.push("hover:bg-blue-50/50 dark:hover:bg-blue-900/20"),t.push("cursor-pointer")):this.isInstalled||(t.push("border-dashed border-gray-300 dark:border-gray-600"),t.push("opacity-80")),this.linkNotValid&&!this.isProcessing&&t.push("border-l-4 border-l-red-500"),t.join(" ")},isDisabled(){return this.isProcessing||!this.isInstalled},commandsList(){let t=[];return this.isInstalled?(t.push({name:"Uninstall",icon:"feather:trash-2",value:this.handleUninstallClick,disabled:this.isProcessing}),this.isSelected&&t.push({name:"Reload",icon:"feather:refresh-cw",value:this.handleClick,disabled:this.isProcessing})):t.push({name:"Install",icon:"feather:download",value:this.handleInstallClick,disabled:this.isProcessing||this.linkNotValid}),t.push({name:"Copy Info",icon:"feather:copy",value:this.handleCopyClick}),this.model.isCustomModel||t.push({name:"Copy Link",icon:"feather:clipboard",value:this.handleCopyLinkClick}),t},fileSize(){var n,o,r;const t=(o=(n=this.model)==null?void 0:n.variants)==null?void 0:o[0],e=(t==null?void 0:t.size)??((r=this.model)==null?void 0:r.size);return e?this.formatFileSize(e):"N/A"},speed_computed(){return this.formatFileSize(this.speed)+"/s"},total_size_computed(){return this.formatFileSize(this.total_size)},downloaded_size_computed(){return this.formatFileSize(this.downloaded_size)}},watch:{isProcessing(t,e){console.log(`Model ${this.model.name} processing state changed to: ${t}`),Se(()=>{Ce.replace()})},"model.error":function(t){this.linkNotValid=!!t}}},TNn=["title","aria-pressed","aria-disabled"],fNn={key:0},pNn={class:"flex flex-row"},hNn={class:"max-w-[300px] overflow-x-auto"},mNn={class:"flex gap-3 items-center grow"},gNn=["src"],_Nn={class:"flex-1 overflow-hidden"},QNn={class:"font-bold font-large text-lg truncate"},vNn={class:"flex items-center flex-row gap-2 my-1 mt-3"},yNn=["disabled"],bNn={key:1},ENn={class:"flex flex-row items-center gap-3 mb-2"},SNn=["src"],xNn={class:"font-bold font-large text-lg truncate flex-grow"},LNn={class:"flex items-center",title:"Hugging Face Model Card"},CNn=["href"],ANn={class:"flex items-center",title:"Approximate File Size"},wNn={class:"flex items-center",title:"Model License"},ONn={key:0,class:"flex items-center",title:"Quantizer Profile"},MNn=["href"],RNn={key:1,class:"flex items-center",title:"Original Model Creator Profile"},NNn=["href"],DNn={key:2,class:"flex items-center",title:"Last Update Date"},INn={key:3,class:"flex items-center",title:"Model Category"},kNn={key:4,class:"flex items-center",title:"Hugging Face Rank (May be outdated)"},HNn={key:2,class:"absolute z-10 inset-0 -m-px p-4 shadow-md text-center rounded-lg bg-white/80 dark:bg-gray-800/80 flex justify-center items-center backdrop-blur-sm"},PNn={class:"relative flex flex-col items-center justify-center w-full h-full"},$Nn={class:"absolute bottom-2 left-2 right-2 w-auto bg-white/70 dark:bg-gray-800/70 rounded-lg p-2 backdrop-blur-sm"},VNn={class:"flex justify-between mb-1 text-xs"},BNn={class:"font-medium text-blue-700 dark:text-blue-300"},FNn={key:0,class:"font-medium text-blue-700 dark:text-blue-300"},UNn={key:0,class:"w-full bg-gray-200 rounded-full h-1.5 dark:bg-gray-700 mb-1"},qNn={key:1,class:"flex justify-between text-xs text-blue-600 dark:text-blue-400"};function GNn(t,e,n,o,r,i){const s=ze("InteractiveMenu");return N(),H("div",{class:Ee(["relative items-start p-4 hover:bg-blue-100 dark:hover:bg-blue-900/30 rounded-lg mb-2 shadow-lg border-2 select-none transition-colors duration-150",i.computedClasses]),title:n.model.name,role:"button",tabindex:"0","aria-pressed":n.isSelected,"aria-disabled":i.isDisabled,onClick:e[9]||(e[9]=oe((...a)=>i.handleClick&&i.handleClick(...a),["prevent"])),onKeydown:[e[10]||(e[10]=Qn((...a)=>i.handleClick&&i.handleClick(...a),["enter"])),e[11]||(e[11]=Qn(oe((...a)=>i.handleClick&&i.handleClick(...a),["prevent"]),["space"]))]},[n.model.isCustomModel?(N(),H("div",fNn,[S("div",pNn,[S("div",hNn,[S("div",mNn,[S("img",{src:i.getImgUrl(),onError:e[0]||(e[0]=a=>i.defaultImg(a)),class:"w-10 h-10 rounded-lg object-cover flex-shrink-0"},null,40,gNn),S("div",_Nn,[S("h3",QNn,J(n.model.name),1)])])])]),S("div",vNn,[e[13]||(e[13]=S("div",{class:"flex grow items-center text-sm text-gray-600 dark:text-gray-400"},[S("i",{"data-feather":"hard-drive",class:"w-4 h-4 mr-1"}),Me(" Local Reference ")],-1)),S("div",null,[n.isInstalled?(N(),H("button",{key:0,title:"Remove Reference (Doesn't delete file)",type:"button",onClick:e[1]||(e[1]=oe((...a)=>i.handleUninstallClick&&i.handleUninstallClick(...a),["stop"])),disabled:n.isProcessing,class:"button-danger-sm"},e[12]||(e[12]=[S("i",{"data-feather":"trash-2",class:"w-4 h-4 mr-1"},null,-1),Me(" Remove ")]),8,yNn)):Z("",!0)])])])):Z("",!0),n.model.isCustomModel?Z("",!0):(N(),H("div",bNn,[S("div",ENn,[S("img",{ref:"imgElement",src:i.getImgUrl(),onError:e[2]||(e[2]=a=>i.defaultImg(a)),class:Ee(["w-10 h-10 rounded-lg object-cover flex-shrink-0",{grayscale:r.linkNotValid}])},null,42,SNn),S("h3",xNn,J(n.model.name),1),ne(s,{commands:i.commandsList,force_position:2,title:"Menu",onClick:e[3]||(e[3]=oe(()=>{},["stop"]))},null,8,["commands"])]),S("div",{class:Ee(["space-y-1 text-sm text-gray-700 dark:text-gray-300",{"opacity-60":r.linkNotValid}])},[S("div",LNn,[e[14]||(e[14]=S("i",{"data-feather":"link",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[15]||(e[15]=S("b",{class:"mr-1 flex-shrink-0"},"Card:",-1)),S("a",{href:"https://huggingface.co/"+n.model.quantizer+"/"+n.model.name,target:"_blank",onClick:e[4]||(e[4]=oe(()=>{},["stop"])),class:Ee(["truncate hover:text-blue-600 dark:hover:text-blue-400 duration-150 underline",{"text-red-500 pointer-events-none":r.linkNotValid}])},J(r.linkNotValid?"Link Invalid":`${n.model.quantizer}/${n.model.name}`),11,CNn)]),S("div",ANn,[e[16]||(e[16]=S("i",{"data-feather":"file",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[17]||(e[17]=S("b",{class:"mr-1"},"Size:",-1)),S("span",null,J(i.fileSize||"N/A"),1)]),S("div",wNn,[e[18]||(e[18]=S("i",{"data-feather":"key",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[19]||(e[19]=S("b",{class:"mr-1"},"License:",-1)),S("span",null,J(n.model.license||"N/A"),1)]),n.model.quantizer&&n.model.quantizer!=="None"&&n.model.type!=="transformers"?(N(),H("div",ONn,[e[20]||(e[20]=S("i",{"data-feather":"user",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[21]||(e[21]=S("b",{class:"mr-1"},"Quantizer:",-1)),S("a",{href:"https://huggingface.co/"+n.model.quantizer,target:"_blank",rel:"noopener noreferrer",onClick:e[5]||(e[5]=oe(()=>{},["stop"])),class:"truncate hover:text-blue-600 dark:hover:text-blue-400 duration-150 underline"},J(n.model.quantizer),9,MNn)])):Z("",!0),n.model.model_creator?(N(),H("div",RNn,[e[22]||(e[22]=S("i",{"data-feather":"users",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[23]||(e[23]=S("b",{class:"mr-1"},"Creator:",-1)),S("a",{href:n.model.model_creator_link,target:"_blank",rel:"noopener noreferrer",onClick:e[6]||(e[6]=oe(()=>{},["stop"])),class:"truncate hover:text-blue-600 dark:hover:text-blue-400 duration-150 underline"},J(n.model.model_creator),9,NNn)])):Z("",!0),n.model.last_commit_time?(N(),H("div",DNn,[e[24]||(e[24]=S("i",{"data-feather":"clock",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[25]||(e[25]=S("b",{class:"mr-1"},"Updated:",-1)),S("span",null,J(i.formatDate(n.model.last_commit_time)),1)])):Z("",!0),n.model.category?(N(),H("div",INn,[e[26]||(e[26]=S("i",{"data-feather":"grid",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[27]||(e[27]=S("b",{class:"mr-1"},"Category:",-1)),S("span",null,J(n.model.category),1)])):Z("",!0),n.model.rank?(N(),H("div",kNn,[e[28]||(e[28]=S("i",{"data-feather":"bar-chart-2",class:"w-4 h-4 mr-2 flex-shrink-0"},null,-1)),e[29]||(e[29]=S("b",{class:"mr-1"},"Rank:",-1)),S("a",{href:"https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard",target:"_blank",rel:"noopener noreferrer",onClick:e[7]||(e[7]=oe(()=>{},["stop"])),class:"hover:text-blue-600 dark:hover:text-blue-400 duration-150 underline"},J(n.model.rank),1)])):Z("",!0)],2)])),n.isProcessing?(N(),H("div",HNn,[S("div",PNn,[e[30]||(e[30]=S("div",{role:"status",class:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2"},[S("svg",{"aria-hidden":"true",class:"w-16 h-16 text-gray-300 animate-spin dark:text-gray-600 fill-blue-600",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})]),S("span",{class:"sr-only"},"Processing...")],-1)),S("div",$Nn,[S("div",VNn,[S("span",BNn,J(n.progressName),1),n.progress>0?(N(),H("span",FNn,J(Math.floor(n.progress))+"%",1)):Z("",!0)]),n.progress>0?(N(),H("div",UNn,[S("div",{class:"bg-blue-600 h-1.5 rounded-full",style:an({width:n.progress+"%"})},null,4)])):Z("",!0),n.progress>0&&n.total_size>0?(N(),H("div",qNn,[S("span",null,J(i.downloaded_size_computed)+"/"+J(i.total_size_computed),1),S("span",null,J(i.speed_computed)+"/s",1)])):Z("",!0),S("button",{onClick:e[8]||(e[8]=oe((...a)=>i.handleCancelClick&&i.handleCancelClick(...a),["stop"])),type:"button",title:"Cancel Operation",class:"button-danger-sm w-full mt-2 text-xs"}," Cancel ")])])])):Z("",!0)],42,TNn)}const jNn=Ye(dNn,[["render",GNn],["__scopeId","data-v-1f7c2197"]]),zNn={props:{show:{type:Boolean,default:!1},can_remove:{type:Boolean,default:!1},title:{type:String,default:"Select an option"},choices:{type:Array,required:!0}},data(){return{selectedChoice:null,showInput:!1,newFilename:""}},methods:{displayName(t){return typeof t=="string"?t:t&&t.name?t.name:""},selectChoice(t){this.selectedChoice=t,this.$emit("choice-selected",t)},closeDialog(){this.$emit("close-dialog")},validateChoice(){this.$emit("choice-validated",this.selectedChoice)},formatSize(t){const e=["bytes","KB","MB","GB"];let n=0;for(;t>=1024&&n[n.show?(N(),H("div",YNn,[S("div",WNn,[S("h2",KNn,[e[5]||(e[5]=S("svg",{class:"w-6 h-6 mr-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"})],-1)),Me(" "+J(n.title),1)]),S("div",ZNn,[S("ul",null,[(N(!0),H(xe,null,Pe(n.choices,(s,a)=>(N(),H("li",{key:a,class:"py-2 px-4 hover:bg-gray-200 dark:hover:bg-gray-600 transition duration-150 ease-in-out"},[S("div",XNn,[S("div",JNn,[s.isEditing?Le((N(),H("input",{key:1,"onUpdate:modelValue":l=>s.editName=l,onBlur:l=>i.finishEditing(s),onKeyup:Qn(l=>i.finishEditing(s),["enter"]),class:"bg-white dark:bg-gray-700 border border-gray-300 dark:border-gray-600 rounded px-2 py-1 text-sm",autofocus:""},null,40,tDn)),[[Je,s.editName]]):(N(),H("span",{key:0,onClick:l=>i.selectChoice(s),class:Ee([{"font-semibold":s===r.selectedChoice},"text-gray-800 dark:text-white cursor-pointer"])},J(i.displayName(s)),11,eDn)),s.size?(N(),H("span",nDn,J(i.formatSize(s.size)),1)):Z("",!0)]),S("div",rDn,[S("button",{onClick:l=>i.editChoice(s),class:"text-blue-500 hover:text-blue-600 mr-2"},e[6]||(e[6]=[S("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z"})],-1)]),8,iDn),n.can_remove?(N(),H("button",{key:0,onClick:l=>i.removeChoice(s,a),class:"text-red-500 hover:text-red-600"},e[7]||(e[7]=[S("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)]),8,oDn)):Z("",!0)])])]))),128))])]),r.showInput?(N(),H("div",sDn,[Le(S("input",{"onUpdate:modelValue":e[0]||(e[0]=s=>r.newFilename=s),placeholder:"Enter a filename",class:"border border-gray-300 dark:border-gray-600 p-2 rounded-lg w-full mb-2 bg-white dark:bg-gray-700 text-gray-800 dark:text-white"},null,512),[[Je,r.newFilename]]),S("button",{onClick:e[1]||(e[1]=(...s)=>i.addNewFilename&&i.addNewFilename(...s)),class:"bg-blue-500 hover:bg-blue-600 text-white font-bold py-2 px-4 rounded-lg transition duration-300"}," Add ")])):Z("",!0),S("div",aDn,[S("button",{onClick:e[2]||(e[2]=(...s)=>i.closeDialog&&i.closeDialog(...s)),class:"bg-gray-300 hover:bg-gray-400 text-gray-800 font-bold py-2 px-4 rounded-lg transition duration-300"}," Cancel "),S("button",{onClick:e[3]||(e[3]=(...s)=>i.validateChoice&&i.validateChoice(...s)),disabled:!r.selectedChoice,class:Ee([{"bg-blue-500 hover:bg-blue-600":r.selectedChoice,"bg-gray-400 cursor-not-allowed":!r.selectedChoice},"text-white font-bold py-2 px-4 rounded-lg transition duration-300"])}," Validate ",10,lDn),S("button",{onClick:e[4]||(e[4]=(...s)=>i.toggleInput&&i.toggleInput(...s)),class:"bg-green-500 hover:bg-green-600 text-white font-bold py-2 px-4 rounded-lg transition duration-300"}," Add New ")])])])):Z("",!0)]),_:1})}const Lh=Ye(zNn,[["render",cDn],["__scopeId","data-v-f43216be"]]),uDn={name:"ModelsZoo",components:{ModelEntry:jNn,ChoiceDialog:Lh},props:{api_post_req:{type:Function,required:!0},api_get_req:{type:Function,required:!0},show_toast:{type:Function,required:!0},show_yes_no_dialog:{type:Function,required:!0},client_id:{type:String,required:!0}},emits:["settings-changed"],data(){return{allModels:[],filteredModels:[],pagedModels:[],isLoadingModels:!1,isSearching:!1,searchTerm:"",sortOption:"rank",showInstalledOnly:!1,referencePath:"",modelUrl:"",isDownloading:!1,itemsPerPage:15,currentPage:1,searchDebounceTimer:null,observer:null,downloadProgress:{visible:!1,name:"",progress:0,speed:0,total_size:0,downloaded_size:0,details:null},variantSelectionDialog:{visible:!1,title:"Select Model Variant",choices:[],modelToInstall:null,selectedVariant:null},defaultIcon:Y1}},computed:{currentBindingNameComputed(){const t=this.$store.state.config.binding_name;if(!t)return"None Selected";const e=(this.$store.state.bindingsZoo||[]).find(n=>n.folder===t);return e?e.name:t},currentModelInfoComputed(){const t=this.$store.state.config.model_name;if(!t||this.allModels.length===0)return null;const e=this.allModels.find(n=>n.name===t);return e?{name:e.name,icon:e.icon||this.defaultIcon}:null},hasMoreModelsToLoad(){return this.pagedModels.length{console.log(`Store refresh dispatches initiated for ${t}. Waiting for store watchers.`)}).catch(n=>{console.error(`Error dispatching store refresh for binding ${t}:`,n),this.show_toast(`Failed to load models for binding ${t}.`,5,!1),this.isLoadingModels=!1})):(console.log("Binding removed, local models cleared."),this.isLoadingModels=!1))}},"$store.state.modelsArr":{handler(){console.log("Store installedModels changed, reprocessing."),this.processAndCombineModels()},deep:!1},allModels:{handler(t,e){t!==e&&t.length>0?(console.log("Processed allModels changed, applying filters and reloading page 1."),this.currentPage=1,this.pagedModels=[],this.applyFiltersAndSort(),this.loadMoreModels()):t.length===0&&e.length>0?(console.log("Processed allModels cleared, resetting filters and paged models."),this.filteredModels=[],this.pagedModels=[],this.currentPage=1):t===e&&t.length>0&&(console.log("allModels reference same, but potentially updated internal state. Re-applying filters."),this.currentPage=1,this.pagedModels=[],this.applyFiltersAndSort(),this.loadMoreModels())},deep:!0},watchSources(t,e){(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2])&&(console.log("Filter/Sort/Search changed, resetting page and applying filters."),this.currentPage=1,this.pagedModels=[],this.applyFiltersAndSort(),this.loadMoreModels())}},methods:{async processAndCombineModels(){var i;this.isLoadingModels=!0,console.log("Processing models from store...");const t=this.$store.state.modelsZoo,e=new Set(this.$store.state.modelsArr),n=s=>{let a=s.id||s.name||s.filename||"unknown";return s.quantizer&&(a+=`-${s.quantizer}`),s.variants&&s.variants.length>0&&s.variants[0].name?a+=`-${s.variants[0].name}`:s.filename&&(a+=`-${s.filename}`),a},o=(i=this.downloadProgress.details)==null?void 0:i.model_id,r=(t||[]).map(s=>{const a=n(s);return{name:s.name,author:s.author,rank:s.rank,quantizer:s.quantizer,description:s.description,license:s.license,last_commit_time:s.last_commit_time,variants:s.variants?[...s.variants]:[],filename:s.filename,path:s.path,type:s.type,icon:s.icon||this.defaultIcon,isInstalled:e.has(s.name)||s.variants&&s.variants.some(l=>e.has(l.name)),isProcessing:o===a&&this.isDownloading||!1,id:a}});this.$store.state.modelsArr.forEach(s=>{if(!r.some(l=>l.name===s||l.variants&&l.variants.some(c=>c.name===s))){const l=s;r.push({name:s,isInstalled:!0,isProcessing:o===l&&this.isDownloading||!1,isCustomModel:!0,icon:this.defaultIcon,id:l,rank:-1,author:"Local"})}}),this.allModels=r,this.$store.state.config.binding_name?!this.isDownloading&&this.allModels.length>0&&(this.isLoadingModels=!1):this.isLoadingModels=!1,console.log(`Processed ${this.allModels.length} total models. Loading state: ${this.isLoadingModels}`)},applyFiltersAndSort(){this.isSearching=!0,console.time("FilterSortModels");let t=[...this.allModels];if(this.showInstalledOnly&&(t=t.filter(e=>e.isInstalled)),this.searchTerm){const e=this.searchTerm.toLowerCase();t=t.filter(n=>{var o,r,i,s,a;return((o=n.name)==null?void 0:o.toLowerCase().includes(e))||((r=n.author)==null?void 0:r.toLowerCase().includes(e))||((i=n.quantizer)==null?void 0:i.toLowerCase().includes(e))||((s=n.description)==null?void 0:s.toLowerCase().includes(e))||((a=n.license)==null?void 0:a.toLowerCase().includes(e))})}t.sort((e,n)=>{if(e.isInstalled&&!n.isInstalled)return-1;if(!e.isInstalled&&n.isInstalled)return 1;switch(this.sortOption){case"rank":return(n.rank??-1/0)-(e.rank??-1/0);case"name":return(e.name||"").localeCompare(n.name||"");case"last_commit_time":{const o=e.last_commit_time?new Date(e.last_commit_time):null,r=n.last_commit_time?new Date(n.last_commit_time):null;return o&&r?r-o:o?-1:r?1:0}case"quantizer":return(e.quantizer||"").localeCompare(n.quantizer||"");case"license":return(e.license||"").localeCompare(n.license||"");default:return 0}}),this.filteredModels=t,console.timeEnd("FilterSortModels"),this.isSearching=!1,console.log(`Filtered/Sorted models: ${this.filteredModels.length}`)},debounceSearch(){this.isSearching=!0,clearTimeout(this.searchDebounceTimer),this.searchDebounceTimer=setTimeout(()=>{},500)},loadMoreModels(){if(this.isLoadingModels||this.isSearching||!this.hasMoreModelsToLoad)return;console.log(`Loading page ${this.currentPage} for models`);const t=(this.currentPage-1)*this.itemsPerPage,e=t+this.itemsPerPage,n=this.filteredModels.slice(t,e),o=n.filter(r=>!this.pagedModels.some(i=>(i.id||i.name)===(r.id||r.name)));o.length>0?(this.pagedModels.push(...o),this.currentPage++,Se(Ce.replace)):n.length===0&&this.hasMoreModelsToLoad&&console.warn("Load more triggered but no new items found in slice.")},handleSelect(t){if(console.log("Model selected in child:",t.name),this.isDownloading||this.isLoadingModels){this.show_toast("Please wait for the current operation to finish.",3,!1);return}if(!t.isInstalled){this.show_toast(`Model "${t.name}" is not installed.`,3,!1);return}this.$store.state.config.model_name!==t.name&&(this.$store.state.config.model_name=t.name,this.show_toast(`Selecting model: ${t.name}...`,2,!0),this.isLoadingModels=!0,this.$emit("settings-changed"),setTimeout(()=>{this.isLoadingModels=!1,this.$store.state.config.model_name===t.name?(console.log("Model selection confirmed in store."),Se(Ce.replace)):console.warn("Model selection change not reflected in store after emit and delay.")},500))},handleInstall(t){const e=t.model;console.log("Install requested for:",e.name);const n=e.variants||[];if(e.isInstalled){this.show_toast(`Model "${e.name}" is already installed.`,3,!1);return}if(this.isDownloading){this.show_toast("Another operation is already in progress.",3,!1);return}if(n.length>0)this.variantSelectionDialog.choices=n.map(o=>({...o,id:o.name||`variant-${Math.random().toString(36).substring(7)}`,label:`${o.name||"Unknown Variant"} (${G1(o.size||0)})`})),this.variantSelectionDialog.modelToInstall=e,this.variantSelectionDialog.title=`Select variant for ${e.name}`,this.variantSelectionDialog.visible=!0;else{const o=e.filename||e.name,r=e.quantizer||"Unknown",i=e.path||`https://huggingface.co/${e.author||r}/${e.name}/resolve/main/${o}`;this.startDownload(e,i,o)}},handleVariantSelected(t){this.variantSelectionDialog.selectedVariant=t},handleVariantValidated(t){if(!t||!this.variantSelectionDialog.modelToInstall){this.closeVariantDialog();return}const e=this.variantSelectionDialog.modelToInstall,n=t,o=e.quantizer||"Unknown",r=n.path||`https://huggingface.co/${e.author||o}/${e.name}/resolve/main/${n.name}`;this.startDownload(e,r,n.name),this.closeVariantDialog()},closeVariantDialog(){this.variantSelectionDialog.visible=!1,this.variantSelectionDialog.choices=[],this.variantSelectionDialog.modelToInstall=null,this.variantSelectionDialog.selectedVariant=null},startDownload(t,e,n){const o=t.id||t.name;if(console.log(`Starting download: ${t.name}, Variant: ${n}, Path: ${e}, ID: ${o}`),this.isDownloading){this.show_toast("Another operation is in progress.",3,!1);return}const r=this.$store.state.config.binding_name;if(!r){this.show_toast("No binding selected. Cannot install model.",4,!1);return}this.setModelProcessing(o,!0),this.isDownloading=!0,this.isLoadingModels=!0,this.downloadProgress={visible:!0,name:`Downloading ${t.name}${n!==t.name?` (${n})`:""}`,progress:0,speed:0,total_size:0,downloaded_size:0,details:{model_name:t.name,binding_folder:r,model_url:e,variant_name:n,model_id:o,type:t.type||"gguf"}},Ze.emit("install_model",{path:e,name:t.name,variant_name:n,type:t.type||"gguf",binding:r,model_id:o}),console.log("Install command sent via socket.")},async handleUninstall(t){const e=t.model,n=e.id||e.name;if(this.isDownloading){this.show_toast("Another operation is in progress.",3,!1);return}if(!await this.show_yes_no_dialog(`Uninstall model "${e.name}"?`,"Uninstall","Cancel"))return;const r=this.$store.state.config.binding_name;if(!r){this.show_toast("No binding selected. Cannot uninstall model.",4,!1);return}console.log(`Starting uninstall for: ${e.name}, ID: ${n}`),this.setModelProcessing(n,!0),this.isDownloading=!0,this.isLoadingModels=!0,this.downloadProgress={visible:!0,name:`Uninstalling ${e.name}...`,progress:50,speed:0,total_size:0,downloaded_size:0,details:{model_id:n,model_name:e.name,operation:"uninstall",binding_folder:r}},Ze.emit("uninstall_model",{name:e.name,type:e.type||"gguf",binding:r,model_id:n}),console.log("Uninstall command sent via socket.")},handleCancelInstall(t){const e=t!=null&&t.model?{model_name:t.model.name,binding_folder:this.$store.state.config.binding_name,model_url:t.model.path||"unknown",variant_name:t.model.filename||t.model.name,model_id:t.model.id||t.model.name}:this.downloadProgress.details||t;if(!e||!e.model_id){console.warn("Cancel requested but no details found or missing ID."),this.downloadProgress.visible&&this.resetDownloadState(null,!1);return}console.log("Cancelling operation for:",e);const n=e.binding_folder||this.$store.state.config.binding_name;if(!n){console.error("Cannot cancel, binding folder unknown."),this.show_toast("Cannot cancel operation: Binding context missing.",4,!1);return}Ze.emit("cancel_install",{model_name:e.model_name,binding_folder:n,model_url:e.model_url,variant_name:e.variant_name,model_id:e.model_id})},handleCopy(t){},handleCopyLink(t){},async createReference(){if(!this.referencePath){this.show_toast("Please enter a path.",3,!1);return}if(this.isDownloading){this.show_toast("Another operation is in progress.",3,!1);return}const t=this.$store.state.config.binding_name;if(!t){this.show_toast("No binding selected. Cannot add reference.",4,!1);return}this.isLoadingModels=!0;try{const e=await this.api_post_req("add_reference_to_local_model",{path:this.referencePath,binding:t});e.status?(this.show_toast("Reference created.",4,!0),this.referencePath="",this.$store.dispatch("refreshModels",{binding:t})):(this.show_toast(`Couldn't create reference: ${e.error||"Unknown"}`,4,!1),this.isLoadingModels=!1)}catch(e){this.show_toast(`Error: ${e.message}`,4,!1),this.isLoadingModels=!1}},installFromInput(){if(!this.modelUrl){this.show_toast("Enter URL or HF ID.",3,!1);return}if(this.isDownloading){this.show_toast("Another operation is in progress.",3,!1);return}if(!this.$store.state.config.binding_name){this.show_toast("No binding selected. Cannot install model.",4,!1);return}let e=this.modelUrl.trim(),n="unknown_model",o="unknown_variant",r="gguf",i="Unknown",s=e;const a=/^([a-zA-Z0-9\-_.]+)\/([a-zA-Z0-9\-_.]+)(\/resolve\/main\/)?([a-zA-Z0-9\-_.]+\.(gguf|bin|safetensors))?$/,l=e.match(a),c=/^([a-zA-Z0-9\-_.]+)\/([a-zA-Z0-9\-_.]+)$/,u=e.match(c);if(l)i=l[1],n=l[2],o=l[4]||n,s=`${i}/${n}`,e.startsWith("http")||(e=`https://huggingface.co/${i}/${n}`+(l[3]?l[3]:"/resolve/main/")+o),r=l[5]||"gguf",this.show_toast(`Detected HF Model: ${s}, File: ${o}`,2,!0);else if(u&&!e.startsWith("http"))i=u[1],n=u[2],o=n,s=`${i}/${n}`,e=`https://huggingface.co/${i}/${n}`,this.show_toast(`Detected HF Repo ID: ${s}. Attempting download (may require variant selection).`,2,!0);else if(e.startsWith("http"))try{const f=new URL(e),T=f.pathname.split("/").filter(h=>h);T.length>0?(o=T[T.length-1],n=o.split(".")[0],f.hostname==="huggingface.co"&&T.length>=2?(i=T[0],n=T[1],s=`${i}/${n}`):s=n,o.toLowerCase().endsWith(".safetensors")?r="safetensors":o.toLowerCase().endsWith(".bin")&&(r="bin")):(n=f.hostname,o=n,s=n)}catch{this.show_toast("Invalid URL.",4,!1);return}else{this.show_toast("Invalid input. Use URL or HF ID (e.g., TheBloke/Llama-2-7B-GGUF).",4,!1);return}const d={name:n,author:i,type:r,id:s,filename:o,path:e};this.startDownload(d,e,o),this.modelUrl=""},imgPlaceholder(t){t.target.src=this.defaultIcon},setModelProcessing(t,e){const n=this.allModels.findIndex(o=>(o.id||o.name)===t);if(n!==-1){if(this.allModels[n].isProcessing!==e){const o={...this.allModels[n],isProcessing:e},r=[...this.allModels];r[n]=o,this.allModels=r,console.log(`Set processing ${e} for ${t}`)}}else console.warn(`setModelProcessing: Model with ID ${t} not found in allModels.`)},resetDownloadState(t=null,e=!1){(!t||this.downloadProgress.details&&this.downloadProgress.details.model_id===t)&&(this.downloadProgress.visible=!1,this.downloadProgress.details=null,this.isDownloading=!1),t&&this.setModelProcessing(t,!1),!this.isDownloading&&(!this.$store.state.config.binding_name||this.allModels.length>0)&&(this.isLoadingModels=!1),console.log(`Reset download state. Global loading: ${this.isLoadingModels}`)},installProgressListener(t){var o,r,i;console.log("Socket install_progress received:",t);const e=t.model_id||t.model_name;if(!e){console.error("Progress msg missing ID:",t);return}const n=(o=this.downloadProgress.details)==null?void 0:o.model_id;if(this.isDownloading&&e!==n){console.log(`Ignoring progress for ${e}, currently processing ${n}`);return}switch(!this.isDownloading&&(t.status==="progress"||t.status==="downloading")&&console.warn(`Received progress for ${e} but not in downloading state.`),t.status){case"progress":case"downloading":this.isLoadingModels=!0,this.downloadProgress.visible||(this.downloadProgress.visible=!0),this.downloadProgress.details||(this.downloadProgress.details={model_id:e}),this.downloadProgress.name=t.message||`Processing ${t.model_name||e}...`,this.downloadProgress.progress=t.progress||0,this.downloadProgress.speed=t.speed||0,this.downloadProgress.total_size=t.total_size||0,this.downloadProgress.downloaded_size=t.downloaded_size||0,this.setModelProcessing(e,!0);break;case"succeeded":{const s=t.operation||(((r=this.downloadProgress.details)==null?void 0:r.operation)==="uninstall"?"uninstall":"install");this.show_toast(`"${t.model_name||e}" ${s} succeeded!`,4,!0),this.resetDownloadState(e,!0),this.$store.dispatch("refreshModels",{binding:this.$store.state.config.binding_name});break}case"failed":case"cancelled":{const s=t.operation||((i=this.downloadProgress.details)==null?void 0:i.operation)||"operation";this.show_toast(`"${t.model_name||e}" ${s} ${t.status}: ${t.error||"Unknown reason"}`,5,!1),this.resetDownloadState(e,!1);break}default:console.warn("Unknown progress status:",t.status)}},setupIntersectionObserver(){},destroyIntersectionObserver(){}},async mounted(){console.log("updated"),await this.$store.dispatch("refreshModelsZoo"),await this.$store.dispatch("refreshModels"),this.processAndCombineModels(),Ze.on("install_progress",this.installProgressListener),Se(()=>{Ce.replace(),this.setupIntersectionObserver()}),this.$store.state.config.binding_name&&this.allModels.length===0&&!this.isLoadingModels&&(console.log("Mounted with binding but no models, triggering initial load check."),this.isLoadingModels=!0,Promise.all([this.$store.dispatch("refreshModelsZoo",{binding:this.$store.state.config.binding_name}),this.$store.dispatch("refreshModels",{binding:this.$store.state.config.binding_name})]).catch(t=>{console.error("Error dispatching initial store refresh:",t),this.show_toast(`Failed initial load for ${this.$store.state.config.binding_name}.`,5,!1),this.isLoadingModels=!1}))},unmounted(){Ze.off("install_progress",this.installProgressListener),this.destroyIntersectionObserver(),clearTimeout(this.searchDebounceTimer)},async updated(){Se(()=>{Ce.replace(),this.$refs.loadMoreTrigger&&!this.observer?this.setupIntersectionObserver():!this.$refs.loadMoreTrigger&&this.observer&&this.destroyIntersectionObserver()})}},dDn={class:"user-settings-panel space-y-6"},TDn={class:"flex flex-col sm:flex-row justify-between items-start sm:items-center border-b border-blue-300 dark:border-blue-600 pb-3 mb-4"},fDn={key:0,class:"flex items-center gap-2 text-sm font-medium p-2 bg-blue-100 dark:bg-blue-800/50 rounded-md border border-blue-300 dark:border-blue-600 shrink-0 text-blue-700 dark:text-blue-200"},pDn=["src"],hDn={class:"font-semibold"},mDn={key:1,class:"text-sm font-medium text-orange-600 dark:text-orange-400 p-2 bg-orange-100 dark:bg-orange-900/30 rounded-md border border-orange-300 dark:border-orange-600 shrink-0"},gDn={key:2,class:"text-sm font-medium text-red-600 dark:text-red-400 p-2 bg-red-100 dark:bg-red-900/30 rounded-md border border-red-300 dark:border-red-600 shrink-0"},_Dn={class:"text-sm text-blue-600 dark:text-blue-400"},QDn={class:"font-semibold"},vDn={key:0,class:"p-3 text-center text-orange-600 dark:text-orange-400 bg-orange-100 dark:bg-orange-900/30 rounded-md border border-orange-300 dark:border-orange-600"},yDn={class:"grid grid-cols-1 md:grid-cols-3 gap-4 mb-4 items-center"},bDn={class:"relative md:col-span-2"},EDn={key:0,class:"absolute inset-y-0 right-0 pr-3 flex items-center"},SDn={class:"flex items-center space-x-2"},xDn={for:"model-filter-installed",class:"flex items-center space-x-1 cursor-pointer text-sm label"},LDn={key:1,class:"flex justify-center items-center p-10 text-loading"},CDn={key:2,class:"text-center text-blue-500 dark:text-blue-400 py-10"},ADn={key:3,class:"text-center text-blue-500 dark:text-blue-400 py-10"},wDn={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",ref:"scrollContainer"},ODn={ref:"loadMoreTrigger",class:"h-10"},MDn={key:0,class:"text-center text-blue-500 dark:text-blue-400 py-4"},RDn={class:"pt-6 border-t border-blue-200 dark:border-blue-700 mt-6"},NDn={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},DDn={class:"flex"},IDn={class:"flex"},kDn=["disabled"],HDn={key:0,class:"mt-4 p-3 bg-blue-100 dark:bg-blue-900/30 border border-blue-200 dark:border-blue-700 rounded-md"},PDn={class:"flex justify-between items-center mb-1"},$Dn={class:"text-sm font-medium text-blue-700 dark:text-blue-300"},VDn={class:"text-xs font-medium text-progress"},BDn={class:"animated-progressbar-bg h-1.5"},FDn={class:"flex justify-between items-center mt-1 text-xs text-progress"};function UDn(t,e,n,o,r,i){const s=ze("ModelEntry"),a=ze("ChoiceDialog");return N(),H("div",dDn,[S("div",TDn,[e[11]||(e[11]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 mb-2 sm:mb-0"}," Models Zoo ",-1)),i.currentModelInfoComputed?(N(),H("div",fDn,[S("img",{src:i.currentModelInfoComputed.icon,onError:e[0]||(e[0]=(...l)=>i.imgPlaceholder&&i.imgPlaceholder(...l)),class:"w-6 h-6 rounded-lg object-cover flex-shrink-0",alt:"Current Model Icon"},null,40,pDn),S("span",null,[e[10]||(e[10]=Me("Active: ")),S("span",hDn,J(i.currentModelInfoComputed.name),1)])])):t.$store.state.config.binding_name?(N(),H("div",gDn," No model selected! ")):(N(),H("div",mDn," Select a Binding first! "))]),S("p",_Dn,[e[12]||(e[12]=Me(" Select a model compatible with your chosen binding (")),S("span",QDn,J(i.currentBindingNameComputed||"None Selected"),1),e[13]||(e[13]=Me("). Installed models are shown first. Models may require specific variants (e.g., GGUF, GPTQ) depending on the binding. "))]),t.$store.state.config.binding_name?Z("",!0):(N(),H("div",vDn," Please select a Binding from the 'Bindings' section to see available models. ")),S("div",yDn,[S("div",bDn,[e[15]||(e[15]=S("div",{class:"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none"},[S("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"w-5 h-5 text-blue-400 dark:text-blue-500 feather feather-search"},[S("circle",{cx:"11",cy:"11",r:"8"}),S("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"})])],-1)),Le(S("input",{type:"search","onUpdate:modelValue":e[1]||(e[1]=l=>r.searchTerm=l),placeholder:"Search models by name, author, quantizer, description...",class:"input search-input pl-10 w-full",onInput:e[2]||(e[2]=(...l)=>i.debounceSearch&&i.debounceSearch(...l))},null,544),[[Je,r.searchTerm]]),r.isSearching?(N(),H("div",EDn,e[14]||(e[14]=[S("svg",{"aria-hidden":"true",class:"w-5 h-5 text-blue-400 animate-spin dark:text-blue-500 fill-blue-600",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Me(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1)]))):Z("",!0)]),S("div",SDn,[S("label",xDn,[Le(S("input",{type:"checkbox",id:"model-filter-installed","onUpdate:modelValue":e[3]||(e[3]=l=>r.showInstalledOnly=l),class:"rounded text-blue-600 focus:ring-blue-500 border-blue-300 dark:border-blue-600 bg-blue-100 dark:bg-blue-700 focus:ring-offset-blue-100 dark:focus:ring-offset-blue-800"},null,512),[[vl,r.showInstalledOnly]]),e[16]||(e[16]=S("span",null,"Installed Only",-1))])]),S("div",null,[e[18]||(e[18]=S("label",{for:"model-sort",class:"sr-only"},"Sort models by",-1)),Le(S("select",{id:"model-sort","onUpdate:modelValue":e[4]||(e[4]=l=>r.sortOption=l),class:"input"},e[17]||(e[17]=[tr('',5)]),512),[[Dr,r.sortOption]])])]),r.isLoadingModels?(N(),H("div",LDn,e[19]||(e[19]=[S("svg",{"aria-hidden":"true",class:"w-8 h-8 mr-2 text-blue-300 animate-spin dark:text-blue-600 fill-blue-600",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Me(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1),S("span",null,"Loading models...",-1)]))):r.pagedModels.length===0&&r.filteredModels.length>0?(N(),H("div",CDn," No models found matching filters"+J(r.searchTerm?' and search "'+r.searchTerm+'"':"")+". ",1)):r.allModels.length===0&&!r.isLoadingModels&&t.$store.state.config.binding_name?(N(),H("div",ADn," No models available for the selected binding. Try adding a reference or downloading below. ")):Z("",!0),S("div",wDn,[(N(!0),H(xe,null,Pe(r.pagedModels,l=>{var c,u,d,f,T;return N(),ot(s,{key:l.id||l.name,model:l,"is-selected":t.$store.state.config.model_name===l.name,"is-installed":l.isInstalled,"is-processing":l.isProcessing,progress:((c=r.downloadProgress.details)==null?void 0:c.model_id)===(l.id||l.name)?r.downloadProgress.progress:0,speed:((u=r.downloadProgress.details)==null?void 0:u.model_id)===(l.id||l.name)?r.downloadProgress.speed:0,total_size:((d=r.downloadProgress.details)==null?void 0:d.model_id)===(l.id||l.name)?r.downloadProgress.total_size:0,downloaded_size:((f=r.downloadProgress.details)==null?void 0:f.model_id)===(l.id||l.name)?r.downloadProgress.downloaded_size:0,"progress-name":((T=r.downloadProgress.details)==null?void 0:T.model_id)===(l.id||l.name)?r.downloadProgress.name:"",onSelect:i.handleSelect,onInstall:i.handleInstall,onUninstall:i.handleUninstall,onCancelInstall:i.handleCancelInstall,onCopy:i.handleCopy,onCopyLink:i.handleCopyLink},null,8,["model","is-selected","is-installed","is-processing","progress","speed","total_size","downloaded_size","progress-name","onSelect","onInstall","onUninstall","onCancelInstall","onCopy","onCopyLink"])}),128))],512),S("div",ODn,[i.hasMoreModelsToLoad&&!r.isLoadingModels?(N(),H("div",MDn," Loading more models... ")):Z("",!0)],512),S("section",RDn,[e[25]||(e[25]=S("h3",{class:"text-lg font-medium text-blue-700 dark:text-blue-300 mb-3"},"Add Model",-1)),S("div",NDn,[S("div",null,[e[20]||(e[20]=S("label",{for:"reference_path",class:"label mb-1"},"Add Reference to Local Model File/Folder",-1)),S("div",DDn,[Le(S("input",{type:"text",id:"reference_path","onUpdate:modelValue":e[5]||(e[5]=l=>r.referencePath=l),class:"input input-sm rounded-r-none flex-grow",placeholder:"Enter full path to model file or folder..."},null,512),[[Je,r.referencePath]]),S("button",{onClick:e[6]||(e[6]=(...l)=>i.createReference&&i.createReference(...l)),class:"btn btn-primary btn-sm rounded-l-none flex-shrink-0",title:"Add Reference"},"Add")]),e[21]||(e[21]=S("p",{class:"text-xs text-blue-500 dark:text-blue-400 mt-1"},"Creates a link without copying the model. Binding must support references.",-1))]),S("div",null,[e[23]||(e[23]=S("label",{for:"model_url",class:"label mb-1"},"Download Model from URL or Hugging Face ID",-1)),S("div",IDn,[Le(S("input",{type:"text",id:"model_url","onUpdate:modelValue":e[7]||(e[7]=l=>r.modelUrl=l),class:"input input-sm rounded-r-none flex-grow",placeholder:"Enter URL or HF ID (e.g., TheBloke/Llama-2-7B-GGUF)..."},null,512),[[Je,r.modelUrl]]),S("button",{onClick:e[8]||(e[8]=(...l)=>i.installFromInput&&i.installFromInput(...l)),class:"btn btn-success btn-sm rounded-l-none flex-shrink-0",title:"Download and Install",disabled:r.isDownloading},[(N(),H("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:Ee(["w-4 h-4",r.isDownloading?"animate-spin feather feather-loader":"feather feather-download"])},e[22]||(e[22]=[tr('',11)]),2))],8,kDn)]),e[24]||(e[24]=S("p",{class:"text-xs text-blue-500 dark:text-blue-400 mt-1"},"Downloads the model to the binding's models folder.",-1))])]),r.downloadProgress.visible?(N(),H("div",HDn,[S("div",PDn,[S("span",$Dn,J(r.downloadProgress.name),1),S("span",VDn,J(r.downloadProgress.progress.toFixed(1))+"%",1)]),S("div",BDn,[S("div",{class:"animated-progressbar-fg h-1.5 rounded-full",style:an({width:r.downloadProgress.progress+"%"})},null,4)]),S("div",FDn,[S("span",null,J(i.downloadedSizeComputed)+" / "+J(i.totalSizeComputed),1),S("span",null,J(i.speedComputed)+"/s",1)]),S("button",{onClick:e[9]||(e[9]=l=>i.handleCancelInstall(r.downloadProgress.details)),class:"btn btn-secondary btn-sm mt-2 text-xs text-red-500 dark:text-red-400 hover:bg-red-200 dark:hover:bg-red-700"},"Cancel Operation")])):Z("",!0)]),ne(a,{show:r.variantSelectionDialog.visible,title:r.variantSelectionDialog.title,choices:r.variantSelectionDialog.choices,onChoiceSelected:i.handleVariantSelected,onChoiceValidated:i.handleVariantValidated,onCloseDialog:i.closeVariantDialog},null,8,["show","title","choices","onChoiceSelected","onChoiceValidated","onCloseDialog"])])}const PO=Ye(uDn,[["render",UDn],["__scopeId","data-v-8f6b5014"]]),qDn={name:"PersonalityEntry",components:{InteractiveMenu:xh},props:{personality:{type:Object,required:!0},select_language:{type:Boolean,default:!1},isActive:{type:Boolean,default:!1},full_path:{type:String,required:!0},isMounted:{type:Boolean,default:!1},isProcessing:{type:Boolean,default:!1},isStarred:{type:Boolean,default:!1},baseUrl:{type:String,default:""}},emits:["select","mount","unmount","remount","edit","copy-to-custom","reinstall","settings","copy-personality-name","open-folder","error","toggle-star"],data(){return{selectedLanguage:this.personality.language||"",showHelpPopup:!1,renderedHelp:""}},computed:{personalityId(){return this.personality.id||this.full_path.replace(/[/:]/g,"-")},renderedDescription(){return this.personality.description?/<[a-z][\s\S]*>/i.test(this.personality.description)?Rc.sanitize(this.personality.description):this.escapeHtml(this.personality.description).replace(/\n/g,"
"):"No description available."},commandsList(){let t=[];return this.isMounted?t.push({name:"unmount",icon:"feather:stop-circle",is_file:!1,value:this.emitUnmount}):t.push({name:"mount",icon:"feather:play",is_file:!1,value:this.emitMount}),this.isMounted&&t.push({name:"remount",icon:"feather:refresh-cw",is_file:!1,value:this.emitRemount}),t.push({name:"reinstall",icon:"feather:download-cloud",is_file:!1,value:this.emitReinstall}),this.full_path.startsWith("custom_personalities/")||this.personality.category==="custom_personalities"?t.push({name:"edit",icon:"feather:edit-3",is_file:!1,value:this.emitEdit}):t.push({name:"Copy to custom personalities",icon:"feather:copy",is_file:!1,value:this.emitCopyToCustom}),this.isActive&&this.personality.has_scripts&&t.push({name:"settings",icon:"feather:settings",is_file:!1,value:this.emitSettings}),t.push({name:"Open Folder",icon:"feather:folder",is_file:!1,value:this.emitOpenFolder}),t.push({name:"Copy Name",icon:"feather:clipboard",is_file:!1,value:this.emitCopyName}),t},watchedFeatherProps(){return[this.isActive,this.isMounted,this.isProcessing,this.isStarred,this.showHelpPopup,this.commandsList]}},watch:{"personality.language"(t){const e=t||"";this.selectedLanguage!==e&&(this.selectedLanguage=e)},watchedFeatherProps:{handler(){this.updateFeatherIcons()},deep:!0,flush:"post"}},methods:{escapeHtml(t){return t?t.replace(/&/g,"&").replace(//g,">").replace(/"/g,'"').replace(/'/g,"'"):""},updateFeatherIcons(){Se(()=>{try{Ce.replace()}catch(t){console.error("Feather icons replacement failed:",t)}})},formatDate(t){if(!t)return"";try{const e={year:"numeric",month:"short",day:"numeric"};return new Date(t).toLocaleDateString(void 0,e)}catch(e){return console.error("Error formatting date:",e),t}},getPersonalityIconUrl(t){if(!t)return Wi;const e=this.baseUrl.endsWith("/")?this.baseUrl.slice(0,-1):this.baseUrl,n=t.startsWith("/")?t:`/${t}`;return`${e}${n}`},handleImgError(t){t.target.src=Wi,this.$emit("error",{type:"image_load",message:"Failed to load personality icon",event:t})},handleSelect(){this.$emit("select",{personality:{...this.personality,language:this.selectedLanguage}})},emitAction(t){const e={personality:{...this.personality,language:this.selectedLanguage||this.personality.language||""}};this.$emit(t,e)},toggleStar(){this.emitAction("toggle-star")},emitMount(){this.emitAction("mount")},emitUnmount(){this.emitAction("unmount")},emitRemount(){this.emitAction("remount")},emitReinstall(){this.emitAction("reinstall")},emitEdit(){this.emitAction("edit")},emitCopyToCustom(){this.emitAction("copy-to-custom")},emitSettings(){this.emitAction("settings")},emitOpenFolder(){this.emitAction("open-folder")},emitCopyName(){this.emitAction("copy-personality-name")},showHelp(){if(this.personality.help){Et.setOptions({gfm:!0,breaks:!0,mangle:!1,headerIds:!1});try{const t=Et.parse(this.personality.help);this.renderedHelp=Rc.sanitize(t),this.showHelpPopup=!0,this.updateFeatherIcons()}catch(t){console.error("Error parsing or sanitizing help markdown:",t),this.renderedHelp="

Error displaying help content.

",this.showHelpPopup=!0}}},closeHelp(){this.showHelpPopup=!1}},mounted(){this.updateFeatherIcons(),this.selectedLanguage=this.personality.language||""}},GDn=["title"],jDn={key:0,class:"absolute inset-0 bg-blue-400 dark:bg-blue-700 bg-opacity-50 dark:bg-opacity-50 flex items-center justify-center rounded-lg z-20"},zDn=["title"],YDn={key:0,"data-feather":"star",class:"w-5 h-5 fill-current"},WDn={key:1,"data-feather":"star",class:"w-5 h-5 stroke-current"},KDn={class:"flex-grow flex flex-col"},ZDn={class:"flex items-start mb-3"},XDn=["src"],JDn={class:"flex-grow overflow-hidden min-w-0"},eIn=["title"],tIn=["title"],nIn=["title"],rIn=["title"],iIn={class:"text-xs text-blue-400 dark:text-blue-500 mb-3 space-y-1"},oIn={key:0},sIn={key:1},aIn={class:"mb-4 flex-grow"},lIn=["innerHTML"],cIn={key:0,class:"mb-3 mt-auto"},uIn=["for"],dIn=["id"],TIn=["value"],fIn={class:"mt-auto pt-3 border-t border-blue-200 dark:border-blue-700"},pIn={class:"flex justify-between items-center"},hIn={class:"flex space-x-1"},mIn={class:"card w-full max-w-2xl max-h-[80vh] flex flex-col"},gIn={class:"flex justify-between items-center mb-4 border-b pb-2 border-blue-200 dark:border-blue-600"},_In={class:"text-xl font-bold text-blue-800 dark:text-blue-100"},QIn={class:"flex-grow overflow-y-auto scrollbar prose-blue max-w-none pr-2"},vIn=["innerHTML"],yIn={class:"mt-4 pt-4 border-t border-blue-200 dark:border-blue-600 text-right"};function bIn(t,e,n,o,r,i){const s=ze("InteractiveMenu");return N(),H("div",{class:Ee(["app-card relative flex flex-col",{"border-2 border-blue-500 dark:border-blue-400 shadow-lg":n.isActive,"border-blue-200 dark:border-blue-700":!n.isActive,"opacity-50 pointer-events-none":n.isProcessing}]),title:n.personality.tool_description||n.personality.description||n.personality.name,onClick:e[11]||(e[11]=(...a)=>i.handleSelect&&i.handleSelect(...a))},[n.isProcessing?(N(),H("div",jDn,e[12]||(e[12]=[S("svg",{"aria-hidden":"true",class:"w-8 h-8 text-blue-200 animate-spin dark:text-blue-600 fill-blue-600 dark:fill-blue-300",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Me(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1)]))):Z("",!0),S("button",{onClick:e[0]||(e[0]=oe((...a)=>i.toggleStar&&i.toggleStar(...a),["stop"])),class:"absolute top-2 right-2 svg-button text-yellow-400 hover:text-yellow-500 dark:text-yellow-500 dark:hover:text-yellow-400 z-10",title:n.isStarred?"Unstar":"Star"},[n.isStarred?(N(),H("i",YDn)):(N(),H("i",WDn))],8,zDn),S("div",KDn,[S("div",ZDn,[S("img",{src:i.getPersonalityIconUrl(n.personality.avatar),onError:e[1]||(e[1]=(...a)=>i.handleImgError&&i.handleImgError(...a)),alt:"Personality Icon",class:"w-16 h-16 rounded-lg object-cover mr-4 flex-shrink-0 border border-blue-200 dark:border-blue-600 shadow-sm"},null,40,XDn),S("div",JDn,[S("h3",{class:"font-bold text-lg text-blue-800 dark:text-blue-100 truncate",title:n.personality.name},J(n.personality.name),9,eIn),n.personality.author?(N(),H("p",{key:0,class:"text-xs text-blue-500 dark:text-blue-400 truncate",title:`By ${n.personality.author}`}," By "+J(n.personality.author),9,tIn)):Z("",!0),n.personality.version?(N(),H("p",{key:1,class:"text-xs text-blue-500 dark:text-blue-400",title:`Version: ${n.personality.version}`}," v"+J(n.personality.version),9,nIn)):Z("",!0),n.personality.category?(N(),H("p",{key:2,class:"text-xs text-blue-500 dark:text-blue-400 truncate",title:`Category: ${n.personality.category}`},J(n.personality.category),9,rIn)):Z("",!0)]),n.personality.help?(N(),H("button",{key:0,onClick:e[2]||(e[2]=oe((...a)=>i.showHelp&&i.showHelp(...a),["stop"])),class:"ml-2 svg-button text-blue-500 hover:text-blue-600 dark:text-blue-400 dark:hover:text-blue-300 flex-shrink-0 -mr-1",title:"Help"},e[13]||(e[13]=[S("i",{"data-feather":"help-circle",class:"h-5 w-5"},null,-1)]))):Z("",!0)]),S("div",iIn,[n.personality.creation_date?(N(),H("p",oIn,"Created: "+J(i.formatDate(n.personality.creation_date)),1)):Z("",!0),n.personality.last_update_date?(N(),H("p",sIn,"Updated: "+J(i.formatDate(n.personality.last_update_date)),1)):Z("",!0)]),S("div",aIn,[S("p",{class:"text-sm text-blue-700 dark:text-blue-300 h-20 overflow-y-auto scrollbar",innerHTML:i.renderedDescription},null,8,lIn)]),n.select_language&&n.personality.languages&&n.personality.languages.length>0&&!n.isMounted?(N(),H("div",cIn,[S("label",{for:"lang-select-"+i.personalityId,class:"label mb-1"},"Language:",8,uIn),Le(S("select",{id:"lang-select-"+i.personalityId,"onUpdate:modelValue":e[3]||(e[3]=a=>r.selectedLanguage=a),onClick:e[4]||(e[4]=oe(()=>{},["stop"])),class:"input w-full text-sm"},[e[14]||(e[14]=S("option",{value:""},"Default",-1)),(N(!0),H(xe,null,Pe(n.personality.languages,a=>(N(),H("option",{key:a,value:a},J(a),9,TIn))),128))],8,dIn),[[Dr,r.selectedLanguage]])])):Z("",!0),S("div",fIn,[S("div",pIn,[S("div",hIn,[n.isMounted?(N(),H("button",{key:1,onClick:e[6]||(e[6]=oe(a=>i.emitAction("unmount"),["stop"])),class:"btn btn-sm bg-red-600 hover:bg-red-700 text-white focus:ring-red-500 dark:bg-red-700 dark:hover:bg-red-600 dark:focus:ring-red-600",title:"Unmount personality"},e[16]||(e[16]=[S("div",{class:"flex items-center"},[S("i",{"data-feather":"stop-circle",class:"w-3 h-3 mr-1 stroke-current"}),Me("Unmount")],-1)]))):(N(),H("button",{key:0,onClick:e[5]||(e[5]=oe(a=>i.emitAction("mount"),["stop"])),class:"btn btn-sm btn-success",title:"Mount personality"},e[15]||(e[15]=[S("div",{class:"flex items-center"},[S("i",{"data-feather":"play",class:"w-3 h-3 mr-1 stroke-current"}),Me("Mount")],-1)]))),n.isMounted?(N(),H("button",{key:2,onClick:e[7]||(e[7]=oe(a=>i.emitAction("remount"),["stop"])),class:"svg-button p-1",title:"Remount personality"},e[17]||(e[17]=[S("i",{"data-feather":"refresh-cw",class:"w-4 h-4"},null,-1)]))):Z("",!0)]),ne(s,{commands:i.commandsList,force_position:2,title:"More actions",class:"p-1"},{trigger:Ge(()=>e[18]||(e[18]=[S("button",{class:"svg-button p-1"},[S("i",{"data-feather":"more-vertical",class:"w-5 h-5"})],-1)])),_:1},8,["commands"])])])]),r.showHelpPopup?(N(),H("div",{key:1,onClick:e[10]||(e[10]=oe(()=>{},["stop"])),class:"fixed inset-0 bg-black bg-opacity-70 flex justify-center items-center z-50 p-4"},[S("div",mIn,[S("div",gIn,[S("h2",_In,"Help: "+J(n.personality.name),1),S("button",{onClick:e[8]||(e[8]=(...a)=>i.closeHelp&&i.closeHelp(...a)),class:"svg-button hover:text-red-600 dark:hover:text-red-500 p-1"},e[19]||(e[19]=[S("i",{"data-feather":"x",class:"w-5 h-5"},null,-1)]))]),S("div",QIn,[S("div",{innerHTML:r.renderedHelp},null,8,vIn)]),S("div",yIn,[S("button",{onClick:e[9]||(e[9]=(...a)=>i.closeHelp&&i.closeHelp(...a)),class:"btn btn-primary"},"Close")])])])):Z("",!0)],10,GDn)}const Nk=Ye(qDn,[["render",bIn]]),EIn="/",$O="lollms_starred_personalities",SIn={name:"PersonalitiesZoo",components:{PersonalityEntry:Nk},emits:["settings-changed"],data(){return{allPersonalities:[],persCatgArr:[],selectedCategory:"",searchPersonality:"",searchPersonalityInProgress:!1,searchDebounceTimer:null,searchDebounceDelay:350,isLoading:!1,bUrl:EIn,defaultPersonalityIcon_:Wi,maxDisplayedMounted:5,starredPaths:[],displayedCount:24,loadBatchSize:24,observer:null}},computed:{configFile(){return this.$store.state.config||{personalities:[],active_personality_id:-1,personality_category:""}},mountedPersArr(){if(!this.configFile.personalities||this.allPersonalities.length===0)return[];const t=new Set(this.configFile.personalities);return this.allPersonalities.filter(e=>{const n=e.full_path,o=Array.isArray(e.languages)?e.languages.map(r=>`${n}:${r}`):[];return t.has(n)||o.some(r=>t.has(r))})},active_personality_name(){if(this.configFile.active_personality_id<0||!this.configFile.personalities||this.configFile.active_personality_id>=this.configFile.personalities.length)return null;const t=this.configFile.personalities[this.configFile.active_personality_id],e=t?t.split(":")[0]:null,n=this.allPersonalities.find(o=>o.full_path===e);return n?n.name:null},displayedMountedPersonalities(){return this.mountedPersArr.slice(0,this.maxDisplayedMounted)},fullyFilteredPersonalities(){let t=[...this.allPersonalities];if(this.selectedCategory==="Starred"){const e=new Set(this.starredPaths);t=t.filter(n=>e.has(n.full_path))}else this.selectedCategory&&(t=t.filter(e=>e.category===this.selectedCategory));if(this.searchPersonality){const e=this.searchPersonality.toLowerCase();t=t.filter(n=>{try{return n.name&&n.name.toLowerCase().includes(e)||n.author&&n.author.toLowerCase().includes(e)||n.description&&n.description.toLowerCase().includes(e)||n.full_path&&n.full_path.toLowerCase().includes(e)}catch{return!1}})}return t.sort((e,n)=>e.isMounted&&!n.isMounted?-1:!e.isMounted&&n.isMounted?1:(e.name||"").localeCompare(n.name||"")),t},renderedPersonalities(){return this.fullyFilteredPersonalities.slice(0,this.displayedCount)}},watch:{"configFile.personalities":{handler(){this.syncLocalMountedFlags()},deep:!0},"configFile.personality_category":{handler(t){const e=t||"";this.selectedCategory!==e&&(this.persCatgArr.includes(e)||e===""||e==="Starred")&&(this.selectedCategory=e,this.applyFiltersAndSort())}},selectedCategory(t){(this.$store.state.config.personality_category||"")!==t&&(this.$store.state.config.personality_category=t,this.$emit("settings-changed"))},starredPaths:{handler(){this.fetchCategories(),this.selectedCategory==="Starred"&&this.applyFiltersAndSort(),this.markStarredInAllPersonalities()},deep:!0}},methods:{async api_get_req(t){try{const e=await ce.get(`${t.startsWith("/")?"":"/"}${t}`);if(e)return e.data}catch(e){return this.$store.state.toast.showToast(`API GET Error (${t}): ${e.message}`,4,!1),console.error(`API GET Error (${t}):`,e),null}},async api_post_req(t,e={}){const n={...e,client_id:this.$store.state.client_id};try{const o=await ce.post(`${t.startsWith("/")?"":"/"}${t}`,n);return typeof o.data=="object"&&o.data!==null&&"status"in o.data?o.data:(console.warn(`API POST response for ${t} has unexpected structure:`,o.data),{status:!1,error:"Unexpected response structure",data:o.data})}catch(o){return this.$store.state.toast.showToast(`API POST Error (${t}): ${o.message}`,4,!1),console.error(`API POST Error (${t}):`,o),{status:!1,error:o.message}}},async getPersonalitiesArr(){this.isLoading=!0;try{const t=await this.api_get_req("get_all_personalities"),e=this.configFile;console.log("Processing get_all_personalities response");let n=[];const o=new Set(e.personalities||[]),r=new Set(this.starredPaths);if(t)for(const i in t){const s=t[i];Array.isArray(s)&&s.forEach(a=>{const l=`${i}/${a.folder}`,c=a.id||l,u=Array.isArray(a.languages)?a.languages.map(f=>`${l}:${f}`):[],d=o.has(l)||u.some(f=>o.has(f));n.push({...a,category:i,language:"",full_path:l,isMounted:d,isStarred:r.has(l),id:c,isProcessing:!1})})}this.allPersonalities=n,this.applyFiltersAndSort(),console.log(`Fetched ${this.allPersonalities.length} total personalities.`)}finally{this.isLoading=!1,Se(Ce.replace)}},async fetchCategories(){this.isLoading=!0;try{const t=await this.api_get_req("list_personalities_categories");this.persCatgArr=t?t.sort():[];const e=this.configFile.personality_category,n=e&&(this.persCatgArr.includes(e)||e==="Starred");this.selectedCategory=n?e:""}finally{this.isLoading=!1,Se(Ce.replace)}},async fetchPersonalitiesAndCategories(){await this.fetchCategories(),await this.getPersonalitiesArr()},applyFiltersAndSort(){this.displayedCount=this.loadBatchSize,this.searchPersonalityInProgress=!1,Se(()=>{Ce.replace();const t=this.$el.querySelector(".personalities-grid-container");t&&(t.scrollTop=0),this.setupObserver()})},searchPersonality_func(){this.searchPersonalityInProgress=!0,clearTimeout(this.searchDebounceTimer),this.searchDebounceTimer=setTimeout(()=>{this.applyFiltersAndSort()},this.searchDebounceDelay)},clearSearch(){this.searchPersonality="",this.applyFiltersAndSort()},loadStarred(){try{const t=localStorage.getItem($O);this.starredPaths=t?JSON.parse(t):[]}catch(t){console.error("Failed to load starred personalities:",t),this.starredPaths=[]}this.markStarredInAllPersonalities()},saveStarred(){try{localStorage.setItem($O,JSON.stringify(this.starredPaths))}catch(t){console.error("Failed to save starred personalities:",t)}},markStarredInAllPersonalities(){const t=new Set(this.starredPaths);this.allPersonalities.forEach(e=>{e.isStarred=t.has(e.full_path)})},toggleStar(t){const e=t.personality.full_path,n=this.starredPaths.indexOf(e);n>-1?this.starredPaths.splice(n,1):this.starredPaths.push(e);const o=this.allPersonalities.find(r=>r.full_path===e);o&&(o.isStarred=n===-1),this.saveStarred(),this.$store.state.toast.showToast(`${t.personality.name} ${n>-1?"unstarred":"starred"}`,2,!0),Se(Ce.replace)},syncLocalMountedFlags(){const t=new Set(this.configFile.personalities||[]);let e=!1;this.allPersonalities.forEach(n=>{const o=n.full_path,r=Array.isArray(n.languages)?n.languages.map(s=>`${o}:${s}`):[],i=t.has(o)||r.some(s=>t.has(s));n.isMounted!==i&&(n.isMounted=i,e=!0)}),e&&this.applyFiltersAndSort(),Se(Ce.replace)},personalityImgPlaceholder(t){t.target.src=this.defaultPersonalityIcon_},getPersonalityIconUrl(t){if(!t)return this.defaultPersonalityIcon_;const e=t.startsWith("/")?t:`/${t}`,n=this.bUrl.endsWith("/")||e.startsWith("/")?"":"/";let o=e.startsWith("/")?e.substring(1):e;return o=o==="/"?"":o,`${this.bUrl}${n}${o}`},isActivePersonality(t){if(!this.configFile||this.configFile.active_personality_id<0||!this.configFile.personalities)return!1;const e=this.configFile.personalities[this.configFile.active_personality_id],n=e?e.split(":")[0]:null;return t.full_path===n},setPersonalityProcessing(t,e){const n=t.personality.id||t.personality.full_path;(r=>{const i=r.find(s=>(s.id||s.full_path)===n);i&&(i.isProcessing=e)})(this.allPersonalities),Se(Ce.replace)},getCategoryCount(t){return this.allPersonalities.filter(e=>e.category===t).length},getResultLabel(){return this.searchPersonality?"Search results":this.selectedCategory==="Starred"?"Starred Personalities":this.selectedCategory?`Personalities in "${this.selectedCategory}"`:"All Personalities"},async onPersonalitySelected(t){const e=t.personality;if(this.isLoading){this.$store.state.toast.showToast("Loading...",4,!1);return}if(!e.isMounted){this.$store.state.toast.showToast(`Mount "${e.name}" first.`,3,!1);return}if(this.isActivePersonality(e)){this.$store.state.toast.showToast(`"${e.name}" is already active.`,3,!1);return}this.setPersonalityProcessing(t,!0),this.$store.state.toast.showToast(`Selecting ${e.name}...`,2,!0);const n=await this.select_personality(e);n&&n.status?(this.$emit("settings-changed"),this.$store.state.toast.showToast(`Selected personality: ${e.name}`,4,!0)):this.$store.state.toast.showToast(`Failed to select ${e.name}: ${(n==null?void 0:n.error)||"Unknown error"}`,4,!1),this.setPersonalityProcessing(t,!1),Se(Ce.replace)},async select_personality(t){if(!t)return{status:!1,error:"no personality - select_personality"};let e=t.language?`${t.full_path}:${t.language}`:t.full_path;if(this.$store.state.config.personalities.findIndex(i=>i===e||i===t.full_path)===-1){if(this.$store.state.config.personalities.findIndex(s=>s===t.full_path)===-1)return console.error("Personality path not found in store config:",e,t.full_path),{status:!1,error:"Personality path not found in current config"};e=t.full_path}const o=this.$store.state.config.personalities.findIndex(i=>i===e);if(o===-1)return console.error("Consistency Error: Personality path disappeared after check:",e),{status:!1,error:"Internal error finding personality ID"};const r={client_id:this.$store.state.client_id,id:o};try{const i=await ce.post("/select_personality",r,{headers:{"Content-Type":"application/json"}});return i&&i.data?(await this.$store.dispatch("refreshConfig"),i.data):{status:!1,error:"No response data from select_personality"}}catch(i){return console.error("Error in select_personality API call:",i),{status:!1,error:i.message}}},async mountPersonality(t){const e=t.personality;if(e.isMounted){this.$store.state.toast.showToast(`${e.name} is already mounted.`,3,!1);return}if(e.disclaimer&&e.disclaimer.trim()!==""&&!await this.$store.state.yesNoDialog.askQuestion(`Disclaimer for ${e.name}: ${e.disclaimer} Mount this personality?`,"Mount","Cancel"))return;this.setPersonalityProcessing(t,!0),this.$store.state.toast.showToast(`Mounting ${e.name}...`,3,!0);const n=await this.mount_personality(e);n&&n.status&&n.active_personality_id>-1&&n.personalities?(this.$store.state.config.personalities=n.personalities,this.$store.state.config.active_personality_id=n.active_personality_id,this.$emit("settings-changed"),this.$store.state.toast.showToast("Personality mounted and selected",4,!0)):(this.$store.state.toast.showToast(`Could not mount personality Error: ${(n==null?void 0:n.error)||"Unknown error"}`,4,!1),this.syncLocalMountedFlags()),this.setPersonalityProcessing(t,!1),Se(Ce.replace)},async mount_personality(t){if(!t)return{status:!1,error:"no personality - mount_personality"};try{const e={client_id:this.$store.state.client_id,language:t.language||"",category:t.category||"",folder:t.folder||""};return await this.api_post_req("/mount_personality",e)}catch(e){return console.error("Error in mount_personality helper:",e),{status:!1,error:e.message}}},async unmountPersonality(t){const e=t.personality;if(!e.isMounted){this.$store.state.toast.showToast(`${e.name} is not mounted.`,3,!1);return}if(!await this.$store.state.yesNoDialog.askQuestion(`Unmount personality "${e.name}"?`,"Unmount","Cancel"))return;this.setPersonalityProcessing(t,!0),this.$store.state.toast.showToast(`Unmounting ${e.name}...`,3,!0);const o=await this.unmount_personality(e);o&&o.status?(this.$store.state.config.personalities=o.personalities,this.$store.state.config.active_personality_id=o.active_personality_id,this.$emit("settings-changed"),this.$store.state.toast.showToast("Personality unmounted",4,!0)):(this.$store.state.toast.showToast(`Could not unmount personality -Error: ${(o==null?void 0:o.error)||"Unknown error"}`,4,!1),this.syncLocalMountedFlags()),this.setPersonalityProcessing(t,!1),Se(Ce.replace)},async unmount_personality(t){if(!t)return{status:!1,error:"no personality - unmount_personality"};const e={client_id:this.$store.state.client_id,language:t.language||"",category:t.category||"",folder:t.folder||""};try{return await this.api_post_req("/unmount_personality",e)}catch(n){return console.error("Error in unmount_personality helper:",n),{status:!1,error:n.message}}},async unmountAll(){if(!await this.$store.state.yesNoDialog.askQuestion("Unmount all personalities?","Unmount All","Cancel"))return;this.$store.state.toast.showToast("Unmounting all...",3,!0),this.isLoading=!0;const e=await this.api_post_req("/unmount_all_personalities");e&&e.status?(this.$store.state.config.personalities=[],this.$store.state.config.active_personality_id=-1,this.$emit("settings-changed"),this.$store.state.toast.showToast("All personalities unmounted.",4,!0)):this.$store.state.toast.showToast(`Failed to unmount all: ${(e==null?void 0:e.error)||"Unknown error"}`,4,!1),this.isLoading=!1,Se(Ce.replace)},async remountPersonality(t){const e=t.personality;this.setPersonalityProcessing(t,!0),this.$store.state.toast.showToast(`Remounting ${e.name}...`,3,!0);try{await this.unmount_personality(e),await new Promise(o=>setTimeout(o,150));const n=await this.mount_personality(e);n&&n.status?(this.$store.state.config.personalities=n.personalities,this.$store.state.config.active_personality_id=n.active_personality_id,this.$emit("settings-changed"),this.$store.state.toast.showToast(`${e.name} remounted successfully.`,4,!0)):(this.$store.state.toast.showToast(`Failed to remount ${e.name}: ${(n==null?void 0:n.error)||"Mount failed"}`,4,!1),await this.fetchPersonalitiesAndCategories())}catch(n){this.$store.state.toast.showToast(`Error remounting ${e.name}: ${n.message}`,4,!1),await this.fetchPersonalitiesAndCategories()}finally{this.setPersonalityProcessing(t,!1)}},async editPersonality(t){var n;const e=t.personality;this.isLoading=!0;try{const r=(await ce.post("/get_personality_config",{client_id:this.$store.state.client_id,category:e.category,name:e.folder})).data;r.status?(this.$store.state.currentPersonConfig=r.config,this.$store.state.showPersonalityEditor=!0,(n=this.$store.state.personality_editor)!=null&&n.showPanel&&this.$store.state.personality_editor.showPanel(),this.$store.state.selectedPersonality=e):(console.error(r.error),this.$store.state.toast.showToast(`Failed to load config for ${e.name}: ${r.error}`,4,!1))}catch(o){console.error("Error fetching personality config:",o),this.$store.state.toast.showToast(`Error loading config for ${e.name}`,4,!1)}finally{this.isLoading=!1}},async onCopyToCustom(t){const e=t.personality;if(!await this.$store.state.yesNoDialog.askQuestion(`Copy "${e.name}" to 'custom_personalities'?`,"Copy","Cancel"))return;this.setPersonalityProcessing(t,!0);const o=await this.api_post_req("copy_to_custom_personas",{category:e.category,name:e.folder});o&&o.status?(this.$store.state.messageBox.showMessage(`"${e.name}" copied to 'custom_personalities'. Refreshing list...`),await new Promise(r=>setTimeout(r,500)),await this.fetchPersonalitiesAndCategories()):this.$store.state.toast.showToast(`Failed to copy ${e.name}: ${(o==null?void 0:o.error)||"Already exists?"}`,4,!1),this.setPersonalityProcessing(t,!1)},async onPersonalityReinstall(t){const e=t.personality;if(!await this.$store.state.yesNoDialog.askQuestion(`Reinstall "${e.name}"? This overwrites local changes.`,"Reinstall","Cancel"))return;this.setPersonalityProcessing(t,!0),this.$store.state.toast.showToast(`Reinstalling ${e.name}...`,3,!0);const o=await this.api_post_req("reinstall_personality",{name:e.full_path});o&&o.status?this.$store.state.toast.showToast(`${e.name} reinstalled successfully.`,4,!0):this.$store.state.toast.showToast(`Failed to reinstall ${e.name}: ${(o==null?void 0:o.error)||"Not found?"}`,4,!1),this.setPersonalityProcessing(t,!1)},async onSettingsPersonality(t){var n,o;const e=t.personality;if(!this.isActivePersonality(e)){this.$store.state.toast.showToast(`Select and activate "${e.name}" first to configure its settings.`,4,!1);return}this.setPersonalityProcessing(t,!0);try{const i=(await ce.get("/get_active_personality_settings")).data;if(i&&typeof i=="object"&&Object.keys(i).length>0){const s=await this.$store.state.universalForm.showForm(i,`Settings - ${e.name}`,"Save","Cancel");if(s!==null){const a=await ce.post("/set_active_personality_settings",s);(n=a==null?void 0:a.data)!=null&&n.status?this.$store.state.toast.showToast(`Settings for ${e.name} updated.`,4,!0):this.$store.state.toast.showToast(`Failed to update settings: ${((o=a==null?void 0:a.data)==null?void 0:o.error)||"Unknown error"}`,4,!1)}}else i&&typeof i=="object"?this.$store.state.toast.showToast(`"${e.name}" has no configurable settings.`,4,!1):this.$store.state.toast.showToast(`Could not get settings for ${e.name}.`,4,!1)}catch(r){console.error("Error getting/setting personality settings:",r),this.$store.state.toast.showToast(`Error accessing settings: ${r.message}`,4,!1)}finally{this.setPersonalityProcessing(t,!1)}},onCopyPersonalityName(t){const e=t.personality;navigator.clipboard.writeText(e.name).then(()=>this.$store.state.toast.showToast(`Copied name: ${e.name}`,3,!0)).catch(()=>this.$store.state.toast.showToast("Failed to copy name.",3,!1))},async handleOpenFolder(t){const e=t.personality;await this.api_post_req("open_personality_folder",{category:e.category,name:e.folder})},loadMore(){this.isLoading||this.displayedCount>=this.fullyFilteredPersonalities.length||(console.log("Loading more personalities..."),this.displayedCount+=this.loadBatchSize,Se(Ce.replace))},setupObserver(){this.observer&&this.observer.disconnect();const t=this.$refs.sentinel;if(!t)return;const e={root:null,rootMargin:"0px",threshold:.1};this.observer=new IntersectionObserver(n=>{n[0].isIntersecting&&this.loadMore()},e),this.observer.observe(t)}},async mounted(){console.log("PersonalitiesZoo mounted (Options API). Initializing..."),this.isLoading=!0,this.loadStarred(),await this.fetchPersonalitiesAndCategories(),Se(()=>{Ce.replace(),this.setupObserver()}),this.isLoading=!1,console.log("PersonalitiesZoo initialization complete.")},beforeUnmount(){this.observer&&(this.observer.disconnect(),this.observer=null),clearTimeout(this.searchDebounceTimer)},updated(){Se(()=>{Ce.replace()})}},xIn={class:"user-settings-panel flex flex-col mb-2 rounded-lg shadow-lg p-4"},LIn={class:"flex flex-row justify-between items-center mb-4 flex-wrap gap-y-2"},CIn={class:"flex items-center flex-wrap"},AIn={key:0,class:"flex items-center mr-2 text-lg text-blue-600 dark:text-blue-300"},wIn=["title"],OIn={class:"flex items-center space-x-3 shrink-0"},MIn={key:0,class:"text-base font-semibold cursor-pointer select-none items-center flex flex-row"},RIn={class:"flex -space-x-4 items-center"},NIn={class:"group items-center flex flex-row"},DIn=["onClick","title"],IIn=["src"],kIn=["onClick"],HIn=["title"],PIn={class:"flex flex-col sm:flex-row gap-4 mb-4"},$In={class:"flex-grow"},VIn={class:"relative"},BIn={class:"absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"},FIn={key:0,"data-feather":"search",class:"w-5 h-5 text-blue-400 dark:text-blue-500"},UIn={key:1,role:"status"},qIn={class:"flex-shrink-0 sm:w-64"},GIn={value:""},jIn={key:0,value:"Starred"},zIn={key:1,disabled:"",class:"text-blue-400 dark:text-blue-600"},YIn=["value"],WIn={key:0,class:"flex justify-center items-center p-10 text-blue-500 dark:text-blue-400"},KIn={key:1,class:"text-center text-blue-500 dark:text-blue-400 py-10"},ZIn={key:2,class:"overflow-y-auto flex-grow personalities-grid-container scrollbar scrollbar-thin",style:{"max-height":"calc(100vh - 300px)"}},XIn={class:"label block ml-2 mb-2"},JIn={ref:"sentinel",class:"h-10"},ekn={key:0,class:"flex justify-center items-center p-4 text-blue-500 dark:text-blue-400"};function tkn(t,e,n,o,r,i){const s=ze("PersonalityEntry");return N(),H("div",xIn,[S("div",LIn,[S("div",CIn,[e[8]||(e[8]=S("p",{class:"text-xl font-semibold cursor-default select-none mr-3 text-blue-800 dark:text-blue-100"}," Personalities Zoo ",-1)),i.active_personality_name?(N(),H("div",AIn,[e[7]||(e[7]=S("span",{class:"mx-2 text-blue-400 dark:text-blue-500"},"|",-1)),S("span",{class:"font-bold line-clamp-1",title:`Active: ${i.active_personality_name}`},J(i.active_personality_name),9,wIn)])):Z("",!0)]),S("div",OIn,[i.mountedPersArr.length>0?(N(),H("div",MIn,[S("div",RIn,[(N(!0),H(xe,null,Pe(i.displayedMountedPersonalities,(a,l)=>(N(),H("div",{class:"relative hover:-translate-y-1 duration-300 hover:z-10 shrink-0",key:l+"-"+a.name,ref_for:!0,ref:"mountedPersonalitiesRefs"},[S("div",NIn,[S("button",{onClick:oe(c=>i.onPersonalitySelected({personality:a,isMounted:!0}),["stop"]),title:`Select: ${a.name}`},[S("img",{src:i.getPersonalityIconUrl(a.avatar),onError:e[0]||(e[0]=(...c)=>i.personalityImgPlaceholder&&i.personalityImgPlaceholder(...c)),class:Ee(["w-8 h-8 rounded-full object-cover border-2 active:scale-90 group-hover:border-blue-500 dark:group-hover:border-blue-400",i.isActivePersonality(a)?"border-blue-500 dark:border-blue-400":"border-blue-300 dark:border-blue-600"])},null,42,IIn)],8,DIn),S("button",{onClick:oe(c=>i.unmountPersonality({personality:a}),["stop"]),class:"absolute -top-1 -right-1 opacity-0 group-hover:opacity-100 transition-opacity duration-150",title:"Unmount personality"},e[9]||(e[9]=[S("span",{class:"bg-red-500 hover:bg-red-600 text-white rounded-full p-0.5 flex items-center justify-center shadow-md"},[S("i",{"data-feather":"x",class:"w-3 h-3 stroke-current"})],-1)]),8,kIn)])]))),128)),i.mountedPersArr.length>r.maxDisplayedMounted?(N(),H("div",{key:0,class:"w-8 h-8 rounded-full bg-blue-200 dark:bg-blue-700 border-2 border-blue-300 dark:border-blue-600 flex items-center justify-center text-xs font-semibold text-blue-600 dark:text-blue-300 cursor-default",title:`${i.mountedPersArr.length-r.maxDisplayedMounted} more mounted`}," +"+J(i.mountedPersArr.length-r.maxDisplayedMounted),9,HIn)):Z("",!0)])])):Z("",!0),i.mountedPersArr.length>0?(N(),H("button",{key:1,onClick:e[1]||(e[1]=oe(a=>i.unmountAll(),["stop"])),class:"p-1 bg-red-100 hover:bg-red-200 dark:bg-red-900 dark:hover:bg-red-800 rounded-full border border-red-300 dark:border-red-700 active:scale-90",title:"Unmount All Personalities"},e[10]||(e[10]=[S("i",{"data-feather":"x-octagon",class:"w-4 h-4 text-red-600 dark:text-red-400 stroke-current"},null,-1)]))):Z("",!0)])]),S("div",PIn,[S("div",$In,[e[12]||(e[12]=S("label",{for:"personality-search",class:"sr-only"},"Search",-1)),S("div",VIn,[S("div",BIn,[r.searchPersonalityInProgress?(N(),H("div",UIn,e[11]||(e[11]=[S("svg",{"aria-hidden":"true",class:"w-5 h-5 text-blue-400 animate-spin dark:text-blue-500 fill-blue-500",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1)]))):(N(),H("i",FIn))]),Le(S("input",{type:"search",id:"personality-search",class:"block w-full p-3 pl-10 text-sm input text-blue-900 dark:text-blue-100",placeholder:"Search name, author, description...",required:"","onUpdate:modelValue":e[2]||(e[2]=a=>r.searchPersonality=a),onInput:e[3]||(e[3]=(...a)=>i.searchPersonality_func&&i.searchPersonality_func(...a))},null,544),[[Je,r.searchPersonality]]),r.searchPersonality?(N(),H("button",{key:0,onClick:e[4]||(e[4]=oe((...a)=>i.clearSearch&&i.clearSearch(...a),["stop"])),type:"button",class:"text-white absolute right-2.5 bottom-1.5 bg-blue-600 hover:bg-blue-700 focus:ring-4 focus:outline-none focus:ring-blue-300 font-medium rounded-lg text-xs px-3 py-1.5 dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800"}," Clear ")):Z("",!0)])]),S("div",qIn,[e[13]||(e[13]=S("label",{for:"persCat",class:"sr-only"},"Category",-1)),Le(S("select",{id:"persCat","onUpdate:modelValue":e[5]||(e[5]=a=>r.selectedCategory=a),onChange:e[6]||(e[6]=(...a)=>i.applyFiltersAndSort&&i.applyFiltersAndSort(...a)),class:"block w-full p-3 text-sm input text-blue-900 dark:text-blue-100"},[S("option",GIn,"All Categories ("+J(r.allPersonalities.length)+")",1),r.starredPaths.length>0?(N(),H("option",jIn,"⭐ Starred ("+J(r.starredPaths.length)+")",1)):Z("",!0),r.starredPaths.length>0&&r.persCatgArr.length>0?(N(),H("option",zIn,"──────────")):Z("",!0),(N(!0),H(xe,null,Pe(r.persCatgArr,(a,l)=>(N(),H("option",{key:l,value:a},J(a)+" ("+J(i.getCategoryCount(a))+") ",9,YIn))),128))],544),[[Dr,r.selectedCategory]])])]),r.isLoading&&r.allPersonalities.length===0?(N(),H("div",WIn,e[14]||(e[14]=[S("svg",{"aria-hidden":"true",class:"w-8 h-8 mr-2 text-blue-300 animate-spin dark:text-blue-600 fill-blue-500",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Re(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1),S("span",null,"Loading personalities...",-1)]))):i.fullyFilteredPersonalities.length===0?(N(),H("div",KIn," No personalities found"+J(r.searchPersonality?' matching "'+r.searchPersonality+'"':"")+J(r.selectedCategory&&r.selectedCategory!=="Starred"?' in category "'+r.selectedCategory+'"':"")+J(r.selectedCategory==="Starred"?" in Starred":"")+". ",1)):(N(),H("div",ZIn,[S("label",XIn,J(i.getResultLabel())+": ("+J(i.fullyFilteredPersonalities.length)+") ",1),(N(),H("div",{key:r.selectedCategory+"-"+r.searchPersonality,class:"p-2 pb-0 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4"},[ne(w2,{name:"list"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(i.renderedPersonalities,(a,l)=>(N(),ot(s,{key:"pers-"+(a.id||`${a.category}-${a.folder}-${l}`),personality:a,select_language:!0,full_path:a.full_path,"is-mounted":a.isMounted,"is-active":i.isActivePersonality(a),"is-processing":a.isProcessing,"is-starred":a.isStarred,"base-url":r.bUrl,onSelect:i.onPersonalitySelected,onMount:i.mountPersonality,onUnmount:i.unmountPersonality,onRemount:i.remountPersonality,onEdit:i.editPersonality,onToggleStar:i.toggleStar,onCopyToCustom:i.onCopyToCustom,onReinstall:i.onPersonalityReinstall,onSettings:i.onSettingsPersonality,onCopyPersonalityName:i.onCopyPersonalityName,onOpenFolder:i.handleOpenFolder,onError:i.personalityImgPlaceholder},null,8,["personality","full_path","is-mounted","is-active","is-processing","is-starred","base-url","onSelect","onMount","onUnmount","onRemount","onEdit","onToggleStar","onCopyToCustom","onReinstall","onSettings","onCopyPersonalityName","onOpenFolder","onError"]))),128))]),_:1})])),S("div",JIn,[r.isLoading&&i.renderedPersonalities.length>0&&i.renderedPersonalities.length{Ce.replace()})},methods:{show_settings(){this.onShowSettings(this)},formatDate(t){const e={year:"numeric",month:"short",day:"numeric"};return new Date(t).toLocaleDateString(void 0,e)},showThumbnail(){this.thumbnailVisible=!0},hideThumbnail(){this.thumbnailVisible=!1},updateThumbnailPosition(t){this.thumbnailPosition={x:t.clientX+10,y:t.clientY+10}},getImgUrl(){return rkn+this.function_call.avatar},defaultImg(t){t.target.src=nkn},toggleFavorite(){this.onToggleFavorite(this)},showFolder(){this.onOpenFolder(this)},toggleCopyLink(){this.onCopyfunction_callName(this)},edit(){this.onEdit(this)},copyToCustom(){this.onCopyToCustom(this)},reMount(){this.onRemount(this)},mount(){console.log("Mounting"),this.onMount(this)},unmount(){console.log("Unmounting"),console.log(this.onUnMount),this.onUnMount(this),this.mounted=!1},showHelp(){this.renderedHelp=Et(this.function_call.help),this.showHelpPopup=!0},closeHelp(){this.showHelpPopup=!1}},watch:{}},okn=["title"],skn={class:"flex-grow"},akn={class:"flex items-center mb-4"},lkn=["src"],ckn={class:"font-bold text-xl text-gray-800 cursor-pointer"},ukn={class:"text-sm text-gray-600"},dkn={class:"text-sm text-gray-600"},Tkn={class:"text-sm text-gray-600"},fkn={key:0,class:"text-sm text-gray-600"},pkn={key:1,class:"text-sm text-gray-600"},hkn={class:"mb-4"},mkn=["innerHTML"],gkn={class:"mt-auto pt-4 border-t"},_kn={class:"flex justify-between items-center flex-wrap"},Qkn=["title"],vkn=["fill"],ykn=["src"],bkn={key:1,class:"fixed inset-0 bg-black bg-opacity-50 flex justify-center items-center"},Ekn={class:"bg-white p-4 rounded-lg shadow-lg w-[500px] h-[400px] flex flex-col"},Skn={class:"flex justify-between items-center mb-2"},xkn={class:"flex-grow overflow-auto"},Lkn=["innerHTML"];function Ckn(t,e,n,o,r,i){const s=ze("InteractiveMenu");return N(),H("div",{class:Ee(["app-card flex flex-col h-full",r.mounted?"border-primary-light":"border-transparent"]),title:n.function_call.installed?"":"Not installed"},[S("div",skn,[S("div",akn,[S("img",{src:i.getImgUrl(),onError:e[0]||(e[0]=a=>i.defaultImg(a)),alt:"function_call Icon",class:"w-16 h-16 rounded-full border border-gray-300 mr-4 cursor-pointer",onMouseover:e[1]||(e[1]=(...a)=>i.showThumbnail&&i.showThumbnail(...a)),onMousemove:e[2]||(e[2]=(...a)=>i.updateThumbnailPosition&&i.updateThumbnailPosition(...a)),onMouseleave:e[3]||(e[3]=(...a)=>i.hideThumbnail&&i.hideThumbnail(...a))},null,40,lkn),S("div",null,[S("h3",ckn,J(n.function_call.name),1),S("p",ukn,"Author: "+J(n.function_call.author),1),S("p",dkn,"Version: "+J(n.function_call.version),1),S("p",Tkn,"Category: "+J(n.function_call.category),1),n.function_call.creation_date?(N(),H("p",fkn,"Creation Date: "+J(i.formatDate(n.function_call.creation_date)),1)):Z("",!0),n.function_call.last_update_date?(N(),H("p",pkn,"Last update Date: "+J(i.formatDate(n.function_call.last_update_date)),1)):Z("",!0)]),n.function_call.help?(N(),H("button",{key:0,onClick:e[4]||(e[4]=(...a)=>i.showHelp&&i.showHelp(...a)),class:"ml-2 text-blue-500 hover:text-blue-600 transition duration-300 ease-in-out",title:"Help"},e[9]||(e[9]=[S("i",{"data-feather":"help-circle",class:"h-6 w-6"},null,-1)]))):Z("",!0)]),S("div",hkn,[e[10]||(e[10]=S("h4",{class:"font-semibold mb-1 text-gray-700"},"Description:",-1)),S("p",{class:"text-sm text-gray-600 h-20 overflow-y-auto",innerHTML:n.function_call.description},null,8,mkn)])]),S("div",gkn,[S("div",_kn,[S("button",{onClick:e[5]||(e[5]=(...a)=>i.toggleFavorite&&i.toggleFavorite(...a)),class:"text-yellow-500 hover:text-yellow-600 transition duration-300 ease-in-out",title:t.isFavorite?"Remove from favorites":"Add to favorites"},[(N(),H("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:t.isFavorite?"currentColor":"none",viewBox:"0 0 24 24",stroke:"currentColor"},e[11]||(e[11]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"},null,-1)]),8,vkn))],8,Qkn),S("button",{onClick:e[6]||(e[6]=(...a)=>i.showFolder&&i.showFolder(...a)),class:"text-purple-500 hover:text-purple-600 transition duration-300 ease-in-out",title:"Show Folder"},e[12]||(e[12]=[S("i",{"data-feather":"folder",class:"h-6 w-6"},null,-1)])),r.mounted?(N(),H("button",{key:0,onClick:e[7]||(e[7]=(...a)=>i.show_settings&&i.show_settings(...a)),class:"text-green-500 hover:text-green-600 transition duration-300 ease-in-out",title:"Settings"},e[13]||(e[13]=[S("i",{"data-feather":"settings",class:"h-6 w-6"},null,-1)]))):Z("",!0),ne(s,{commands:i.commandsList,force_position:2,title:"Menu",class:"text-gray-500 hover:text-gray-600 transition duration-300 ease-in-out"},null,8,["commands"])])]),r.thumbnailVisible?(N(),H("div",{key:0,style:an({top:r.thumbnailPosition.y+"px",left:r.thumbnailPosition.x+"px"}),class:"fixed z-50 w-20 h-20 rounded-full overflow-hidden"},[S("img",{src:i.getImgUrl(),class:"w-full h-full object-fill"},null,8,ykn)],4)):Z("",!0),r.showHelpPopup?(N(),H("div",bkn,[S("div",Ekn,[S("div",Skn,[e[14]||(e[14]=S("h2",{class:"text-lg font-bold"},"Help",-1)),S("button",{onClick:e[8]||(e[8]=(...a)=>i.closeHelp&&i.closeHelp(...a)),class:"text-red-500 hover:text-red-600"},"Close")]),S("div",xkn,[S("div",{innerHTML:r.renderedHelp},null,8,Lkn)])])])):Z("",!0)],10,okn)}const Akn=Ye(ikn,[["render",Ckn]]),wkn="/assets/default_function-CyfcuNmo.png",Okn={name:"FunctionCallsZoo",components:{FunctionEntry:Akn},props:{config:{type:Object,required:!0},api_post_req:{type:Function,required:!0},api_get_req:{type:Function,required:!0},show_toast:{type:Function,required:!0},show_yes_no_dialog:{type:Function,required:!0},show_universal_form:{type:Function,required:!0},show_message_box:{type:Function,required:!0},client_id:{type:String,required:!0}},emits:["update:setting"],data(){return{allFunctions:[],categoriesFunc:[],filteredFunctions:[],pagedFunctions:[],mountedFunctions:[],isLoadingFunctions:!1,isSearchingFunc:!1,searchTermFunc:"",selectedCategoryFunc:"",sortOptionFunc:"name",itemsPerPageFunc:15,currentPageFunc:1,searchDebounceTimerFunc:null,maxDisplayedMountedFunc:7,functionEntryRefs:{},observerFunc:null,defaultIcon:wkn,axiosBaseUrl:ce.defaults.baseURL}},computed:{hasMoreFunctionsToLoad(){return this.pagedFunctions.length{try{Ce.replace()}catch(t){console.error("Feather replace error:",t)}})},setFunctionRef(t,e){e&&(this.functionEntryRefs[t]=e)},async fetchFunctionsAndCategories(){this.isLoadingFunctions=!0,console.log("Fetching functions and categories...");try{const t=await this.api_get_req("list_function_calls"),e=(t==null?void 0:t.function_calls)||[],n=new Set(e.map(r=>r.category));this.categoriesFunc=Array.from(n).sort();const o=new Set(this.$store.state.config.mounted_functions||[]);this.allFunctions=e.map(r=>{const i=`${r.category}/${r.name}`,s=r.id||i;return{...r,full_path:i,isMounted:o.has(i),id:s,isProcessing:!1}}),console.log(`Fetched ${this.allFunctions.length} total functions.`)}catch(t){this.show_toast("Failed to load functions.",4,!1),console.error("Error fetching functions:",t),this.allFunctions=[],this.categoriesFunc=[]}finally{this.isLoadingFunctions=!1,this.featherReplace()}},applyFiltersAndSortFunc(){console.time("FilterSortFunctions");let t=[...this.allFunctions];if(this.selectedCategoryFunc&&(t=t.filter(e=>e.category===this.selectedCategoryFunc)),this.searchTermFunc){const e=this.searchTermFunc.toLowerCase();t=t.filter(n=>{var c,u,d,f,T;const o=(c=n.name)==null?void 0:c.toLowerCase().includes(e),r=(u=n.author)==null?void 0:u.toLowerCase().includes(e),i=(d=n.description)==null?void 0:d.toLowerCase().includes(e),s=(f=n.category)==null?void 0:f.toLowerCase().includes(e),a=(T=n.full_path)==null?void 0:T.toLowerCase().includes(e),l=Array.isArray(n.keywords)?n.keywords.some(h=>h.toLowerCase().includes(e)):!1;return o||r||i||s||a||l})}t.sort((e,n)=>{if(e.isMounted&&!n.isMounted)return-1;if(!e.isMounted&&n.isMounted)return 1;switch(this.sortOptionFunc){case"name":return(e.name||"").localeCompare(n.name||"");case"author":return(e.author||"").localeCompare(n.author||"");case"category":return(e.category||"").localeCompare(n.category||"");default:return 0}}),this.filteredFunctions=t,console.timeEnd("FilterSortFunctions"),console.log(`Filtered/Sorted functions: ${this.filteredFunctions.length}`)},debounceSearchFunc(){this.isSearchingFunc=!0,clearTimeout(this.searchDebounceTimerFunc),this.searchDebounceTimerFunc=setTimeout(()=>{this.currentPageFunc=1,this.pagedFunctions=[],this.applyFiltersAndSortFunc(),this.loadMoreFunctions(),this.isSearchingFunc=!1},300)},loadMoreFunctions(){if(this.isLoadingFunctions||this.isSearchingFunc)return;const t=(this.currentPageFunc-1)*this.itemsPerPageFunc,e=t+this.itemsPerPageFunc,n=this.filteredFunctions.slice(t,e),o=new Set(this.pagedFunctions.map(i=>i.id||i.full_path)),r=n.filter(i=>!o.has(i.id||i.full_path));r.length>0&&(this.pagedFunctions.push(...r),this.currentPageFunc++),this.featherReplace()},updateMountedFuncList(t){const e=new Set(t||[]);this.allFunctions.forEach(n=>{const o=e.has(n.full_path);n.isMounted!==o&&(n.isMounted=o)}),this.mountedFunctions=this.allFunctions.filter(n=>n.isMounted),console.log("Updated mounted function list:",this.mountedFunctions.length)},setFunctionProcessing(t,e){const n=this.allFunctions.findIndex(r=>(r.id||r.full_path)===t);n!==-1&&(this.allFunctions[n].isProcessing=e);const o=this.pagedFunctions.findIndex(r=>(r.id||r.full_path)===t);o!==-1&&(this.pagedFunctions[o].isProcessing=e)},async handleMount(t){if(t.isMounted||t.isProcessing)return;const e=t.id||t.full_path;this.setFunctionProcessing(e,!0),this.show_toast(`Mounting ${t.name}...`,3,!0);try{const n=await this.api_post_req("mount_function_call",{function_category:t.category,function_name:t.name});if(n&&n.status){this.show_toast(`${t.name} mounted successfully.`,4,!0);const o=[...this.$store.state.config.mounted_functions||[],t.full_path];this.$emit("update:setting",{key:"mounted_functions",value:o})}else this.show_toast(`Failed to mount ${t.name}: ${(n==null?void 0:n.error)||"Error"}`,4,!1)}catch(n){this.show_toast(`Error mounting ${t.name}: ${n.message||n}`,4,!1)}finally{this.setFunctionProcessing(e,!1)}},async handleUnmount(t){if(!t.isMounted||t.isProcessing)return;const e=t.id||t.full_path;this.setFunctionProcessing(e,!0),this.show_toast(`Unmounting ${t.name}...`,3,!0);try{const n=await this.api_post_req("unmount_function_call",{function_name:t.name});if(n&&n.status){this.show_toast(`${t.name} unmounted.`,4,!0);const o=(this.$store.state.config.mounted_functions||[]).filter(r=>r!==t.full_path);this.$emit("update:setting",{key:"mounted_functions",value:o})}else this.show_toast(`Failed to unmount ${t.name}: ${(n==null?void 0:n.error)||"Error"}`,4,!1)}catch(n){this.show_toast(`Error unmounting ${t.name}: ${n.message||n}`,4,!1)}finally{this.setFunctionProcessing(e,!1)}},async unmountAll(){if(await this.show_yes_no_dialog("Unmount all functions?","Unmount All","Cancel")){this.show_toast("Unmounting all functions...",3,!0);try{const e=await this.api_post_req("unmount_all_functions");e&&e.status?(this.show_toast("All functions unmounted.",4,!0),this.$emit("update:setting",{key:"mounted_functions",value:[]})):this.show_toast(`Failed to unmount all: ${(e==null?void 0:e.error)||"Error"}`,4,!1)}catch(e){this.show_toast(`Error unmounting all: ${e.message||e}`,4,!1)}}},async handleRemount(t){const e=t.id||t.full_path;if(!t.isProcessing){this.setFunctionProcessing(e,!0),this.show_toast(`Remounting ${t.name}...`,3,!0);try{if(t.isMounted){const o=await this.api_post_req("unmount_function_call",{function_name:t.name});if(!o||!o.status){this.show_toast(`Failed to unmount ${t.name} during remount. Aborting.`,4,!1),this.setFunctionProcessing(e,!1);return}const r=(this.$store.state.config.mounted_functions||[]).filter(i=>i!==t.full_path);this.$emit("update:setting",{key:"mounted_functions",value:r}),await Se()}const n=await this.api_post_req("mount_function_call",{function_category:t.category,function_name:t.name});if(n&&n.status){this.show_toast(`${t.name} remounted successfully.`,4,!0);const o=[...this.$store.state.config.mounted_functions||[],t.full_path];this.$emit("update:setting",{key:"mounted_functions",value:o})}else this.show_toast(`Failed to mount ${t.name} during remount: ${(n==null?void 0:n.error)||"Error"}`,4,!1)}catch(n){this.show_toast(`Error remounting ${t.name}: ${n.message||n}`,4,!1)}finally{this.setFunctionProcessing(e,!1)}}},async handleSettings(t){if(t.isProcessing)return;const e=t.id||t.full_path;this.setFunctionProcessing(e,!0);try{const n=await this.api_post_req("get_function_call_settings",{category:t.category,name:t.name});if(n&&typeof n=="object"&&Object.keys(n).length>0){const o=await this.show_universal_form(n,`Function Settings - ${t.name}`,"Save","Cancel");if(o!==null){const r=await this.api_post_req("set_function_call_settings",{category:t.category,name:t.name,settings:o});r&&r.status?this.show_toast(`Settings for ${t.name} updated.`,4,!0):this.show_toast(`Failed to update settings for ${t.name}: ${(r==null?void 0:r.error)||"Error"}`,4,!1)}else this.show_toast(`Settings update for ${t.name} cancelled.`,3,!0)}else n&&typeof n=="object"&&Object.keys(n).length===0?this.show_message_box(`Function "${t.name}" has no configurable settings.`):this.show_toast(`Could not retrieve settings for ${t.name}: ${(n==null?void 0:n.error)||"Invalid response"}`,4,!1)}catch(n){this.show_toast(`Error accessing settings for ${t.name}: ${n.message||n}`,4,!1)}finally{this.setFunctionProcessing(e,!1)}},async handleEdit(t){this.show_toast(`Editing ${t.name} requires opening its folder. Opening folder...`,3,!0),await this.handleOpenFolder(t)},async handleCopyToCustom(t){if(!await this.show_yes_no_dialog(`Copy "${t.name}" to your 'custom_functions' folder?`,"Copy","Cancel")||t.isProcessing)return;const n=t.id||t.full_path;this.setFunctionProcessing(n,!0);try{const o=await this.api_post_req("copy_to_custom_functions",{category:t.category,name:t.name});o&&o.status?(this.show_message_box(`Function "${t.name}" copied to 'custom_functions'. The list will refresh.`),await this.fetchFunctionsAndCategories()):this.show_toast(`Failed to copy ${t.name}: ${(o==null?void 0:o.error)||"Already exists?"}`,4,!1)}catch(o){this.show_toast(`Error copying ${t.name}: ${o.message||o}`,4,!1)}finally{this.setFunctionProcessing(n,!1)}},handleCopyName(t){navigator.clipboard.writeText(t.name).then(()=>this.show_toast(`Copied name: ${t.name}`,3,!0)).catch(()=>this.show_toast("Failed to copy name.",3,!1))},async handleOpenFolder(t){try{await this.api_post_req("open_function_folder",{category:t.category,name:t.name})}catch(e){this.show_toast(`Error opening folder for ${t.name}: ${e.message||e}`,4,!1)}},scrollToFunction(t){const e=t.id||t.full_path,n=this.functionEntryRefs[e];if(n&&n.$el){const o=n.$el;o.scrollIntoView({behavior:"smooth",block:"center"}),o.classList.add("ring-2","ring-primary","ring-offset-2","dark:ring-offset-gray-800","transition-all","duration-1000"),setTimeout(()=>{o.classList.remove("ring-2","ring-primary","ring-offset-2","dark:ring-offset-gray-800","transition-all","duration-1000")},1500)}else console.warn(`Could not find ref $el to scroll to for function ID: ${e}`),this.hasMoreFunctionsToLoad&&this.show_toast(`Function ${t.name} not visible, loading more...`,3,!0)},setupIntersectionObserverFunc(){const t={root:null,rootMargin:"0px",threshold:.1};this.observerFunc=new IntersectionObserver(e=>{e.forEach(n=>{n.isIntersecting&&this.hasMoreFunctionsToLoad&&!this.isLoadingFunctions&&!this.isSearchingFunc&&this.loadMoreFunctions()})},t),this.$refs.loadMoreTriggerFunc?this.observerFunc.observe(this.$refs.loadMoreTriggerFunc):console.warn("Load more trigger element not found for IntersectionObserver.")},disconnectIntersectionObserver(){if(this.observerFunc){if(this.$refs.loadMoreTriggerFunc)try{this.observerFunc.unobserve(this.$refs.loadMoreTriggerFunc)}catch(t){console.warn("Error unobserving:",t)}this.observerFunc.disconnect(),this.observerFunc=null}}},mounted(){this.fetchFunctionsAndCategories(),this.featherReplace(),this.$nextTick(()=>{this.$refs.loadMoreTriggerFunc&&this.setupIntersectionObserverFunc()})},beforeUpdate(){this.functionEntryRefs={}},updated(){this.featherReplace(),this.$nextTick(()=>{!this.observerFunc&&this.$refs.loadMoreTriggerFunc?this.setupIntersectionObserverFunc():this.observerFunc&&this.$refs.loadMoreTriggerFunc})},unmounted(){this.disconnectIntersectionObserver(),clearTimeout(this.searchDebounceTimerFunc)}},Mkn={class:"space-y-6 p-4 md:p-6 bg-white dark:bg-gray-800 rounded-lg shadow-md border border-gray-200 dark:border-gray-700"},Rkn={class:"flex flex-col sm:flex-row justify-between items-start sm:items-center border-b border-gray-200 dark:border-gray-700 pb-3 mb-4"},Nkn={class:"flex flex-col items-end"},Dkn={class:"flex items-center flex-wrap gap-2 text-sm font-medium mb-1"},Ikn={key:0,class:"text-gray-500 dark:text-gray-500 italic text-xs"},kkn={key:1,class:"flex -space-x-3 items-center"},Hkn=["src","title","onClick"],Pkn=["onClick"],$kn=["title"],Vkn={class:"grid grid-cols-1 md:grid-cols-3 gap-4 mb-4 items-center"},Bkn={class:"relative md:col-span-1"},Fkn={key:0,class:"absolute inset-y-0 right-0 pr-3 flex items-center"},Ukn={class:"md:col-span-1"},qkn=["value"],Gkn={class:"md:col-span-1"},jkn={key:0,class:"flex justify-center items-center p-10 text-gray-500 dark:text-gray-400"},zkn={key:1,class:"text-center text-gray-500 dark:text-gray-400 py-10"},Ykn={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",ref:"scrollContainerFunc"},Wkn={ref:"loadMoreTriggerFunc",class:"h-10"},Kkn={key:0,class:"text-center text-gray-500 dark:text-gray-400 py-4"};function Zkn(t,e,n,o,r,i){const s=ze("FunctionEntry");return N(),H("div",Mkn,[S("div",Rkn,[e[9]||(e[9]=S("h2",{class:"text-xl font-semibold text-gray-800 dark:text-gray-200 mb-2 sm:mb-0"}," Function Calls Zoo ",-1)),S("div",Nkn,[S("div",Dkn,[e[7]||(e[7]=S("span",{class:"text-gray-600 dark:text-gray-400"},"Mounted:",-1)),r.mountedFunctions.length===0?(N(),H("div",Ikn,"None")):(N(),H("div",kkn,[(N(!0),H(xe,null,Pe(i.displayedMountedFunctions,(a,l)=>(N(),H("div",{key:`mounted-${a.full_path||l}`,class:"relative group"},[S("img",{src:i.getFunctionIcon(a.icon),onError:e[0]||(e[0]=(...c)=>i.imgPlaceholder&&i.imgPlaceholder(...c)),class:"w-7 h-7 rounded-full object-cover ring-2 ring-white dark:ring-gray-800 cursor-pointer hover:ring-primary transition-all",title:`${a.name} (${a.category})`,onClick:c=>i.scrollToFunction(a)},null,40,Hkn),S("button",{onClick:oe(c=>i.handleUnmount(a),["stop"]),class:"absolute -top-1 -right-1 p-0.5 rounded-full bg-red-600 text-white opacity-0 group-hover:opacity-100 transition-opacity duration-150 hover:bg-red-700",title:"Unmount"},e[6]||(e[6]=[S("i",{"data-feather":"x",class:"w-3 h-3"},null,-1)]),8,Pkn)]))),128)),r.mountedFunctions.length>r.maxDisplayedMountedFunc?(N(),H("div",{key:0,class:"w-7 h-7 rounded-full bg-gray-200 dark:bg-gray-600 ring-2 ring-white dark:ring-gray-800 flex items-center justify-center text-xs font-semibold text-gray-600 dark:text-gray-300",title:`${r.mountedFunctions.length-r.maxDisplayedMountedFunc} more mounted`}," +"+J(r.mountedFunctions.length-r.maxDisplayedMountedFunc),9,$kn)):Z("",!0)]))]),r.mountedFunctions.length>0?(N(),H("button",{key:0,onClick:e[1]||(e[1]=(...a)=>i.unmountAll&&i.unmountAll(...a)),class:"button-danger-sm text-xs mt-1"},e[8]||(e[8]=[S("i",{"data-feather":"x-octagon",class:"w-3 h-3 mr-1"},null,-1),Re("Unmount All ")]))):Z("",!0)])]),e[17]||(e[17]=S("p",{class:"text-sm text-gray-500 dark:text-gray-400"}," Mount functions to grant the AI specific capabilities and tools it can use during conversations. Requires a model trained for function calling. ",-1)),S("div",Vkn,[S("div",Bkn,[e[11]||(e[11]=S("div",{class:"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none"},[S("i",{"data-feather":"search",class:"w-5 h-5 text-gray-400"})],-1)),Le(S("input",{type:"search","onUpdate:modelValue":e[2]||(e[2]=a=>r.searchTermFunc=a),placeholder:"Search functions...",class:"input-field pl-10 w-full",onInput:e[3]||(e[3]=(...a)=>i.debounceSearchFunc&&i.debounceSearchFunc(...a))},null,544),[[Je,r.searchTermFunc]]),r.isSearchingFunc?(N(),H("div",Fkn,e[10]||(e[10]=[S("svg",{"aria-hidden":"true",class:"w-5 h-5 text-gray-400 animate-spin dark:text-gray-500 fill-primary",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Re(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1)]))):Z("",!0)]),S("div",Ukn,[e[13]||(e[13]=S("label",{for:"func-category",class:"sr-only"},"Filter by Category",-1)),Le(S("select",{id:"func-category","onUpdate:modelValue":e[4]||(e[4]=a=>r.selectedCategoryFunc=a),class:"input-field"},[e[12]||(e[12]=S("option",{value:""},"All Categories",-1)),(N(!0),H(xe,null,Pe(r.categoriesFunc,a=>(N(),H("option",{key:a,value:a},J(a),9,qkn))),128))],512),[[Dr,r.selectedCategoryFunc]])]),S("div",Gkn,[e[15]||(e[15]=S("label",{for:"func-sort",class:"sr-only"},"Sort functions by",-1)),Le(S("select",{id:"func-sort","onUpdate:modelValue":e[5]||(e[5]=a=>r.sortOptionFunc=a),class:"input-field"},e[14]||(e[14]=[S("option",{value:"name"},"Sort by Name",-1),S("option",{value:"author"},"Sort by Author",-1),S("option",{value:"category"},"Sort by Category",-1)]),512),[[Dr,r.sortOptionFunc]])])]),r.isLoadingFunctions?(N(),H("div",jkn,e[16]||(e[16]=[S("svg",{"aria-hidden":"true",class:"w-8 h-8 mr-2 text-gray-300 animate-spin dark:text-gray-600 fill-primary",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Re(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1),S("span",null,"Loading functions...",-1)]))):r.pagedFunctions.length===0?(N(),H("div",zkn," No functions found"+J(r.searchTermFunc?' matching "'+r.searchTermFunc+'"':"")+J(r.selectedCategoryFunc?' in category "'+r.selectedCategoryFunc+'"':"")+". ",1)):Z("",!0),S("div",Ykn,[(N(!0),H(xe,null,Pe(r.pagedFunctions,a=>(N(),ot(s,{key:a.id||a.full_path,ref_for:!0,ref:l=>i.setFunctionRef(a.id||a.full_path,l),function_call:a,"is-mounted":a.isMounted,"is-processing":a.isProcessing,onMount:l=>i.handleMount(a),onUnmount:l=>i.handleUnmount(a),onRemount:l=>i.handleRemount(a),onSettings:l=>i.handleSettings(a),onEdit:l=>i.handleEdit(a),onCopyToCustom:l=>i.handleCopyToCustom(a),onCopyName:l=>i.handleCopyName(a),onOpenFolder:l=>i.handleOpenFolder(a)},null,8,["function_call","is-mounted","is-processing","onMount","onUnmount","onRemount","onSettings","onEdit","onCopyToCustom","onCopyName","onOpenFolder"]))),128))],512),S("div",Wkn,[i.hasMoreFunctionsToLoad&&!r.isLoadingFunctions?(N(),H("div",Kkn," Loading more functions... ")):Z("",!0)],512)])}const BO=Ye(Okn,[["render",Zkn],["__scopeId","data-v-963fb20e"]]),Xkn={name:"ModelGenerationParameters",components:{ToggleSwitch:n6},props:{loading:{type:Boolean,default:!1}},emits:["update:setting"],computed:{isDisabled(){return!this.$store.state.config.override_personality_model_parameters}},methods:{updateValue(t,e){let n=e;t!=="seed"&&typeof e!="boolean"?(n=Number(e),isNaN(n)&&(console.warn(`Invalid number input for ${t}:`,e),n=e)):t==="seed"&&(n=parseInt(e),isNaN(n)&&String(e)!=="-"?n=-1:String(e)==="-"?n="-":n<-1&&(n=-1)),!(t!=="seed"&&typeof n=="number"&&isNaN(n))&&(t==="seed"&&n==="-"||this.$emit("update:setting",{key:t,value:n}))},updateBoolean(t,e){this.$emit("update:setting",{key:t,value:!!e})},replaceFeatherIcons(){Se(()=>{Ce.replace()})}},mounted(){this.replaceFeatherIcons()},updated(){this.replaceFeatherIcons()}},Jkn={class:"user-settings-panel space-y-6"},eHn={class:"toggle-item !justify-start gap-4 border border-blue-200 dark:border-blue-700 rounded-lg p-3 panels-color"},tHn={class:"setting-item"},nHn=["value","disabled"],rHn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},iHn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},oHn=["value","disabled"],sHn=["value","disabled"],aHn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},lHn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},cHn=["value","disabled"],uHn=["value","disabled"],dHn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},THn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},fHn=["value","disabled"],pHn=["value","disabled"],hHn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},mHn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},gHn=["value","disabled"],_Hn=["value","disabled"],QHn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},vHn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},yHn=["value","disabled"],bHn=["value","disabled"],EHn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},SHn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},xHn=["value","disabled"],LHn=["value","disabled"];function CHn(t,e,n,o,r,i){const s=ze("ToggleSwitch");return N(),H("div",Jkn,[e[22]||(e[22]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 border-b border-blue-300 dark:border-blue-600 pb-2"}," Model Generation Parameters ",-1)),e[23]||(e[23]=S("p",{class:"text-sm text-blue-600 dark:text-blue-400 mb-4"}," Adjust the core parameters that influence how the AI generates text. These settings can be overridden by specific personalities unless the option below is checked. ",-1)),S("div",eHn,[ne(s,{id:"override_personality_model_parameters",checked:t.$store.state.config.override_personality_model_parameters,"onUpdate:checked":e[0]||(e[0]=a=>i.updateBoolean("override_personality_model_parameters",a))},null,8,["checked"]),e[14]||(e[14]=S("label",{for:"override_personality_model_parameters",class:"toggle-label !flex-none"},[Re(" Override Personality Parameters "),S("span",{class:"toggle-description"},"Force the use of these global parameters, ignoring any settings defined within the selected personality.")],-1))]),S("div",{class:Ee(["space-y-5 pt-4",i.isDisabled?"opacity-50 pointer-events-none":""])},[S("div",tHn,[e[15]||(e[15]=tr('',1)),S("input",{type:"number",id:"seed",value:t.$store.state.config.seed,onInput:e[1]||(e[1]=a=>i.updateValue("seed",parseInt(a.target.value))),class:"input-sm w-full md:w-32",step:"1",placeholder:"-1",disabled:i.isDisabled},null,40,nHn)]),S("div",rHn,[e[16]||(e[16]=tr('',1)),S("div",iHn,[S("input",{id:"temperature-range",value:t.$store.state.config.temperature,onInput:e[2]||(e[2]=a=>i.updateValue("temperature",parseFloat(a.target.value))),type:"range",min:"0",max:"2",step:"0.01",class:"range-input flex-grow",disabled:i.isDisabled},null,40,oHn),S("input",{id:"temperature-number",value:t.$store.state.config.temperature,onInput:e[3]||(e[3]=a=>i.updateValue("temperature",parseFloat(a.target.value))),type:"number",min:"0",max:"2",step:"0.01",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,sHn)])]),S("div",aHn,[e[17]||(e[17]=tr('',1)),S("div",lHn,[S("input",{id:"n_predict-range",value:t.$store.state.config.n_predict,onInput:e[4]||(e[4]=a=>i.updateValue("n_predict",parseInt(a.target.value))),type:"range",min:"32",max:"8192",step:"32",class:"range-input flex-grow",disabled:i.isDisabled},null,40,cHn),S("input",{id:"n_predict-number",value:t.$store.state.config.n_predict,onInput:e[5]||(e[5]=a=>i.updateValue("n_predict",parseInt(a.target.value))),type:"number",min:"32",max:"8192",step:"32",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,uHn)])]),S("div",dHn,[e[18]||(e[18]=tr('',1)),S("div",THn,[S("input",{id:"top_k-range",value:t.$store.state.config.top_k,onInput:e[6]||(e[6]=a=>i.updateValue("top_k",parseInt(a.target.value))),type:"range",min:"0",max:"100",step:"1",class:"range-input flex-grow",disabled:i.isDisabled},null,40,fHn),S("input",{id:"top_k-number",value:t.$store.state.config.top_k,onInput:e[7]||(e[7]=a=>i.updateValue("top_k",parseInt(a.target.value))),type:"number",min:"0",max:"100",step:"1",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,pHn)])]),S("div",hHn,[e[19]||(e[19]=tr('',1)),S("div",mHn,[S("input",{id:"top_p-range",value:t.$store.state.config.top_p,onInput:e[8]||(e[8]=a=>i.updateValue("top_p",parseFloat(a.target.value))),type:"range",min:"0",max:"1",step:"0.01",class:"range-input flex-grow",disabled:i.isDisabled},null,40,gHn),S("input",{id:"top_p-number",value:t.$store.state.config.top_p,onInput:e[9]||(e[9]=a=>i.updateValue("top_p",parseFloat(a.target.value))),type:"number",min:"0",max:"1",step:"0.01",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,_Hn)])]),S("div",QHn,[e[20]||(e[20]=tr('',1)),S("div",vHn,[S("input",{id:"repeat_penalty-range",value:t.$store.state.config.repeat_penalty,onInput:e[10]||(e[10]=a=>i.updateValue("repeat_penalty",parseFloat(a.target.value))),type:"range",min:"0.5",max:"2.0",step:"0.01",class:"range-input flex-grow",disabled:i.isDisabled},null,40,yHn),S("input",{id:"repeat_penalty-number",value:t.$store.state.config.repeat_penalty,onInput:e[11]||(e[11]=a=>i.updateValue("repeat_penalty",parseFloat(a.target.value))),type:"number",min:"0.5",max:"2.0",step:"0.01",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,bHn)])]),S("div",EHn,[e[21]||(e[21]=tr('',1)),S("div",SHn,[S("input",{id:"repeat_last_n-range",value:t.$store.state.config.repeat_last_n,onInput:e[12]||(e[12]=a=>i.updateValue("repeat_last_n",parseInt(a.target.value))),type:"range",min:"0",max:"512",step:"8",class:"range-input flex-grow",disabled:i.isDisabled},null,40,xHn),S("input",{id:"repeat_last_n-number",value:t.$store.state.config.repeat_last_n,onInput:e[13]||(e[13]=a=>i.updateValue("repeat_last_n",parseInt(a.target.value))),type:"number",min:"0",max:"512",step:"8",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,LHn)])])],2)])}const FO=Ye(Xkn,[["render",CHn],["__scopeId","data-v-99271729"]]);ce.defaults.baseURL="/";const R6={accept:"application/json","Content-Type":"application/json"},AHn={name:"SettingsView",components:{SettingsSidebar:fCn,SystemStatusSettings:OO,SmartRoutingSettings:MO,MainConfigSettings:RO,DataManagementSettings:NO,InternetSettings:DO,ServicesZooSettings:IO,BindingZooSettings:HO,ModelsZooSettings:PO,PersonalitiesZooSettings:VO,FunctionCallsZooSettings:BO,ModelConfigSettings:FO},data(){return{isLoading:!1,settingsChanged:!1,has_updates:!1,activeSection:"system_status",loading_text:"Loading settings...",sections:[{id:"system_status",name:"System Status",icon:"activity",component:OO},{id:"main_config",name:"Main Config",icon:"sliders",component:RO},{id:"smart_routing",name:"Smart Routing",icon:"git-branch",component:MO},{id:"data_management",name:"Data Management",icon:"database",component:NO},{id:"internet",name:"Internet",icon:"wifi",component:DO},{id:"services_zoo",name:"Services Zoo",icon:"server",component:IO},{id:"model_config",name:"Model Parameters",icon:"cpu",component:FO},{id:"binding_zoo",name:"Bindings",icon:"link",component:HO},{id:"models_zoo",name:"Models",icon:"package",component:PO},{id:"personalities_zoo",name:"Personalities",icon:"users",component:VO},{id:"function_calls_zoo",name:"Function Calls",icon:"tool",component:BO}]}},computed:{currentComponent(){const t=this.sections.find(e=>e.id===this.activeSection);return t?t.component:null}},watch:{},methods:{setActiveSection(t){this.settingsChanged?this.$store.state.yesNoDialog.askQuestion("You have unsaved changes in the current section. Do you want to discard them and switch?","Discard Changes","Stay").then(e=>{e&&(this.cancelConfiguration(!1),this.activeSection=t)}):this.activeSection=t},handleSettingUpdate(t){const e=t.key.split(".");let n=this.$store.state.config;try{for(;e.length>1;){const i=e.shift(),s=i.match(/(\w+)\[(\d+)\]/);if(s?n=n[s[1]][parseInt(s[2])]:n=n[i],n==null){console.error("Invalid key path segment:",i,"in",t.key),this.$store.state.toast.showToast(`Error updating setting: Invalid path ${t.key}`,4,!1);return}}const o=e[0],r=o.match(/(\w+)\[(\d+)\]/);if(r){if(n[r[1]]===void 0||n[r[1]][parseInt(r[2])]===void 0){console.error("Invalid final key path segment:",o,"in",t.key),this.$store.state.toast.showToast(`Error updating setting: Invalid path ${t.key}`,4,!1);return}n[r[1]][parseInt(r[2])]=t.value}else{if(n[o]===void 0){console.error("Invalid final key path segment:",o,"in",t.key),this.$store.state.toast.showToast(`Error updating setting: Invalid path ${t.key}`,4,!1);return}n[o]=t.value}console.log("Setting updated in parent:",t.key,t.value),this.settingsChanged=!0}catch(o){console.error("Error processing setting update:",t.key,o),this.$store.state.toast.showToast(`Error updating setting ${t.key}: ${o.message}`,4,!1)}},handleSettingsChanged(){console.log("settings changed"),this.settingsChanged=!0},async refreshConfig(){this.isLoading=!0,this.loading_text="Refreshing configuration...";try{await this.$store.dispatch("refreshConfig"),this.settingsChanged=!1}catch(t){console.error("Failed to refresh config:",t),this.$store.state.toast.showToast("Failed to load configuration.",4,!1)}finally{this.isLoading=!1,Se(()=>{Ce.replace()})}},async applyConfiguration(){this.isLoading=!0,this.loading_text="Applying settings...";try{const t=await ce.post("/apply_settings",{client_id:this.$store.state.client_id,config:this.$store.state.config},{headers:R6});t.data.status?(this.$store.state.toast.showToast("Configuration applied successfully.",4,!0),await this.refreshConfig()):this.$store.state.toast.showToast(`Configuration apply failed: ${t.data.error||"Unknown error"}`,4,!1)}catch(t){console.error("Error applying settings:",t),this.$store.state.toast.showToast(`Error applying settings: ${t.message||t}`,4,!1)}finally{this.isLoading=!1}},async cancelConfiguration(t=!0){t?await this.refreshConfig():this.settingsChanged=!1},async saveConfiguration(){this.isLoading=!0,this.loading_text="Saving settings to disk...";try{const t=await ce.post("/save_settings",{client_id:this.$store.state.client_id},{headers:R6});t.data.status?this.$store.state.toast.showToast("Settings saved successfully.",4,!0):this.$store.state.messageBox.showMessage(`Error saving settings: ${t.data.error||"Unknown error"}`)}catch(t){console.error("Error saving settings:",t),this.$store.state.messageBox.showMessage(`Error saving settings: ${t.message}`)}finally{this.isLoading=!1}},reset_configuration(){this.$store.state.yesNoDialog.askQuestion(`Are you sure? -This will delete your current configuration file and revert to the default.`,"Reset Now","Cancel").then(async t=>{if(t){this.isLoading=!0,this.loading_text="Resetting configuration...";try{const e=await ce.post("/reset_settings",{client_id:this.$store.state.client_id},{headers:R6});e.data.status?(this.$store.state.messageBox.showMessage("Settings reset successfully. The application will now reload."),setTimeout(()=>window.location.reload(),2e3)):(this.$store.state.messageBox.showMessage(`Couldn't reset settings: ${e.data.error||"Unknown error"}`),this.isLoading=!1)}catch(e){console.error("Error resetting settings:",e),this.$store.state.messageBox.showMessage(`Couldn't reset settings: ${e.message}`),this.isLoading=!1}}})},async restart_program(){this.loading_text="Restarting program...",this.isLoading=!0;try{const t=await this.api_post_req("restart_program");t.status?this.$store.state.toast.showToast("Restarting LoLLMs.",4,!0):(this.$store.state.toast.showToast(`Failed to restart: ${t.error||"Unknown error"}`,4,!1),this.isLoading=!1)}catch{this.isLoading=!1}},async clear_uploads(){this.loading_text="Clearing uploads...",this.isLoading=!0;try{const t=await this.api_get_req("clear_uploads");t.status?this.$store.state.toast.showToast("Uploads folder cleared!",4,!0):this.$store.state.toast.showToast(`Failed to clear uploads: ${t.error||"Unknown error"}`,4,!1)}catch{}finally{this.isLoading=!1}},async update_software(){this.loading_text="Updating software...",this.isLoading=!0;try{const t=await this.api_post_req("update_software");this.$store.state.toast.showToast("Update process initiated. LoLLMs might restart.",4,!0),this.has_updates=!1,t.status||(this.$store.state.toast.showToast(`Update command sent, but server reported: ${t.error||"Unknown issue"}`,4,!1),this.isLoading=!1)}catch{this.isLoading=!1}},async updateHasUpdates(){try{const t=await this.api_get_req("check_update");this.has_updates=(t==null?void 0:t.update_availability)||!1,console.log("Update available:",this.has_updates),Se(()=>{Ce.replace()})}catch(t){console.error("Failed to check for updates:",t),this.has_updates=!1}},async api_get_req(t){try{return(await ce.get(`/${t}?client_id=${this.$store.state.client_id}`)).data}catch(e){throw console.error(`API GET request failed for /${t}:`,e),this.$store.state.toast.showToast(`Failed to fetch data from ${t}. ${e.message}`,4,!1),e}},async api_post_req(t,e={}){try{const n={...e,client_id:this.$store.state.client_id};return(await ce.post(`/${t}`,n,{headers:R6})).data}catch(n){throw console.error(`API POST request failed for /${t}:`,n),this.$store.state.toast.showToast(`Failed to post data to ${t}. ${n.message}`,4,!1),n}}},mounted(){this.refreshConfig(),this.updateHasUpdates(),Se(()=>{Ce.replace()})},updated(){Se(()=>{Ce.replace()})}},wHn={class:"flex h-screen w-screen font-sans antialiased theme-bg-primary theme-text-primary"},OHn={class:"flex-1 flex flex-col overflow-hidden"},MHn={class:"flex items-center gap-4 flex-1"},RHn={key:0,class:"flex items-center gap-2 theme-text-warning animate-pulse"},NHn={key:1,class:"flex gap-3 items-center"},DHn={key:0,class:"flex items-center gap-2"},IHn={key:1,class:"flex items-center gap-2 text-sm theme-text-muted"},kHn={class:"flex-1 overflow-x-hidden overflow-y-auto theme-scrollbar p-6"},HHn={key:1,class:"flex justify-center items-center h-full theme-text-secondary"};function PHn(t,e,n,o,r,i){const s=ze("SettingsSidebar");return N(),H("div",wHn,[ne(s,{sections:r.sections,"active-section":r.activeSection,"onUpdate:activeSection":i.setActiveSection,class:"flex-shrink-0 w-64 border-r theme-border-primary theme-bg-secondary overflow-y-auto theme-scrollbar"},null,8,["sections","active-section","onUpdate:activeSection"]),S("div",OHn,[S("div",{class:Ee(["sticky top-0 z-20 flex items-center justify-between p-3 gap-3 shadow-md theme-bg-secondary theme-border-b theme-border-primary",r.isLoading?"opacity-50 pointer-events-none":""])},[S("div",MHn,[r.settingsChanged&&!r.isLoading?(N(),H("div",RHn,e[6]||(e[6]=[S("i",{"data-feather":"alert-circle",class:"w-5 h-5"},null,-1),S("span",{class:"text-sm font-medium"},"Settings have changed",-1)]))):Z("",!0),!r.settingsChanged&&!r.isLoading?(N(),H("div",NHn,[S("button",{title:"Reset configuration to default",class:"icon-button theme-text-secondary hover:theme-text-primary",onClick:e[0]||(e[0]=a=>i.reset_configuration())},e[7]||(e[7]=[S("i",{"data-feather":"refresh-ccw"},null,-1)])),S("button",{title:"Restart program",class:"icon-button theme-text-secondary hover:theme-text-primary",onClick:e[1]||(e[1]=a=>i.restart_program())},e[8]||(e[8]=[S("i",{"data-feather":"power"},null,-1)])),S("button",{title:"Clear uploads folder",class:"icon-button theme-text-secondary hover:theme-text-danger",onClick:e[2]||(e[2]=a=>i.clear_uploads())},e[9]||(e[9]=[S("i",{"data-feather":"trash-2"},null,-1)])),r.has_updates?(N(),H("button",{key:0,title:"Upgrade program",class:"icon-button theme-text-success hover:theme-text-primary relative",onClick:e[3]||(e[3]=a=>i.update_software())},e[10]||(e[10]=[S("i",{"data-feather":"arrow-up-circle"},null,-1),S("span",{class:"absolute top-0 right-0 block h-2 w-2 rounded-full theme-bg-danger ring-2 theme-ring-bg"},null,-1)]))):Z("",!0)])):Z("",!0)]),r.settingsChanged&&!r.isLoading?(N(),H("div",DHn,[S("button",{class:"flex items-center gap-2 px-3 py-1.5 rounded theme-button-success duration-150 active:scale-95",title:"Apply changes",type:"button",onClick:e[4]||(e[4]=oe(a=>i.applyConfiguration(),["stop"]))},e[11]||(e[11]=[S("span",{class:"font-medium text-sm"},"Apply",-1),S("i",{"data-feather":"check",class:"w-4 h-4"},null,-1)])),S("button",{class:"flex items-center gap-2 px-3 py-1.5 rounded theme-button-danger duration-150 active:scale-95",title:"Cancel changes",type:"button",onClick:e[5]||(e[5]=oe(a=>i.cancelConfiguration(),["stop"]))},e[12]||(e[12]=[S("span",{class:"font-medium text-sm"},"Cancel",-1),S("i",{"data-feather":"x",class:"w-4 h-4"},null,-1)]))])):Z("",!0),r.isLoading?(N(),H("div",IHn,[S("span",null,J(r.loading_text),1),e[13]||(e[13]=S("svg",{"aria-hidden":"true",class:"w-5 h-5 animate-spin theme-spinner-color",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1)),e[14]||(e[14]=S("span",{class:"sr-only"},"Loading...",-1))])):Z("",!0)],2),S("main",kHn,[t.$store.state.config?(N(),ot(Vc(i.currentComponent),{key:0,loading:r.isLoading,"settings-changed":r.settingsChanged,onSettingsChanged:i.handleSettingsChanged,api_get_req:i.api_get_req,api_post_req:i.api_post_req,refresh_config:i.refreshConfig,show_toast:(a,l,c)=>t.$store.state.toast.showToast(a,l,c),show_yes_no_dialog:(a,l,c)=>t.$store.state.yesNoDialog.askQuestion(a,l,c),show_message_box:a=>t.$store.state.messageBox.showMessage(a),client_id:t.$store.state.client_id,show_universal_form:(a,l,c,u)=>t.$store.state.universalForm.showForm(a,l,c,u)},null,40,["loading","settings-changed","onSettingsChanged","api_get_req","api_post_req","refresh_config","show_toast","show_yes_no_dialog","show_message_box","client_id","show_universal_form"])):(N(),H("div",HHn,e[15]||(e[15]=[S("p",null,"Loading configuration...",-1)])))])])])}const $Hn=Ye(AHn,[["render",PHn],["__scopeId","data-v-9889ee74"]]),VHn={components:{ClipBoardTextInput:hh,Card:mh},data(){return{dataset_path:"",max_length:1024,batch_size:4,lr:5e-5,num_epochs:2,selectedFolder:"",selectedDataset:""}},methods:{submitForm(){const t={model_name:this.selectedModel,dataset_file:this.selectedDataset,max_length:this.max_length,batch_size:this.batch_size,lr:this.lr,num_epochs:this.num_epochs,output_dir:this.selectedFolder};ce.post("/start_training",t).then(e=>{})},openFolderSelector(){this.$refs.folder_selector.click()},selectOutputDirectory(t){var n;console.log("here");const e=(n=t.target.files[0])==null?void 0:n.path;console.log(e),e&&(this.selectedFolder=e)},selectDataset(t){const e=t.target.files;e.length>0&&(this.selectedDataset=e[0])}},computed:{selectedModel:{get(){return this.$store.state.selectedModel}},models:{get(){return this.$store.state.modelsArr}}},watch:{model_name(t){console.log("watching model_name",t),this.$refs.clipboardInput.inputValue=t}}},BHn={key:0,class:"container overflow-y-scroll flex flex-col no-scrollbar shadow-lg p-10 pt-2 bg-bg-light-tone dark:bg-bg-dark-tone"},FHn={class:"mb-4"},UHn=["value"],qHn={class:"mb-4"},GHn={class:"mb-4"},jHn={class:"mb-4"},zHn={class:"mb-4"},YHn={class:"mb-4"},WHn={class:"mb-4"},KHn={key:1};function ZHn(t,e,n,o,r,i){const s=ze("Card"),a=ze("ClipBoardTextInput");return i.selectedModel!==null&&i.selectedModel.toLowerCase().includes("gptq")?(N(),H("div",BHn,[S("form",{onSubmit:e[2]||(e[2]=oe((...l)=>i.submitForm&&i.submitForm(...l),["prevent"])),class:""},[ne(s,{title:"Training configuration",isHorizontal:!0,disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>[ne(s,{title:"Model",class:"",isHorizontal:!1},{default:Ge(()=>[S("div",FHn,[e[3]||(e[3]=S("label",{for:"model_name",class:"text-sm"},"Model Name:",-1)),Le(S("select",{"onUpdate:modelValue":e[0]||(e[0]=l=>i.selectedModel=l),onChange:e[1]||(e[1]=(...l)=>t.setModel&&t.setModel(...l)),class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},[(N(!0),H(xe,null,Pe(i.models,l=>(N(),H("option",{key:l,value:l},J(l),9,UHn))),128))],544),[[Dr,i.selectedModel]])])]),_:1}),ne(s,{title:"Data",isHorizontal:!1},{default:Ge(()=>[S("div",qHn,[e[4]||(e[4]=S("label",{for:"dataset_path",class:"text-sm"},"Dataset:",-1)),ne(a,{id:"model_path",inputType:"file",value:r.dataset_path,onchange:"selectDataset()"},null,8,["value"])])]),_:1}),ne(s,{title:"Training",isHorizontal:!1},{default:Ge(()=>[S("div",GHn,[e[5]||(e[5]=S("label",{for:"lr",class:"text-sm"},"Learning Rate:",-1)),ne(a,{id:"model_path",inputType:"integer",value:r.lr},null,8,["value"])]),S("div",jHn,[e[6]||(e[6]=S("label",{for:"num_epochs",class:"text-sm"},"Number of Epochs:",-1)),ne(a,{id:"model_path",inputType:"integer",value:r.num_epochs},null,8,["value"])]),S("div",zHn,[e[7]||(e[7]=S("label",{for:"max_length",class:"text-sm"},"Max Length:",-1)),ne(a,{id:"model_path",inputType:"integer",value:r.max_length},null,8,["value"])]),S("div",YHn,[e[8]||(e[8]=S("label",{for:"batch_size",class:"text-sm"},"Batch Size:",-1)),ne(a,{id:"model_path",inputType:"integer",value:r.batch_size},null,8,["value"])])]),_:1}),ne(s,{title:"Output",isHorizontal:!1},{default:Ge(()=>[S("div",WHn,[e[9]||(e[9]=S("label",{for:"output_dir",class:"text-sm"},"Output Directory:",-1)),ne(a,{id:"model_path",inputType:"text",value:t.output_dir},null,8,["value"])])]),_:1})]),_:1}),ne(s,{disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>e[10]||(e[10]=[S("button",{class:"bg-blue-500 text-white px-4 py-2 rounded"},"Start training",-1)])),_:1})],32)])):(N(),H("div",KHn,[ne(s,{title:"Info",class:"",isHorizontal:!1},{default:Ge(()=>e[11]||(e[11]=[Re(" Only GPTQ models are supported for QLora fine tuning. Please select a GPTQ compatible binding. ")])),_:1})]))}const XHn=Ye(VHn,[["render",ZHn]]),JHn={components:{ClipBoardTextInput:hh,Card:mh},data(){return{model_name:"jondurbin/airoboros-7b-gpt4",tokenizer_name:"jondurbin/airoboros-7b-gpt4",dataset_path:"",max_length:1024,batch_size:4,lr:5e-5,num_epochs:2,selectedFolder:"",selectedDatasetPath:""}},methods:{submitForm(){this.model_name,this.tokenizer_name,this.selectedDatasetPath,this.max_length,this.batch_size,this.lr,this.num_epochs,this.selectedFolder},openFolderSelector(){this.$refs.folder_selector.click()},selectOutputDirectory(t){var n;console.log("here");const e=(n=t.target.files[0])==null?void 0:n.path;console.log(e),e&&(this.selectedFolder=e)},selectDatasetPath(t){const e=t.target.files;e.length>0&&(this.selectedDatasetPath=e[0].webkitRelativePath)}}},ePn={class:"container overflow-y-scroll flex flex-col no-scrollbar shadow-lg p-10 pt-2 bg-bg-light-tone dark:bg-bg-dark-tone"},tPn={class:"mb-4"},nPn={class:"mb-4"};function rPn(t,e,n,o,r,i){const s=ze("ClipBoardTextInput"),a=ze("Card");return N(),H("div",ePn,[S("form",{onSubmit:e[0]||(e[0]=oe((...l)=>i.submitForm&&i.submitForm(...l),["prevent"])),class:"max-w-md mx-auto"},[ne(a,{title:"Quantizing configuration",isHorizontal:!0,disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>[ne(a,{title:"Model",class:"",isHorizontal:!1},{default:Ge(()=>[S("div",tPn,[e[1]||(e[1]=S("label",{for:"model_name",class:"text-sm"},"Model Name:",-1)),ne(s,{id:"model_path",inputType:"text",value:r.model_name},null,8,["value"])]),S("div",nPn,[e[2]||(e[2]=S("label",{for:"tokenizer_name",class:"text-sm"},"Tokenizer Name:",-1)),ne(s,{id:"model_path",inputType:"text",value:r.tokenizer_name},null,8,["value"])])]),_:1})]),_:1}),ne(a,{disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>e[3]||(e[3]=[S("button",{type:"submit",class:"bg-blue-500 text-white px-4 py-2 rounded"},"Quantize LLM",-1)])),_:1})],32)])}const iPn=Ye(JHn,[["render",rPn]]),oPn={name:"Discussion",emits:["delete","select","openFolder","editTitle","makeTitle","checked"],props:{id:Number,title:String,selected:Boolean,loading:Boolean,isCheckbox:Boolean,checkBoxValue:Boolean,openfolder_enabled:Boolean},setup(){},data(){return{showConfirmation:!1,editTitleMode:!1,makeTitleMode:!1,deleteMode:!1,openFolder:!1,editTitle:!1,newTitle:String,checkBoxValue_local:!1}},methods:{cancel(){this.editTitleMode=!1,this.makeTitleMode=!1,this.deleteMode=!1,this.showConfirmation=!1},deleteEvent(){this.showConfirmation=!1,this.$emit("delete")},selectEvent(){this.$emit("select")},openFolderEvent(){this.$emit("openFolder",{id:this.id})},editTitleEvent(){this.editTitle=!1,this.editTitleMode=!1,this.makeTitleMode=!1,this.deleteMode=!1,this.showConfirmation=!1,this.$emit("editTitle",{title:this.newTitle,id:this.id})},makeTitleEvent(){this.$emit("makeTitle",{id:this.id}),this.showConfirmation=!1},chnageTitle(t){this.newTitle=t},checkedChangeEvent(t,e){this.$emit("checked",t,e)}},mounted(){this.newTitle=this.title,Se(()=>{Ce.replace()})},watch:{showConfirmation(){Se(()=>{Ce.replace()})},editTitleMode(t){this.showConfirmation=t,this.editTitle=t,t&&Se(()=>{try{this.$refs.titleBox.focus()}catch{}})},deleteMode(t){this.showConfirmation=t,t&&Se(()=>{this.$refs.titleBox.focus()})},makeTitleMode(t){this.showConfirmation=t},checkBoxValue(t,e){this.checkBoxValue_local=t}}},sPn=["id"],aPn={class:"flex flex-row items-center gap-2"},lPn={key:0},cPn={class:"flex flex-row items-center w-full"},uPn=["title"],dPn=["value"],TPn={class:"absolute top-0 right-0 h-full flex items-center group"},fPn={class:"discussion-toolbox"},pPn={key:0,class:"flex gap-2 items-center"},hPn={key:1,class:"flex gap-2 items-center"};function mPn(t,e,n,o,r,i){return N(),H("div",{class:Ee([n.selected?"discussion-hilighted":"discussion","m-1 py-2 flex flex-row sm:flex-row flex-wrap flex-shrink-0 items-center rounded-md duration-75 cursor-pointer relative w-[15rem]"]),id:"dis-"+n.id,onClick:e[13]||(e[13]=oe(s=>i.selectEvent(),["stop"]))},[S("div",aPn,[n.isCheckbox?(N(),H("div",lPn,[Le(S("input",{type:"checkbox",class:"w-4 h-4 text-blue-600 bg-gray-100 border-gray-300 rounded focus:ring-blue-500 dark:focus:ring-blue-600 dark:ring-offset-gray-700 dark:focus:ring-offset-gray-700 focus:ring-2 dark:bg-gray-600 dark:border-gray-500",onClick:e[0]||(e[0]=oe(()=>{},["stop"])),"onUpdate:modelValue":e[1]||(e[1]=s=>r.checkBoxValue_local=s),onInput:e[2]||(e[2]=s=>i.checkedChangeEvent(s,n.id))},null,544),[[vl,r.checkBoxValue_local]])])):Z("",!0),n.selected?(N(),H("div",{key:1,class:Ee(["min-h-full w-2 rounded-xl self-stretch",n.loading?"animate-bounce bg-accent":"bg-secondary"])},null,2)):Z("",!0),n.selected?Z("",!0):(N(),H("div",{key:2,class:Ee(["w-2",n.loading?"min-h-full w-2 rounded-xl self-stretch animate-bounce bg-accent":""])},null,2))]),S("div",cPn,[r.editTitle?Z("",!0):(N(),H("p",{key:0,title:n.title,class:"line-clamp-1 w-full ml-1 -mx-5 text-xs"},J(n.title?n.title==="untitled"?"New discussion":n.title:"New discussion"),9,uPn)),r.editTitle?(N(),H("input",{key:1,type:"text",id:"title-box",ref:"titleBox",class:"bg-bg-light dark:bg-bg-dark rounded-md border-0 w-full -m-1 p-1",value:n.title,required:"",onKeydown:[e[3]||(e[3]=Qn(oe(s=>i.editTitleEvent(),["exact"]),["enter"])),e[4]||(e[4]=Qn(oe(s=>r.editTitleMode=!1,["exact"]),["esc"]))],onInput:e[5]||(e[5]=s=>i.chnageTitle(s.target.value)),onClick:e[6]||(e[6]=oe(()=>{},["stop"]))},null,40,dPn)):Z("",!0)]),S("div",TPn,[S("div",fPn,[r.showConfirmation?(N(),H("div",pPn,[S("button",{class:"text-2xl hover:text-red-600 duration-75 active:scale-90",title:"Discard title changes",type:"button",onClick:e[7]||(e[7]=oe(s=>i.cancel(),["stop"]))},e[14]||(e[14]=[S("i",{"data-feather":"x"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Confirm title changes",type:"button",onClick:e[8]||(e[8]=oe(s=>r.editTitleMode?i.editTitleEvent():r.deleteMode?i.deleteEvent():i.makeTitleEvent(),["stop"]))},e[15]||(e[15]=[S("i",{"data-feather":"check"},null,-1)]))])):Z("",!0),r.showConfirmation?Z("",!0):(N(),H("div",hPn,[n.openfolder_enabled?(N(),H("button",{key:0,class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Open folder",type:"button",onClick:e[9]||(e[9]=oe(s=>i.openFolderEvent(),["stop"]))},e[16]||(e[16]=[S("i",{"data-feather":"folder"},null,-1)]))):Z("",!0),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Make a title",type:"button",onClick:e[10]||(e[10]=oe(s=>r.makeTitleMode=!0,["stop"]))},e[17]||(e[17]=[S("i",{"data-feather":"type"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Edit title",type:"button",onClick:e[11]||(e[11]=oe(s=>r.editTitleMode=!0,["stop"]))},e[18]||(e[18]=[S("i",{"data-feather":"edit-2"},null,-1)])),S("button",{class:"text-2xl hover:text-red-600 duration-75 active:scale-90",title:"Remove discussion",type:"button",onClick:e[12]||(e[12]=oe(s=>r.deleteMode=!0,["stop"]))},e[19]||(e[19]=[S("i",{"data-feather":"trash"},null,-1)]))]))])])],10,sPn)}const Ch=Ye(oPn,[["render",mPn],["__scopeId","data-v-2b3580ce"]]),gPn={data(){return{id:0,loading:!1,isCheckbox:!1,isVisible:!1,categories:[],titles:[],content:"",searchQuery:""}},components:{Discussion:Ch,MarkdownRenderer:Q0},props:{host:{type:String,required:!1,default:"http://localhost:9600"}},methods:{showSkillsLibrary(){this.isVisible=!0,this.fetchTitles()},closeComponent(){this.isVisible=!1},fetchCategories(){ce.post("/get_skills_library_categories",{client_id:this.$store.state.client_id}).then(t=>{this.categories=t.data.categories}).catch(t=>{console.error("Error fetching categories:",t)})},fetchTitles(){console.log("Fetching categories"),ce.post("/get_skills_library_titles",{client_id:this.$store.state.client_id}).then(t=>{this.titles=t.data.titles,console.log("titles recovered")}).catch(t=>{console.error("Error fetching titles:",t)})},fetchContent(t){console.log("loading skill",t),ce.post("/get_skills_library_content",{client_id:this.$store.state.client_id,skill_id:t}).then(e=>{const n=e.data.contents[0];this.id=n.id,this.content=n.content}).catch(e=>{console.error("Error fetching content:",e)})},deleteCategory(t){console.log("Delete category")},editCategory(t){console.log("Edit category")},checkUncheckCategory(t){console.log("Unchecked category")},deleteSkill(t){console.log("Delete skill ",t),ce.post("/delete_skill",{client_id:this.$store.state.client_id,skill_id:t}).then(()=>{this.fetchTitles()})},editTitle(t){ce.post("/edit_skill_title",{client_id:this.$store.state.client_id,skill_id:t,title:t}).then(()=>{this.fetchTitles()}),console.log("Edit title")},makeTitle(t){console.log("Make title")},checkUncheckTitle(t){},searchSkills(){}}},_Pn={id:"leftPanel",class:"flex flex-row h-full flex-grow shadow-lg rounded"},QPn={class:"w-[15rem] z-10 top-0 bg-bg-light-tone dark:bg-bg-dark-tone shadow-md overflow-y-scroll no-scrollbar"},vPn={classclass:"absolute flex flex-col no-scrollbar shadow-lg w-[15rem] bg-bg-light-tone dark:bg-bg-dark-tone top-20 left-20 bottom-20 right-20 bg-bg-light shadow-lg rounded"},yPn={class:"z-0 flex flex-col flex-grow overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"};function bPn(t,e,n,o,r,i){const s=ze("Discussion"),a=ze("MarkdownRenderer");return N(),H("div",{class:Ee([{hidden:!r.isVisible},"absolute flex flex-col no-scrollbar shadow-lg bg-bg-light dark:bg-bg-dark top-20 left-20 bottom-20 right-20 shadow-lg rounded"])},[S("div",_Pn,[S("div",QPn,[Le(S("input",{type:"search",id:"default-search",class:"block w-full h-8 px-8 text-sm border border-gray-300 rounded-md bg-bg-light focus:ring-1 focus:ring-secondary focus:border-secondary dark:bg-bg-dark dark:border-gray-600 dark:placeholder-gray-400 dark:focus:ring-secondary dark:focus:border-secondary transition-all duration-200",placeholder:"Search discussions...",title:"Filter skills by title","onUpdate:modelValue":e[0]||(e[0]=l=>r.searchQuery=l),onKeyup:e[1]||(e[1]=Qn((...l)=>i.searchSkills&&i.searchSkills(...l),["enter"]))},null,544),[[Je,r.searchQuery]]),S("div",vPn,[e[3]||(e[3]=S("h2",{class:"text-xl font-bold m-4"},"Titles",-1)),r.titles.length>0?(N(),ot(w2,{key:0,name:"list"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(r.titles,l=>(N(),ot(s,{key:l.id,id:l.id,title:l.title,selected:i.fetchContent(l.id),loading:r.loading,isCheckbox:r.isCheckbox,checkBoxValue:!1,openfolder_enabled:!1,onSelect:c=>i.fetchContent(l.id),onDelete:c=>i.deleteSkill(l.id),onEditTitle:i.editTitle,onMakeTitle:i.makeTitle,onChecked:i.checkUncheckTitle},null,8,["id","title","selected","loading","isCheckbox","onSelect","onDelete","onEditTitle","onMakeTitle","onChecked"]))),128))]),_:1})):Z("",!0)])]),S("div",yPn,[e[4]||(e[4]=S("h2",{class:"text-xl font-bold m-4"},"Content",-1)),ne(a,{host:n.host,"markdown-text":r.content,message_id:r.id,discussion_id:r.id,client_id:this.$store.state.client_id},null,8,["host","markdown-text","message_id","discussion_id","client_id"])])]),S("button",{onClick:e[2]||(e[2]=(...l)=>i.closeComponent&&i.closeComponent(...l)),class:"absolute top-2 right-2 bg-red-500 text-white rounded px-2 py-1 hover:bg-red-300"},"Close")],2)}const Dk=Ye(gPn,[["render",bPn]]),EPn={props:{htmlContent:{type:String,required:!0}}},SPn=["innerHTML"];function xPn(t,e,n,o,r,i){return N(),H("div",{class:"w-full h-full overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary",innerHTML:n.htmlContent},null,8,SPn)}const LPn=Ye(EPn,[["render",xPn]]),CPn={name:"JsonNode",props:{data:{required:!0},label:{type:String,default:""},depth:{type:Number,default:0}},data(){return{expanded:!0}},computed:{isObject(){return this.data!==null&&typeof this.data=="object"},isArray(){return Array.isArray(this.data)}},methods:{toggle(){this.expanded=!this.expanded},getValueType(t){return t===null?"null":typeof t},formatValue(t){return t===null?"null":typeof t=="string"?`"${t}"`:t}}},APn={class:"json-tree"},wPn={key:0,class:"tree-node"},OPn={class:"toggle-icon"},MPn={class:"key"},RPn={class:"bracket"},NPn={key:0,class:"node-content"},DPn={key:1,class:"bracket-close"},IPn={key:1,class:"tree-leaf"},kPn={key:0,class:"key"};function HPn(t,e,n,o,r,i){const s=ze("json-node",!0);return N(),H("div",APn,[i.isObject?(N(),H("div",wPn,[S("div",{class:"node-label",onClick:e[0]||(e[0]=(...a)=>i.toggle&&i.toggle(...a))},[S("span",OPn,J(r.expanded?"▼":"▶"),1),S("span",MPn,J(n.label),1),S("span",RPn,J(i.isArray?"[":"{"),1)]),r.expanded?(N(),H("div",NPn,[(N(!0),H(xe,null,Pe(n.data,(a,l)=>(N(),H("div",{key:l,class:"node-item"},[ne(s,{data:a,label:l,depth:n.depth+1},null,8,["data","label","depth"])]))),128))])):Z("",!0),r.expanded?(N(),H("div",DPn,J(i.isArray?"]":"}"),1)):Z("",!0)])):(N(),H("div",IPn,[n.label?(N(),H("span",kPn,J(n.label)+":",1)):Z("",!0),S("span",{class:Ee(["value",i.getValueType(n.data)])},J(i.formatValue(n.data)),3)]))])}const PPn=Ye(CPn,[["render",HPn],["__scopeId","data-v-0535817b"]]),$Pn={name:"JsonViewer",components:{JsonNode:PPn},props:{data:{required:!0},title:{type:String,default:"JSON Data"}},data(){return{expanded:!0}},computed:{parsedData(){if(typeof this.data=="string")try{return JSON.parse(this.data)}catch{return{error:"Invalid JSON"}}return this.data}},methods:{toggle(){this.expanded=!this.expanded}}},VPn={class:"json-viewer"},BPn={class:"toggle-icon"},FPn={class:"title"},UPn={key:0,class:"viewer-content"};function qPn(t,e,n,o,r,i){const s=ze("json-node");return N(),H("div",VPn,[S("div",{class:"viewer-header",onClick:e[0]||(e[0]=(...a)=>i.toggle&&i.toggle(...a))},[S("span",BPn,J(r.expanded?"▼":"▶"),1),S("span",FPn,J(n.title),1)]),r.expanded?(N(),H("div",UPn,[ne(s,{data:i.parsedData},null,8,["data"])])):Z("",!0)])}const GPn=Ye($Pn,[["render",qPn],["__scopeId","data-v-6fbe5047"]]),jPn={props:{done:Boolean,text:String,status:Boolean,description:String}},zPn={class:"flex items-start gap-2 w-full"},YPn={class:"w-4 h-4 flex-shrink-0"},WPn={key:0,class:"w-4 h-4 text-green-500 dark:text-green-400",viewBox:"0 0 24 24",fill:"currentColor"},KPn={key:1,class:"w-4 h-4 text-red-500 dark:text-red-400",viewBox:"0 0 24 24",fill:"currentColor"},ZPn={key:1,class:"w-4 h-4 border-2 border-t-primary rounded-full animate-spin"},XPn={class:"min-w-0"},JPn={class:"text-sm text-gray-700 dark:text-gray-200 truncate"},e$n={key:0,class:"text-xs text-gray-500 dark:text-gray-400 truncate"};function t$n(t,e,n,o,r,i){return N(),H("div",{class:Ee(["flex items-center p-2 rounded transition-colors duration-200",[n.done?"bg-opacity-5":"bg-opacity-3",n.status?"bg-green-50 dark:bg-green-900/20":"bg-gray-50 dark:bg-gray-800/20"]])},[S("div",zPn,[S("div",YPn,[n.done?(N(),H(xe,{key:0},[n.status?(N(),H("svg",WPn,e[0]||(e[0]=[S("path",{d:"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z"},null,-1)]))):(N(),H("svg",KPn,e[1]||(e[1]=[S("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"},null,-1)])))],64)):(N(),H("div",ZPn))]),S("div",XPn,[S("div",JPn,J(n.text||"No text provided"),1),n.description?(N(),H("div",e$n,J(n.description),1)):Z("",!0)])])],2)}const n$n=Ye(jPn,[["render",t$n],["__scopeId","data-v-2cb174d6"]]),r$n="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='iso-8859-1'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20fill='%23000000'%20height='800px'%20width='800px'%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20viewBox='0%200%20480%20480'%20xml:space='preserve'%3e%3cg%3e%3cg%3e%3cg%3e%3cpath%20d='M240,0C107.664,0,0,107.664,0,240s107.664,240,240,240s240-107.664,240-240S372.336,0,240,0z%20M240,460%20c-121.309,0-220-98.691-220-220S118.691,20,240,20s220,98.691,220,220S361.309,460,240,460z'/%3e%3cpath%20d='M410,194.999h-27.058c-2.643-8.44-6-16.56-10.03-24.271l19.158-19.158c3.776-3.775,5.854-8.79,5.854-14.121%20c0-5.332-2.08-10.347-5.854-14.121l-35.399-35.399c-3.775-3.775-8.79-5.854-14.122-5.854c-5.331,0-10.346,2.079-14.121,5.854%20l-19.158,19.158c-7.711-4.03-15.832-7.386-24.271-10.03V70c0-11.028-8.972-20-20-20h-50c-11.028,0-20,8.972-20,20v27.058%20c-8.44,2.643-16.56,6-24.271,10.03L151.57,87.93c-3.775-3.776-8.79-5.854-14.121-5.854c-5.332,0-10.347,2.08-14.121,5.854%20l-35.399,35.399c-3.775,3.775-5.854,8.79-5.854,14.122c0,5.331,2.079,10.346,5.854,14.121l19.158,19.158%20c-4.03,7.711-7.386,15.832-10.03,24.271H70c-11.028,0-20,8.972-20,20v50c0,11.028,8.972,20,20,20h27.057%20c2.643,8.44,6,16.56,10.03,24.271L87.929,328.43c-3.776,3.775-5.854,8.79-5.854,14.121c0,5.332,2.08,10.347,5.854,14.121%20l35.399,35.399c3.775,3.775,8.79,5.854,14.122,5.854c5.331,0,10.346-2.079,14.121-5.854l19.158-19.158%20c7.711,4.03,15.832,7.386,24.271,10.03V410c0,11.028,8.972,20,20,20h50c11.028,0,20-8.972,20.001-20v-27.058%20c8.44-2.643,16.56-6,24.271-10.03l19.158,19.158c3.775,3.776,8.79,5.854,14.121,5.854c5.332,0,10.347-2.08,14.121-5.854%20l35.399-35.399c3.775-3.775,5.854-8.79,5.854-14.122c0-5.331-2.079-10.346-5.854-14.121l-19.158-19.158%20c4.03-7.711,7.386-15.832,10.03-24.271H410c11.028,0,20-8.972,20-20v-50C430,203.971,421.028,194.999,410,194.999z%20M410,264.998%20h-34.598c-4.562,0-8.544,3.086-9.684,7.503c-3.069,11.901-7.716,23.133-13.813,33.387c-2.337,3.931-1.71,8.948,1.524,12.182%20l24.5,24.457l-35.357,35.4l-24.5-24.5c-3.236-3.235-8.253-3.86-12.182-1.524c-10.254,6.097-21.487,10.745-33.387,13.813%20c-4.417,1.14-7.503,5.122-7.503,9.684V410h-50v-34.599c0-4.562-3.086-8.544-7.503-9.684%20c-11.901-3.069-23.133-7.716-33.387-13.813c-1.587-0.944-3.353-1.404-5.107-1.404c-2.586,0-5.147,1.002-7.073,2.931l-24.457,24.5%20l-35.4-35.357l24.5-24.5c3.234-3.235,3.861-8.251,1.524-12.182c-6.097-10.254-10.745-21.487-13.813-33.387%20c-1.14-4.417-5.122-7.503-9.684-7.503H70v-50h34.596c4.562,0,8.544-3.086,9.684-7.503c3.069-11.901,7.716-23.133,13.813-33.387%20c2.337-3.931,1.71-8.948-1.524-12.182l-24.5-24.457l35.357-35.4l24.5,24.5c3.236,3.235,8.253,3.861,12.182,1.524%20c10.254-6.097,21.487-10.745,33.387-13.813c4.417-1.14,7.503-5.122,7.503-9.684V70h50v34.596c0,4.562,3.086,8.544,7.503,9.684%20c11.901,3.069,23.133,7.716,33.387,13.813c3.929,2.337,8.947,1.709,12.182-1.524l24.457-24.5l35.4,35.357l-24.5,24.5%20c-3.234,3.235-3.861,8.251-1.524,12.182c6.097,10.254,10.745,21.487,13.813,33.387c1.14,4.417,5.122,7.503,9.684,7.503H410%20V264.998z'/%3e%3cpath%20d='M331.585,292.475l-40-35l-13.17,15.051L298.386,290H240c-27.57,0-50-22.43-50-50h-20c0,38.598,31.402,70,70,70h58.386%20l-19.971,17.475l13.17,15.051l40-35c2.17-1.898,3.415-4.642,3.415-7.525S333.755,294.373,331.585,292.475z'/%3e%3cpath%20d='M201.585,207.473L181.614,190H240c27.57,0,50,22.43,50,50h20c0-38.598-31.402-70-70-70h-58.386l19.971-17.475%20l-13.17-15.051l-40,35c-2.17,1.898-3.415,4.642-3.415,7.525s1.245,5.627,3.415,7.525l40,35L201.585,207.473z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3canimateTransform%20attributeName='transform'%20attributeType='XML'%20type='rotate'%20from='0%20240%20240'%20to='360%20240%20240'%20dur='10s'%20repeatCount='indefinite'%20/%3e%3c/svg%3e",i$n="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2050%2050'%3e%3cpath%20d='M25%200C11.6%200%200%2011.6%200%2025s11.6%2025%2025%2025%2025-11.6%2025-25S40.4%200%2025%200zm0%2048C12.8%2048%202%2039.2%202%2025S12.8%202%2025%202s24%2010.8%2024%2024-10.8%2024-24%2024zm-4-33l-8%208%2018%2018%2030-30-8-8-22%2022L22%2016'%20fill='green'/%3e%3c/svg%3e",o$n="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%3e%3cpath%20d='M0%200h24v24H0z'%20fill='none'/%3e%3cpath%20d='M19%206.41L17.59%205%2012%2010.59%206.41%205%205%206.41%2010.59%2012%205%2017.59%206.41%2019%2012%2013.41%2017.59%2019%2019%2017.59%2013.41%2012%2019%206.41z'%20fill='red'/%3e%3c/svg%3e",Ik="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20version='1.1'%20width='256'%20height='256'%20viewBox='0%200%20256%20256'%20xml:space='preserve'%3e%3cdefs%3e%3c/defs%3e%3cg%20style='stroke:%20white;%20stroke-width:%202px;%20stroke-dasharray:%20none;%20stroke-linecap:%20butt;%20stroke-linejoin:%20miter;%20stroke-miterlimit:%2010;%20fill:%20none;%20fill-rule:%20nonzero;%20opacity:%201;'%20transform='translate(1.4065934065934016%201.4065934065934016)%20scale(2.81%202.81)'%20%3e%3cpath%20d='M%2089.999%203.075%20C%2090%203.02%2090%202.967%2089.999%202.912%20c%20-0.004%20-0.134%20-0.017%20-0.266%20-0.038%20-0.398%20c%20-0.007%20-0.041%20-0.009%20-0.081%20-0.018%20-0.122%20c%20-0.034%20-0.165%20-0.082%20-0.327%20-0.144%20-0.484%20c%20-0.018%20-0.046%20-0.041%20-0.089%20-0.061%20-0.134%20c%20-0.053%20-0.119%20-0.113%20-0.234%20-0.182%20-0.346%20C%2089.528%201.382%2089.5%201.336%2089.469%201.29%20c%20-0.102%20-0.147%20-0.212%20-0.288%20-0.341%20-0.417%20c%20-0.13%20-0.13%20-0.273%20-0.241%20-0.421%20-0.344%20c%20-0.042%20-0.029%20-0.085%20-0.056%20-0.129%20-0.082%20c%20-0.118%20-0.073%20-0.239%20-0.136%20-0.364%20-0.191%20c%20-0.039%20-0.017%20-0.076%20-0.037%20-0.116%20-0.053%20c%20-0.161%20-0.063%20-0.327%20-0.113%20-0.497%20-0.147%20c%20-0.031%20-0.006%20-0.063%20-0.008%20-0.094%20-0.014%20c%20-0.142%20-0.024%20-0.285%20-0.038%20-0.429%20-0.041%20C%2087.03%200%2086.983%200%2086.936%200.001%20c%20-0.141%200.003%20-0.282%200.017%20-0.423%200.041%20c%20-0.035%200.006%20-0.069%200.008%20-0.104%200.015%20c%20-0.154%200.031%20-0.306%200.073%20-0.456%200.129%20L%201.946%2031.709%20c%20-1.124%200.422%20-1.888%201.473%20-1.943%202.673%20c%20-0.054%201.199%200.612%202.316%201.693%202.838%20l%2034.455%2016.628%20l%2016.627%2034.455%20C%2053.281%2089.344%2054.334%2090%2055.481%2090%20c%200.046%200%200.091%20-0.001%200.137%20-0.003%20c%201.199%20-0.055%202.251%20-0.819%202.673%20-1.943%20L%2089.815%204.048%20c%200.056%20-0.149%200.097%20-0.3%200.128%20-0.453%20c%200.008%20-0.041%200.011%20-0.081%200.017%20-0.122%20C%2089.982%203.341%2089.995%203.208%2089.999%203.075%20z%20M%2075.086%2010.672%20L%2037.785%2047.973%20L%2010.619%2034.864%20L%2075.086%2010.672%20z%20M%2055.136%2079.381%20L%2042.027%2052.216%20l%2037.302%20-37.302%20L%2055.136%2079.381%20z'%20style='stroke:%20none;%20stroke-width:%201;%20stroke-dasharray:%20none;%20stroke-linecap:%20butt;%20stroke-linejoin:%20miter;%20stroke-miterlimit:%2010;%20fill:%20rgb(0,0,0);%20fill-rule:%20nonzero;%20opacity:%201;'%20transform='%20matrix(1%200%200%201%200%200)%20'%20stroke-linecap='round'%20/%3e%3ccircle%20cx='75'%20cy='75'%20r='15'%20fill='%23008000'/%3e%3cpath%20d='M75,60%20A15,15%200%200,1%2090,75%20A15,15%200%200,1%2075,90%20A15,15%200%200,1%2060,75%20A15,15%200%200,1%2075,60%20Z'%20stroke='%23FFFFFF'%20stroke-width='2'%20fill='none'/%3e%3cpath%20d='M81,75%20A6,6%200%200,1%2075,81%20A6,6%200%200,1%2069,75%20A6,6%200%200,1%2075,69%20A6,6%200%200,1%2081,75%20Z'%20fill='%23FFFFFF'/%3e%3c/g%3e%3c/svg%3e",s$n="/",a$n={name:"Message",emits:["copy","delete","rankUp","rankDown","updateMessage","resendMessage","continueMessage"],components:{MarkdownRenderer:Q0,Step:n$n,RenderHTMLJS:LPn,JsonViewer:GPn,DynamicUIRenderer:Rk,ToolbarButton:gh,DropdownMenu:Mk},props:{host:{type:String,required:!1,default:"http://localhost:9600"},message:Object,avatar:{default:""}},data(){return{ui_componentKey:0,isSynthesizingVoice:!1,cpp_block:gk,html5_block:_k,LaTeX_block:Qk,json_block:mk,javascript_block:hk,process_svg:r$n,ok_svg:i$n,failed_svg:o$n,loading_svg:yk,sendGlobe:Ik,code_block:fk,python_block:pk,bash_block:vk,audio_url:null,audio:null,msg:null,isSpeaking:!1,speechSynthesis:null,voices:[],expanded:!1,showConfirmation:!1,editMsgMode_:!1,deleteMsgMode:!1,mdRenderHeight:Number}},mounted(){if("speechSynthesis"in window?(this.speechSynthesis=window.speechSynthesis,this.voices=this.speechSynthesis.getVoices(),this.voices.length===0?this.speechSynthesis.addEventListener("voiceschanged",this.onVoicesChanged):console.log("No voices found")):console.error("Speech synthesis is not supported in this browser."),Se(()=>{Ce.replace(),this.mdRenderHeight=this.$refs.mdRender.$el.offsetHeight}),console.log("Checking metadata"),console.log(this.message),Object.prototype.hasOwnProperty.call(this.message,"metadata")&&this.message.metadata!=null){console.log("Metadata found!"),Array.isArray(this.message.metadata)||(this.message.metadata=[]),console.log(typeof this.message.metadata),console.log(this.message.metadata);for(let t of this.message.metadata)Object.prototype.hasOwnProperty.call(t,"audio_url")&&t.audio_url!=null&&(this.audio_url=t.audio_url,console.log("Audio URL:",this.audio_url))}},methods:{toggleExpanded(){this.expanded=!this.expanded},computeTimeDiff(t,e){let n=e.getTime()-t.getTime();const o=Math.floor(n/(1e3*60*60));n-=o*(1e3*60*60);const r=Math.floor(n/(1e3*60));n-=r*(1e3*60);const i=Math.floor(n/1e3);return n-=i*1e3,[o,r,i]},insertTab(t){const e=t.target,n=e.selectionStart,o=e.selectionEnd,r=t.shiftKey;if(n===o)if(r){if(e.value.substring(n-4,n)==" "){const i=e.value.substring(0,n-4),s=e.value.substring(o),a=i+s;this.message.content=a,this.$nextTick(()=>{e.selectionStart=e.selectionEnd=n-4})}}else{const i=e.value.substring(0,n),s=e.value.substring(o),a=i+" "+s;this.message.content=a,this.$nextTick(()=>{e.selectionStart=e.selectionEnd=n+4})}else{const s=e.value.substring(n,o).split(` +Error: ${(o==null?void 0:o.error)||"Unknown error"}`,4,!1),this.syncLocalMountedFlags()),this.setPersonalityProcessing(t,!1),Se(Ce.replace)},async unmount_personality(t){if(!t)return{status:!1,error:"no personality - unmount_personality"};const e={client_id:this.$store.state.client_id,language:t.language||"",category:t.category||"",folder:t.folder||""};try{return await this.api_post_req("/unmount_personality",e)}catch(n){return console.error("Error in unmount_personality helper:",n),{status:!1,error:n.message}}},async unmountAll(){if(!await this.$store.state.yesNoDialog.askQuestion("Unmount all personalities?","Unmount All","Cancel"))return;this.$store.state.toast.showToast("Unmounting all...",3,!0),this.isLoading=!0;const e=await this.api_post_req("/unmount_all_personalities");e&&e.status?(this.$store.state.config.personalities=[],this.$store.state.config.active_personality_id=-1,this.$emit("settings-changed"),this.$store.state.toast.showToast("All personalities unmounted.",4,!0)):this.$store.state.toast.showToast(`Failed to unmount all: ${(e==null?void 0:e.error)||"Unknown error"}`,4,!1),this.isLoading=!1,Se(Ce.replace)},async remountPersonality(t){const e=t.personality;this.setPersonalityProcessing(t,!0),this.$store.state.toast.showToast(`Remounting ${e.name}...`,3,!0);try{await this.unmount_personality(e),await new Promise(o=>setTimeout(o,150));const n=await this.mount_personality(e);n&&n.status?(this.$store.state.config.personalities=n.personalities,this.$store.state.config.active_personality_id=n.active_personality_id,this.$emit("settings-changed"),this.$store.state.toast.showToast(`${e.name} remounted successfully.`,4,!0)):(this.$store.state.toast.showToast(`Failed to remount ${e.name}: ${(n==null?void 0:n.error)||"Mount failed"}`,4,!1),await this.fetchPersonalitiesAndCategories())}catch(n){this.$store.state.toast.showToast(`Error remounting ${e.name}: ${n.message}`,4,!1),await this.fetchPersonalitiesAndCategories()}finally{this.setPersonalityProcessing(t,!1)}},async editPersonality(t){var n;const e=t.personality;this.isLoading=!0;try{const r=(await ce.post("/get_personality_config",{client_id:this.$store.state.client_id,category:e.category,name:e.folder})).data;r.status?(this.$store.state.currentPersonConfig=r.config,this.$store.state.showPersonalityEditor=!0,(n=this.$store.state.personality_editor)!=null&&n.showPanel&&this.$store.state.personality_editor.showPanel(),this.$store.state.selectedPersonality=e):(console.error(r.error),this.$store.state.toast.showToast(`Failed to load config for ${e.name}: ${r.error}`,4,!1))}catch(o){console.error("Error fetching personality config:",o),this.$store.state.toast.showToast(`Error loading config for ${e.name}`,4,!1)}finally{this.isLoading=!1}},async onCopyToCustom(t){const e=t.personality;if(!await this.$store.state.yesNoDialog.askQuestion(`Copy "${e.name}" to 'custom_personalities'?`,"Copy","Cancel"))return;this.setPersonalityProcessing(t,!0);const o=await this.api_post_req("copy_to_custom_personas",{category:e.category,name:e.folder});o&&o.status?(this.$store.state.messageBox.showMessage(`"${e.name}" copied to 'custom_personalities'. Refreshing list...`),await new Promise(r=>setTimeout(r,500)),await this.fetchPersonalitiesAndCategories()):this.$store.state.toast.showToast(`Failed to copy ${e.name}: ${(o==null?void 0:o.error)||"Already exists?"}`,4,!1),this.setPersonalityProcessing(t,!1)},async onPersonalityReinstall(t){const e=t.personality;if(!await this.$store.state.yesNoDialog.askQuestion(`Reinstall "${e.name}"? This overwrites local changes.`,"Reinstall","Cancel"))return;this.setPersonalityProcessing(t,!0),this.$store.state.toast.showToast(`Reinstalling ${e.name}...`,3,!0);const o=await this.api_post_req("reinstall_personality",{name:e.full_path});o&&o.status?this.$store.state.toast.showToast(`${e.name} reinstalled successfully.`,4,!0):this.$store.state.toast.showToast(`Failed to reinstall ${e.name}: ${(o==null?void 0:o.error)||"Not found?"}`,4,!1),this.setPersonalityProcessing(t,!1)},async onSettingsPersonality(t){var n,o;const e=t.personality;if(!this.isActivePersonality(e)){this.$store.state.toast.showToast(`Select and activate "${e.name}" first to configure its settings.`,4,!1);return}this.setPersonalityProcessing(t,!0);try{const i=(await ce.get("/get_active_personality_settings")).data;if(i&&typeof i=="object"&&Object.keys(i).length>0){const s=await this.$store.state.universalForm.showForm(i,`Settings - ${e.name}`,"Save","Cancel");if(s!==null){const a=await ce.post("/set_active_personality_settings",s);(n=a==null?void 0:a.data)!=null&&n.status?this.$store.state.toast.showToast(`Settings for ${e.name} updated.`,4,!0):this.$store.state.toast.showToast(`Failed to update settings: ${((o=a==null?void 0:a.data)==null?void 0:o.error)||"Unknown error"}`,4,!1)}}else i&&typeof i=="object"?this.$store.state.toast.showToast(`"${e.name}" has no configurable settings.`,4,!1):this.$store.state.toast.showToast(`Could not get settings for ${e.name}.`,4,!1)}catch(r){console.error("Error getting/setting personality settings:",r),this.$store.state.toast.showToast(`Error accessing settings: ${r.message}`,4,!1)}finally{this.setPersonalityProcessing(t,!1)}},onCopyPersonalityName(t){const e=t.personality;navigator.clipboard.writeText(e.name).then(()=>this.$store.state.toast.showToast(`Copied name: ${e.name}`,3,!0)).catch(()=>this.$store.state.toast.showToast("Failed to copy name.",3,!1))},async handleOpenFolder(t){const e=t.personality;await this.api_post_req("open_personality_folder",{category:e.category,name:e.folder})},loadMore(){this.isLoading||this.displayedCount>=this.fullyFilteredPersonalities.length||(console.log("Loading more personalities..."),this.displayedCount+=this.loadBatchSize,Se(Ce.replace))},setupObserver(){this.observer&&this.observer.disconnect();const t=this.$refs.sentinel;if(!t)return;const e={root:null,rootMargin:"0px",threshold:.1};this.observer=new IntersectionObserver(n=>{n[0].isIntersecting&&this.loadMore()},e),this.observer.observe(t)}},async mounted(){console.log("PersonalitiesZoo mounted (Options API). Initializing..."),this.isLoading=!0,this.loadStarred(),await this.fetchPersonalitiesAndCategories(),Se(()=>{Ce.replace(),this.setupObserver()}),this.isLoading=!1,console.log("PersonalitiesZoo initialization complete.")},beforeUnmount(){this.observer&&(this.observer.disconnect(),this.observer=null),clearTimeout(this.searchDebounceTimer)},updated(){Se(()=>{Ce.replace()})}},xIn={class:"user-settings-panel flex flex-col mb-2 rounded-lg shadow-lg p-4"},LIn={class:"flex flex-row justify-between items-center mb-4 flex-wrap gap-y-2"},CIn={class:"flex items-center flex-wrap"},AIn={key:0,class:"flex items-center mr-2 text-lg text-blue-600 dark:text-blue-300"},wIn=["title"],OIn={class:"flex items-center space-x-3 shrink-0"},MIn={key:0,class:"text-base font-semibold cursor-pointer select-none items-center flex flex-row"},RIn={class:"flex -space-x-4 items-center"},NIn={class:"group items-center flex flex-row"},DIn=["onClick","title"],IIn=["src"],kIn=["onClick"],HIn=["title"],PIn={class:"flex flex-col sm:flex-row gap-4 mb-4"},$In={class:"flex-grow"},VIn={class:"relative"},BIn={class:"absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"},FIn={key:0,"data-feather":"search",class:"w-5 h-5 text-blue-400 dark:text-blue-500"},UIn={key:1,role:"status"},qIn={class:"flex-shrink-0 sm:w-64"},GIn={value:""},jIn={key:0,value:"Starred"},zIn={key:1,disabled:"",class:"text-blue-400 dark:text-blue-600"},YIn=["value"],WIn={key:0,class:"flex justify-center items-center p-10 text-blue-500 dark:text-blue-400"},KIn={key:1,class:"text-center text-blue-500 dark:text-blue-400 py-10"},ZIn={key:2,class:"overflow-y-auto flex-grow personalities-grid-container scrollbar scrollbar-thin",style:{"max-height":"calc(100vh - 300px)"}},XIn={class:"label block ml-2 mb-2"},JIn={ref:"sentinel",class:"h-10"},ekn={key:0,class:"flex justify-center items-center p-4 text-blue-500 dark:text-blue-400"};function tkn(t,e,n,o,r,i){const s=ze("PersonalityEntry");return N(),H("div",xIn,[S("div",LIn,[S("div",CIn,[e[8]||(e[8]=S("p",{class:"text-xl font-semibold cursor-default select-none mr-3 text-blue-800 dark:text-blue-100"}," Personalities Zoo ",-1)),i.active_personality_name?(N(),H("div",AIn,[e[7]||(e[7]=S("span",{class:"mx-2 text-blue-400 dark:text-blue-500"},"|",-1)),S("span",{class:"font-bold line-clamp-1",title:`Active: ${i.active_personality_name}`},J(i.active_personality_name),9,wIn)])):Z("",!0)]),S("div",OIn,[i.mountedPersArr.length>0?(N(),H("div",MIn,[S("div",RIn,[(N(!0),H(xe,null,Pe(i.displayedMountedPersonalities,(a,l)=>(N(),H("div",{class:"relative hover:-translate-y-1 duration-300 hover:z-10 shrink-0",key:l+"-"+a.name,ref_for:!0,ref:"mountedPersonalitiesRefs"},[S("div",NIn,[S("button",{onClick:oe(c=>i.onPersonalitySelected({personality:a,isMounted:!0}),["stop"]),title:`Select: ${a.name}`},[S("img",{src:i.getPersonalityIconUrl(a.avatar),onError:e[0]||(e[0]=(...c)=>i.personalityImgPlaceholder&&i.personalityImgPlaceholder(...c)),class:Ee(["w-8 h-8 rounded-full object-cover border-2 active:scale-90 group-hover:border-blue-500 dark:group-hover:border-blue-400",i.isActivePersonality(a)?"border-blue-500 dark:border-blue-400":"border-blue-300 dark:border-blue-600"])},null,42,IIn)],8,DIn),S("button",{onClick:oe(c=>i.unmountPersonality({personality:a}),["stop"]),class:"absolute -top-1 -right-1 opacity-0 group-hover:opacity-100 transition-opacity duration-150",title:"Unmount personality"},e[9]||(e[9]=[S("span",{class:"bg-red-500 hover:bg-red-600 text-white rounded-full p-0.5 flex items-center justify-center shadow-md"},[S("i",{"data-feather":"x",class:"w-3 h-3 stroke-current"})],-1)]),8,kIn)])]))),128)),i.mountedPersArr.length>r.maxDisplayedMounted?(N(),H("div",{key:0,class:"w-8 h-8 rounded-full bg-blue-200 dark:bg-blue-700 border-2 border-blue-300 dark:border-blue-600 flex items-center justify-center text-xs font-semibold text-blue-600 dark:text-blue-300 cursor-default",title:`${i.mountedPersArr.length-r.maxDisplayedMounted} more mounted`}," +"+J(i.mountedPersArr.length-r.maxDisplayedMounted),9,HIn)):Z("",!0)])])):Z("",!0),i.mountedPersArr.length>0?(N(),H("button",{key:1,onClick:e[1]||(e[1]=oe(a=>i.unmountAll(),["stop"])),class:"p-1 bg-red-100 hover:bg-red-200 dark:bg-red-900 dark:hover:bg-red-800 rounded-full border border-red-300 dark:border-red-700 active:scale-90",title:"Unmount All Personalities"},e[10]||(e[10]=[S("i",{"data-feather":"x-octagon",class:"w-4 h-4 text-red-600 dark:text-red-400 stroke-current"},null,-1)]))):Z("",!0)])]),S("div",PIn,[S("div",$In,[e[12]||(e[12]=S("label",{for:"personality-search",class:"sr-only"},"Search",-1)),S("div",VIn,[S("div",BIn,[r.searchPersonalityInProgress?(N(),H("div",UIn,e[11]||(e[11]=[S("svg",{"aria-hidden":"true",class:"w-5 h-5 text-blue-400 animate-spin dark:text-blue-500 fill-blue-500",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1)]))):(N(),H("i",FIn))]),Le(S("input",{type:"search",id:"personality-search",class:"block w-full p-3 pl-10 text-sm input text-blue-900 dark:text-blue-100",placeholder:"Search name, author, description...",required:"","onUpdate:modelValue":e[2]||(e[2]=a=>r.searchPersonality=a),onInput:e[3]||(e[3]=(...a)=>i.searchPersonality_func&&i.searchPersonality_func(...a))},null,544),[[Je,r.searchPersonality]]),r.searchPersonality?(N(),H("button",{key:0,onClick:e[4]||(e[4]=oe((...a)=>i.clearSearch&&i.clearSearch(...a),["stop"])),type:"button",class:"text-white absolute right-2.5 bottom-1.5 bg-blue-600 hover:bg-blue-700 focus:ring-4 focus:outline-none focus:ring-blue-300 font-medium rounded-lg text-xs px-3 py-1.5 dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800"}," Clear ")):Z("",!0)])]),S("div",qIn,[e[13]||(e[13]=S("label",{for:"persCat",class:"sr-only"},"Category",-1)),Le(S("select",{id:"persCat","onUpdate:modelValue":e[5]||(e[5]=a=>r.selectedCategory=a),onChange:e[6]||(e[6]=(...a)=>i.applyFiltersAndSort&&i.applyFiltersAndSort(...a)),class:"block w-full p-3 text-sm input text-blue-900 dark:text-blue-100"},[S("option",GIn,"All Categories ("+J(r.allPersonalities.length)+")",1),r.starredPaths.length>0?(N(),H("option",jIn,"⭐ Starred ("+J(r.starredPaths.length)+")",1)):Z("",!0),r.starredPaths.length>0&&r.persCatgArr.length>0?(N(),H("option",zIn,"──────────")):Z("",!0),(N(!0),H(xe,null,Pe(r.persCatgArr,(a,l)=>(N(),H("option",{key:l,value:a},J(a)+" ("+J(i.getCategoryCount(a))+") ",9,YIn))),128))],544),[[Dr,r.selectedCategory]])])]),r.isLoading&&r.allPersonalities.length===0?(N(),H("div",WIn,e[14]||(e[14]=[S("svg",{"aria-hidden":"true",class:"w-8 h-8 mr-2 text-blue-300 animate-spin dark:text-blue-600 fill-blue-500",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Me(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1),S("span",null,"Loading personalities...",-1)]))):i.fullyFilteredPersonalities.length===0?(N(),H("div",KIn," No personalities found"+J(r.searchPersonality?' matching "'+r.searchPersonality+'"':"")+J(r.selectedCategory&&r.selectedCategory!=="Starred"?' in category "'+r.selectedCategory+'"':"")+J(r.selectedCategory==="Starred"?" in Starred":"")+". ",1)):(N(),H("div",ZIn,[S("label",XIn,J(i.getResultLabel())+": ("+J(i.fullyFilteredPersonalities.length)+") ",1),(N(),H("div",{key:r.selectedCategory+"-"+r.searchPersonality,class:"p-2 pb-0 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4"},[ne(w2,{name:"list"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(i.renderedPersonalities,(a,l)=>(N(),ot(s,{key:"pers-"+(a.id||`${a.category}-${a.folder}-${l}`),personality:a,select_language:!0,full_path:a.full_path,"is-mounted":a.isMounted,"is-active":i.isActivePersonality(a),"is-processing":a.isProcessing,"is-starred":a.isStarred,"base-url":r.bUrl,onSelect:i.onPersonalitySelected,onMount:i.mountPersonality,onUnmount:i.unmountPersonality,onRemount:i.remountPersonality,onEdit:i.editPersonality,onToggleStar:i.toggleStar,onCopyToCustom:i.onCopyToCustom,onReinstall:i.onPersonalityReinstall,onSettings:i.onSettingsPersonality,onCopyPersonalityName:i.onCopyPersonalityName,onOpenFolder:i.handleOpenFolder,onError:i.personalityImgPlaceholder},null,8,["personality","full_path","is-mounted","is-active","is-processing","is-starred","base-url","onSelect","onMount","onUnmount","onRemount","onEdit","onToggleStar","onCopyToCustom","onReinstall","onSettings","onCopyPersonalityName","onOpenFolder","onError"]))),128))]),_:1})])),S("div",JIn,[r.isLoading&&i.renderedPersonalities.length>0&&i.renderedPersonalities.length{Ce.replace()})},methods:{show_settings(){this.onShowSettings(this)},formatDate(t){const e={year:"numeric",month:"short",day:"numeric"};return new Date(t).toLocaleDateString(void 0,e)},showThumbnail(){this.thumbnailVisible=!0},hideThumbnail(){this.thumbnailVisible=!1},updateThumbnailPosition(t){this.thumbnailPosition={x:t.clientX+10,y:t.clientY+10}},getImgUrl(){return rkn+this.function_call.avatar},defaultImg(t){t.target.src=nkn},toggleFavorite(){this.onToggleFavorite(this)},showFolder(){this.onOpenFolder(this)},toggleCopyLink(){this.onCopyfunction_callName(this)},edit(){this.onEdit(this)},copyToCustom(){this.onCopyToCustom(this)},reMount(){this.onRemount(this)},mount(){console.log("Mounting"),this.onMount(this)},unmount(){console.log("Unmounting"),console.log(this.onUnMount),this.onUnMount(this),this.mounted=!1},showHelp(){this.renderedHelp=Et(this.function_call.help),this.showHelpPopup=!0},closeHelp(){this.showHelpPopup=!1}},watch:{}},okn=["title"],skn={class:"flex-grow"},akn={class:"flex items-center mb-4"},lkn=["src"],ckn={class:"font-bold text-xl text-gray-800 cursor-pointer"},ukn={class:"text-sm text-gray-600"},dkn={class:"text-sm text-gray-600"},Tkn={class:"text-sm text-gray-600"},fkn={key:0,class:"text-sm text-gray-600"},pkn={key:1,class:"text-sm text-gray-600"},hkn={class:"mb-4"},mkn=["innerHTML"],gkn={class:"mt-auto pt-4 border-t"},_kn={class:"flex justify-between items-center flex-wrap"},Qkn=["title"],vkn=["fill"],ykn=["src"],bkn={key:1,class:"fixed inset-0 bg-black bg-opacity-50 flex justify-center items-center"},Ekn={class:"bg-white p-4 rounded-lg shadow-lg w-[500px] h-[400px] flex flex-col"},Skn={class:"flex justify-between items-center mb-2"},xkn={class:"flex-grow overflow-auto"},Lkn=["innerHTML"];function Ckn(t,e,n,o,r,i){const s=ze("InteractiveMenu");return N(),H("div",{class:Ee(["app-card flex flex-col h-full",r.mounted?"border-primary-light":"border-transparent"]),title:n.function_call.installed?"":"Not installed"},[S("div",skn,[S("div",akn,[S("img",{src:i.getImgUrl(),onError:e[0]||(e[0]=a=>i.defaultImg(a)),alt:"function_call Icon",class:"w-16 h-16 rounded-full border border-gray-300 mr-4 cursor-pointer",onMouseover:e[1]||(e[1]=(...a)=>i.showThumbnail&&i.showThumbnail(...a)),onMousemove:e[2]||(e[2]=(...a)=>i.updateThumbnailPosition&&i.updateThumbnailPosition(...a)),onMouseleave:e[3]||(e[3]=(...a)=>i.hideThumbnail&&i.hideThumbnail(...a))},null,40,lkn),S("div",null,[S("h3",ckn,J(n.function_call.name),1),S("p",ukn,"Author: "+J(n.function_call.author),1),S("p",dkn,"Version: "+J(n.function_call.version),1),S("p",Tkn,"Category: "+J(n.function_call.category),1),n.function_call.creation_date?(N(),H("p",fkn,"Creation Date: "+J(i.formatDate(n.function_call.creation_date)),1)):Z("",!0),n.function_call.last_update_date?(N(),H("p",pkn,"Last update Date: "+J(i.formatDate(n.function_call.last_update_date)),1)):Z("",!0)]),n.function_call.help?(N(),H("button",{key:0,onClick:e[4]||(e[4]=(...a)=>i.showHelp&&i.showHelp(...a)),class:"ml-2 text-blue-500 hover:text-blue-600 transition duration-300 ease-in-out",title:"Help"},e[9]||(e[9]=[S("i",{"data-feather":"help-circle",class:"h-6 w-6"},null,-1)]))):Z("",!0)]),S("div",hkn,[e[10]||(e[10]=S("h4",{class:"font-semibold mb-1 text-gray-700"},"Description:",-1)),S("p",{class:"text-sm text-gray-600 h-20 overflow-y-auto",innerHTML:n.function_call.description},null,8,mkn)])]),S("div",gkn,[S("div",_kn,[S("button",{onClick:e[5]||(e[5]=(...a)=>i.toggleFavorite&&i.toggleFavorite(...a)),class:"text-yellow-500 hover:text-yellow-600 transition duration-300 ease-in-out",title:t.isFavorite?"Remove from favorites":"Add to favorites"},[(N(),H("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:t.isFavorite?"currentColor":"none",viewBox:"0 0 24 24",stroke:"currentColor"},e[11]||(e[11]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"},null,-1)]),8,vkn))],8,Qkn),S("button",{onClick:e[6]||(e[6]=(...a)=>i.showFolder&&i.showFolder(...a)),class:"text-purple-500 hover:text-purple-600 transition duration-300 ease-in-out",title:"Show Folder"},e[12]||(e[12]=[S("i",{"data-feather":"folder",class:"h-6 w-6"},null,-1)])),r.mounted?(N(),H("button",{key:0,onClick:e[7]||(e[7]=(...a)=>i.show_settings&&i.show_settings(...a)),class:"text-green-500 hover:text-green-600 transition duration-300 ease-in-out",title:"Settings"},e[13]||(e[13]=[S("i",{"data-feather":"settings",class:"h-6 w-6"},null,-1)]))):Z("",!0),ne(s,{commands:i.commandsList,force_position:2,title:"Menu",class:"text-gray-500 hover:text-gray-600 transition duration-300 ease-in-out"},null,8,["commands"])])]),r.thumbnailVisible?(N(),H("div",{key:0,style:an({top:r.thumbnailPosition.y+"px",left:r.thumbnailPosition.x+"px"}),class:"fixed z-50 w-20 h-20 rounded-full overflow-hidden"},[S("img",{src:i.getImgUrl(),class:"w-full h-full object-fill"},null,8,ykn)],4)):Z("",!0),r.showHelpPopup?(N(),H("div",bkn,[S("div",Ekn,[S("div",Skn,[e[14]||(e[14]=S("h2",{class:"text-lg font-bold"},"Help",-1)),S("button",{onClick:e[8]||(e[8]=(...a)=>i.closeHelp&&i.closeHelp(...a)),class:"text-red-500 hover:text-red-600"},"Close")]),S("div",xkn,[S("div",{innerHTML:r.renderedHelp},null,8,Lkn)])])])):Z("",!0)],10,okn)}const Akn=Ye(ikn,[["render",Ckn]]),wkn="/assets/default_function-CyfcuNmo.png";function Okn(t,e){let n;return function(...r){const i=()=>{clearTimeout(n),t.apply(this,r)};clearTimeout(n),n=setTimeout(i,e)}}const Mkn={name:"FunctionCallsZoo",components:{FunctionEntry:Akn},props:{config:{type:Object,required:!0},api_post_req:{type:Function,required:!0},api_get_req:{type:Function,required:!0},show_toast:{type:Function,required:!0},show_yes_no_dialog:{type:Function,required:!0},show_universal_form:{type:Function,required:!0},show_message_box:{type:Function,required:!0},client_id:{type:String,required:!0}},emits:["update:setting"],data(){return{allFunctions:[],categoriesFunc:[],filteredFunctions:[],pagedFunctions:[],isLoadingFunctions:!1,isSearchingFunc:!1,searchTermFunc:"",selectedCategoryFunc:"",sortOptionFunc:"mounted",itemsPerPageFunc:15,currentPageFunc:1,maxDisplayedMountedFunc:7,functionEntryRefs:{},observerFunc:null,defaultIcon:wkn,axiosBaseUrl:ce.defaults.baseURL||""}},computed:{mountedFunctionPathsSet(){var t;return new Set(((t=this.config)==null?void 0:t.mounted_functions)||[])},mountedFunctions(){return this.allFunctions.filter(t=>this.mountedFunctionPathsSet.has(t.full_path))},displayedMountedFunctions(){return[...this.mountedFunctions].sort((e,n)=>(e.name||"").localeCompare(n.name||"")).slice(0,this.maxDisplayedMountedFunc)},hasMoreFunctionsToLoad(){return this.pagedFunctions.length{const r=e.has(o.full_path);o.isMounted!==r&&(o.isMounted=r,n=!0)}),n&&(console.log("Watcher: Re-applying filters and sort due to mounted status change."),this.resetAndReloadFunctions()),this.featherReplace()},deep:!0},searchTermFunc(){this.debouncedResetAndReload()},selectedCategoryFunc(){this.debouncedResetAndReload()},sortOptionFunc(){this.debouncedResetAndReload()},allFunctions:{handler(){console.log("Watcher: allFunctions list changed. Triggering initial load."),this.resetAndReloadFunctions()}}},methods:{getFunctionIcon(t){return t?t.startsWith("http://")||t.startsWith("https://")||t.startsWith("/")?t.startsWith("/")?`${this.axiosBaseUrl}${t}`:t:`${this.axiosBaseUrl}/${t}`:this.defaultIcon},imgPlaceholder(t){t.target.src=this.defaultIcon},featherReplace(){this.$nextTick(()=>{try{Ce.replace()}catch(t){console.error("Feather replace error:",t)}})},setFunctionRef(t,e){e&&(this.functionEntryRefs[t]=e)},async fetchFunctionsAndCategories(){if(!this.isLoadingFunctions){this.isLoadingFunctions=!0,console.log("Fetching functions and categories...");try{const t=await this.api_get_req("list_function_calls"),e=(t==null?void 0:t.function_calls)||[],n=new Set(e.map(o=>o.category).filter(Boolean));this.categoriesFunc=Array.from(n).sort(),this.allFunctions=e.map(o=>{const r=`${o.category}/${o.name}`,i=o.id||r;return{...o,full_path:r,isMounted:!1,id:i,isProcessing:!1}}),console.log(`Fetched ${this.allFunctions.length} total functions.`),this.$nextTick(()=>{var o;(o=this.config)!=null&&o.mounted_functions&&this.watch["config.mounted_functions"].handler.call(this,this.config.mounted_functions)})}catch(t){this.show_toast("Failed to load functions list.",4,!1),console.error("Error fetching functions:",t),this.allFunctions=[],this.categoriesFunc=[]}finally{this.isLoadingFunctions=!1}}},applyFiltersAndSortFunc(){console.time("FilterSortFunctions");let t=[...this.allFunctions];if(this.selectedCategoryFunc&&(t=t.filter(e=>e.category===this.selectedCategoryFunc)),this.searchTermFunc){const e=this.searchTermFunc.toLowerCase();t=t.filter(n=>{var c,u,d,f,T;const o=(c=n.name)==null?void 0:c.toLowerCase().includes(e),r=(u=n.author)==null?void 0:u.toLowerCase().includes(e),i=(d=n.description)==null?void 0:d.toLowerCase().includes(e),s=(f=n.category)==null?void 0:f.toLowerCase().includes(e),a=(T=n.full_path)==null?void 0:T.toLowerCase().includes(e),l=Array.isArray(n.keywords)?n.keywords.some(h=>h.toLowerCase().includes(e)):!1;return o||r||i||s||a||l})}t.sort((e,n)=>{if(this.sortOptionFunc==="mounted"){if(e.isMounted&&!n.isMounted)return-1;if(!e.isMounted&&n.isMounted)return 1}switch(this.sortOptionFunc!=="mounted"?this.sortOptionFunc:"name"){case"name":return(e.name||"").localeCompare(n.name||"");case"author":return(e.author||"").localeCompare(n.author||"");case"category":return(e.category||"").localeCompare(n.category||"");default:return 0}}),this.filteredFunctions=t,console.timeEnd("FilterSortFunctions"),console.log(`Filtered/Sorted functions: ${this.filteredFunctions.length}`)},resetAndReloadFunctions(){this.currentPageFunc=1,this.pagedFunctions=[],this.applyFiltersAndSortFunc(),this.$nextTick(()=>{this.loadMoreFunctions()})},debouncedResetAndReload:Okn(function(){this.isSearchingFunc=!0,this.resetAndReloadFunctions(),setTimeout(()=>{this.isSearchingFunc=!1},100)},300),loadMoreFunctions(){if(this.isLoadingFunctions||this.isSearchingFunc||!this.hasMoreFunctionsToLoad)return;console.log(`Loading page ${this.currentPageFunc}`);const t=(this.currentPageFunc-1)*this.itemsPerPageFunc,e=t+this.itemsPerPageFunc,n=this.filteredFunctions.slice(t,e),o=new Set(this.pagedFunctions.map(i=>i.id||i.full_path)),r=n.filter(i=>!o.has(i.id||i.full_path));r.length>0?(this.pagedFunctions.push(...r),this.currentPageFunc++,this.featherReplace()):n.length>0&&console.log("Load more triggered but items already seem to be loaded.")},setFunctionProcessing(t,e){const n=i=>{i&&(i.isProcessing=e)},o=this.allFunctions.findIndex(i=>(i.id||i.full_path)===t);n(this.allFunctions[o]);const r=this.pagedFunctions.findIndex(i=>(i.id||i.full_path)===t);n(this.pagedFunctions[r])},async handleMount(t){if(t.isMounted||t.isProcessing)return;const e=t.id||t.full_path;this.setFunctionProcessing(e,!0),this.show_toast(`Mounting ${t.name}...`,3,!0);try{const n=await this.api_post_req("mount_function_call",{client_id:this.client_id,function_category:t.category,function_name:t.name});if(n&&n.status){this.show_toast(`${t.name} mounted successfully.`,4,!0);const o=[...this.mountedFunctionPathsSet,t.full_path];this.$emit("update:setting",{key:"mounted_functions",value:o})}else this.show_toast(`Failed to mount ${t.name}: ${(n==null?void 0:n.error)||"Error"}`,4,!1)}catch(n){this.show_toast(`Error mounting ${t.name}: ${n.message||n}`,4,!1),console.error("Mount error:",n)}finally{this.setFunctionProcessing(e,!1)}},async handleUnmount(t){var n;if(!t.isMounted||t.isProcessing)return;const e=t.id||t.full_path;this.setFunctionProcessing(e,!0),this.show_toast(`Unmounting ${t.name}...`,3,!0);try{const o=await this.api_post_req("unmount_function_call",{client_id:this.client_id,function_category:t.category,function_name:t.name});if(o&&o.status){this.show_toast(`${t.name} unmounted.`,4,!0);const r=(((n=this.config)==null?void 0:n.mounted_functions)||[]).filter(i=>i!==t.full_path);this.$emit("update:setting",{key:"mounted_functions",value:r})}else this.show_toast(`Failed to unmount ${t.name}: ${(o==null?void 0:o.error)||"Error"}`,4,!1)}catch(o){this.show_toast(`Error unmounting ${t.name}: ${o.message||o}`,4,!1),console.error("Unmount error:",o)}finally{this.setFunctionProcessing(e,!1)}},async unmountAll(){if(!(this.mountedFunctions.length===0||!await this.show_yes_no_dialog(`Unmount all ${this.mountedFunctions.length} functions?`,"Unmount All","Cancel"))){this.show_toast("Unmounting all functions...",3,!0),this.mountedFunctions.forEach(e=>this.setFunctionProcessing(e.id||e.full_path,!0));try{const e=await this.api_post_req("unmount_all_functions",{client_id:this.client_id});e&&e.status?(this.show_toast("All functions unmounted.",4,!0),this.$emit("update:setting",{key:"mounted_functions",value:[]})):(this.show_toast(`Failed to unmount all: ${(e==null?void 0:e.error)||"Error"}`,4,!1),this.mountedFunctions.forEach(n=>this.setFunctionProcessing(n.id||n.full_path,!1)))}catch(e){this.show_toast(`Error unmounting all: ${e.message||e}`,4,!1),console.error("Unmount all error:",e),this.mountedFunctions.forEach(n=>this.setFunctionProcessing(n.id||n.full_path,!1))}}},async handleRemount(t){const e=t.id||t.full_path;if(!t.isProcessing){this.setFunctionProcessing(e,!0),this.show_toast(`Remounting ${t.name}...`,3,!0);try{let n=[...this.config.mounted_functions||[]];if(n.includes(t.full_path)){const i=await this.api_post_req("unmount_function_call",{client_id:this.client_id,function_category:t.category,function_name:t.name});if(!i||!i.status){this.show_toast(`Failed to unmount ${t.name} during remount. Aborting.`,4,!1),this.setFunctionProcessing(e,!1);return}n=n.filter(s=>s!==t.full_path),this.$emit("update:setting",{key:"mounted_functions",value:n}),await Se(),console.log("Remount Step 1: Unmounted and emitted.")}const r=await this.api_post_req("mount_function_call",{client_id:this.client_id,function_category:t.category,function_name:t.name});r&&r.status?(this.show_toast(`${t.name} remounted successfully.`,4,!0),n.includes(t.full_path)||n.push(t.full_path),this.$emit("update:setting",{key:"mounted_functions",value:n}),console.log("Remount Step 2: Mounted and emitted.")):this.show_toast(`Failed to mount ${t.name} during remount: ${(r==null?void 0:r.error)||"Error"}`,4,!1)}catch(n){this.show_toast(`Error remounting ${t.name}: ${n.message||n}`,4,!1),console.error("Remount error:",n)}finally{this.setFunctionProcessing(e,!1)}}},async handleSettings(t){if(t.isProcessing)return;const e=t.id||t.full_path;this.setFunctionProcessing(e,!0);try{const n=await this.api_post_req("get_function_call_settings",{client_id:this.client_id,category:t.category,name:t.name});if(n&&typeof n=="object"&&Object.keys(n).length>0){const o=await this.show_universal_form(n,`Function Settings - ${t.name}`,"Save","Cancel");if(o!=null){const r=await this.api_post_req("set_function_call_settings",{client_id:this.client_id,category:t.category,name:t.name,settings:o});r&&r.status?this.show_toast(`Settings for ${t.name} updated.`,4,!0):this.show_toast(`Failed to update settings for ${t.name}: ${(r==null?void 0:r.error)||"Error"}`,4,!1)}else this.show_toast(`Settings update for ${t.name} cancelled.`,3,!0)}else n&&typeof n=="object"&&Object.keys(n).length===0?this.show_message_box(`Function "${t.name}" has no configurable settings.`):this.show_toast(`Could not retrieve settings for ${t.name}: ${(n==null?void 0:n.error)||"Invalid response"}`,4,!1)}catch(n){this.show_toast(`Error accessing settings for ${t.name}: ${n.message||n}`,4,!1),console.error("Settings error:",n)}finally{this.setFunctionProcessing(e,!1)}},async handleEdit(t){this.show_toast(`Opening folder containing "${t.name}" for editing...`,3,!0),await this.handleOpenFolder(t)},async handleCopyToCustom(t){if(!await this.show_yes_no_dialog(`Copy "${t.name}" from "${t.category}" to your 'custom_functions' folder?`,"Copy","Cancel")||t.isProcessing)return;const n=t.id||t.full_path;this.setFunctionProcessing(n,!0);try{const o=await this.api_post_req("copy_to_custom_functions",{client_id:this.client_id,category:t.category,name:t.name});o&&o.status?(this.show_message_box(`Function "${t.name}" copied to 'custom_functions'. The list will refresh shortly.`),await this.fetchFunctionsAndCategories()):this.show_toast(`Failed to copy ${t.name}: ${(o==null?void 0:o.error)||"Already exists in custom?"}`,4,!1)}catch(o){this.show_toast(`Error copying ${t.name}: ${o.message||o}`,4,!1),console.error("Copy to custom error:",o)}finally{this.setFunctionProcessing(n,!1)}},handleCopyName(t){navigator.clipboard.writeText(t.name).then(()=>this.show_toast(`Copied name: ${t.name}`,3,!0)).catch(e=>{this.show_toast("Failed to copy name to clipboard.",3,!1),console.error("Clipboard copy failed:",e)})},async handleOpenFolder(t){try{await this.api_post_req("open_function_folder",{client_id:this.client_id,category:t.category,name:t.name})}catch(e){this.show_toast(`Error opening folder for ${t.name}: ${e.message||e}`,4,!1),console.error("Open folder error:",e)}},scrollToFunction(t){const e=t.id||t.full_path,n=this.functionEntryRefs[e];if(n&&n.$el){const o=n.$el;o.scrollIntoView({behavior:"smooth",block:"center"}),o.classList.add("ring-2","ring-offset-2","ring-blue-500","dark:ring-offset-gray-800","transition-all","duration-1000","ease-out"),setTimeout(()=>{o.classList.remove("ring-2","ring-offset-2","ring-blue-500","dark:ring-offset-gray-800","transition-all","duration-1000","ease-out")},1500)}else console.warn(`Could not find ref $el to scroll to for function ID: ${e}. Is it loaded?`),this.hasMoreFunctionsToLoad&&!this.pagedFunctions.some(o=>(o.id||o.full_path)===e)?(this.show_toast(`Function ${t.name} not visible, attempting to load more...`,3,!0),this.loadMoreFunctions(),setTimeout(()=>this.scrollToFunction(t),500)):this.show_toast(`Could not scroll to ${t.name}.`,3,!1)},setupIntersectionObserverFunc(){this.disconnectIntersectionObserver();const t={root:null,rootMargin:"100px",threshold:.1};this.observerFunc=new IntersectionObserver(n=>{n.forEach(o=>{o.isIntersecting&&this.hasMoreFunctionsToLoad&&this.loadMoreFunctions()})},t);const e=this.$refs.loadMoreTriggerFunc;e?(this.observerFunc.observe(e),console.log("IntersectionObserver setup complete.")):this.$nextTick(()=>{const n=this.$refs.loadMoreTriggerFunc;n?(this.observerFunc.observe(n),console.log("IntersectionObserver setup complete (nextTick).")):console.error("Load more trigger element not found for IntersectionObserver setup.")})},disconnectIntersectionObserver(){if(this.observerFunc){console.log("Disconnecting IntersectionObserver.");const t=this.$refs.loadMoreTriggerFunc;if(t)try{this.observerFunc.unobserve(t)}catch(e){console.warn("Error unobserving trigger:",e)}this.observerFunc.disconnect(),this.observerFunc=null}}},mounted(){console.log("FunctionCallsZoo Mounted."),this.fetchFunctionsAndCategories(),this.featherReplace(),this.$nextTick(()=>{this.setupIntersectionObserverFunc()})},beforeUpdate(){this.functionEntryRefs={}},updated(){this.featherReplace(),this.$nextTick(()=>{const t=this.$refs.loadMoreTriggerFunc;if(t&&this.observerFunc&&!this.observerFunc.takeRecords().some(e=>e.target===t)){console.warn("IntersectionObserver detached from trigger, re-observing.");try{this.observerFunc.unobserve(t)}catch{}this.observerFunc.observe(t)}else t&&!this.observerFunc&&(console.warn("IntersectionObserver lost, re-setting up."),this.setupIntersectionObserverFunc())})},unmounted(){console.log("FunctionCallsZoo Unmounted."),this.disconnectIntersectionObserver()}},Rkn={class:"user-settings-panel space-y-6 p-4 md:p-6 rounded-lg shadow-md bg-white dark:bg-gray-800"},Nkn={class:"flex flex-col sm:flex-row justify-between items-start sm:items-center border-b border-blue-300 dark:border-blue-600 pb-3 mb-4"},Dkn={class:"flex flex-col items-end"},Ikn={class:"flex items-center flex-wrap gap-2 text-sm font-medium mb-1"},kkn={key:0,class:"text-blue-500 dark:text-blue-500 italic text-xs"},Hkn={key:1,class:"flex -space-x-3 items-center"},Pkn=["src","title","onClick"],$kn=["onClick"],Vkn=["title"],Bkn={class:"grid grid-cols-1 md:grid-cols-3 gap-4 mb-4 items-center"},Fkn={class:"relative md:col-span-1"},Ukn={key:0,class:"absolute inset-y-0 right-0 pr-3 flex items-center"},qkn={class:"md:col-span-1"},Gkn=["value"],jkn={class:"md:col-span-1"},zkn={key:0,class:"flex justify-center items-center p-10 text-blue-500 dark:text-blue-400"},Ykn={key:1,class:"text-center text-blue-500 dark:text-blue-400 py-10"},Wkn={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 scrollbar-thin scrollbar-thumb-blue-300 scrollbar-track-blue-100 dark:scrollbar-thumb-blue-700 dark:scrollbar-track-blue-900",ref:"scrollContainerFunc"},Kkn={ref:"loadMoreTriggerFunc",class:"h-10"},Zkn={key:0,class:"flex justify-center items-center text-center text-blue-500 dark:text-blue-400 py-4"};function Xkn(t,e,n,o,r,i){const s=ze("FunctionEntry");return N(),H("div",Rkn,[S("div",Nkn,[e[9]||(e[9]=S("h2",{class:"text-2xl font-semibold text-blue-800 dark:text-blue-100 mb-2 sm:mb-0"}," Function Calls Zoo ",-1)),S("div",Dkn,[S("div",Ikn,[e[7]||(e[7]=S("span",{class:"text-blue-600 dark:text-blue-400"},"Mounted:",-1)),i.mountedFunctions.length===0?(N(),H("div",kkn,"None")):(N(),H("div",Hkn,[(N(!0),H(xe,null,Pe(i.displayedMountedFunctions,(a,l)=>(N(),H("div",{key:`mounted-${a.id||a.full_path||l}`,class:"relative group"},[S("img",{src:i.getFunctionIcon(a.icon),onError:e[0]||(e[0]=(...c)=>i.imgPlaceholder&&i.imgPlaceholder(...c)),class:"w-7 h-7 rounded-full object-cover ring-2 ring-white dark:ring-gray-700 cursor-pointer hover:ring-blue-500 dark:hover:ring-blue-400 transition-all",title:`${a.name} (${a.category})`,onClick:c=>i.scrollToFunction(a)},null,40,Pkn),S("button",{onClick:oe(c=>i.handleUnmount(a),["stop"]),class:"absolute -top-1 -right-1 p-0.5 rounded-full bg-red-600 text-white opacity-0 group-hover:opacity-100 transition-opacity duration-150 hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-red-500 focus:ring-offset-1 dark:focus:ring-offset-gray-900",title:"Unmount"},e[6]||(e[6]=[S("i",{"data-feather":"x",class:"w-3 h-3 stroke-current"},null,-1)]),8,$kn)]))),128)),i.mountedFunctions.length>r.maxDisplayedMountedFunc?(N(),H("div",{key:0,class:"w-7 h-7 rounded-full bg-blue-200 dark:bg-blue-700 ring-2 ring-white dark:ring-gray-700 flex items-center justify-center text-xs font-semibold text-blue-600 dark:text-blue-300",title:`${i.mountedFunctions.length-r.maxDisplayedMountedFunc} more mounted`}," +"+J(i.mountedFunctions.length-r.maxDisplayedMountedFunc),9,Vkn)):Z("",!0)]))]),i.mountedFunctions.length>0?(N(),H("button",{key:0,onClick:e[1]||(e[1]=(...a)=>i.unmountAll&&i.unmountAll(...a)),class:"btn btn-sm bg-red-600 hover:bg-red-700 text-white text-xs mt-1 focus:ring-red-300 dark:focus:ring-red-600"},e[8]||(e[8]=[S("i",{"data-feather":"x-octagon",class:"w-3 h-3 mr-1 stroke-current"},null,-1),Me("Unmount All ")]))):Z("",!0)])]),e[18]||(e[18]=S("p",{class:"text-sm text-blue-600 dark:text-blue-400"}," Mount functions to grant the AI specific capabilities and tools it can use during conversations. Requires a model trained for function calling. ",-1)),S("div",Bkn,[S("div",Fkn,[e[11]||(e[11]=S("div",{class:"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none"},[S("i",{"data-feather":"search",class:"w-5 h-5 text-blue-400 dark:text-blue-500"})],-1)),Le(S("input",{type:"search","onUpdate:modelValue":e[2]||(e[2]=a=>r.searchTermFunc=a),placeholder:"Search functions...",class:"input pl-10 w-full placeholder:text-blue-400 dark:placeholder:text-blue-500",onInput:e[3]||(e[3]=(...a)=>t.debounceSearchFunc&&t.debounceSearchFunc(...a))},null,544),[[Je,r.searchTermFunc]]),r.isSearchingFunc?(N(),H("div",Ukn,e[10]||(e[10]=[S("svg",{"aria-hidden":"true",class:"w-5 h-5 text-blue-400 dark:text-blue-500 animate-spin fill-blue-500 dark:fill-blue-400",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Me(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1)]))):Z("",!0)]),S("div",qkn,[e[13]||(e[13]=S("label",{for:"func-category",class:"sr-only"},"Filter by Category",-1)),Le(S("select",{id:"func-category","onUpdate:modelValue":e[4]||(e[4]=a=>r.selectedCategoryFunc=a),class:"input w-full"},[e[12]||(e[12]=S("option",{value:""},"All Categories",-1)),(N(!0),H(xe,null,Pe(r.categoriesFunc,a=>(N(),H("option",{key:a,value:a},J(a),9,Gkn))),128))],512),[[Dr,r.selectedCategoryFunc]])]),S("div",jkn,[e[15]||(e[15]=S("label",{for:"func-sort",class:"sr-only"},"Sort functions by",-1)),Le(S("select",{id:"func-sort","onUpdate:modelValue":e[5]||(e[5]=a=>r.sortOptionFunc=a),class:"input w-full"},e[14]||(e[14]=[S("option",{value:"mounted"},"Sort by Mounted",-1),S("option",{value:"name"},"Sort by Name",-1),S("option",{value:"author"},"Sort by Author",-1),S("option",{value:"category"},"Sort by Category",-1)]),512),[[Dr,r.sortOptionFunc]])])]),r.isLoadingFunctions?(N(),H("div",zkn,e[16]||(e[16]=[S("svg",{"aria-hidden":"true",class:"w-8 h-8 mr-2 text-blue-300 dark:text-blue-600 animate-spin fill-blue-500 dark:fill-blue-400",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Me(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1),S("span",null,"Loading functions...",-1)]))):r.pagedFunctions.length===0&&r.filteredFunctions.length===0?(N(),H("div",Ykn," No functions found"+J(r.searchTermFunc?' matching "'+r.searchTermFunc+'"':"")+J(r.selectedCategoryFunc?' in category "'+r.selectedCategoryFunc+'"':"")+". ",1)):Z("",!0),S("div",Wkn,[(N(!0),H(xe,null,Pe(r.pagedFunctions,a=>(N(),ot(s,{key:a.id||a.full_path,ref_for:!0,ref:l=>i.setFunctionRef(a.id||a.full_path,l),function_call:a,"is-mounted":a.isMounted,"is-processing":a.isProcessing,"get-icon-url":i.getFunctionIcon,"on-img-error":i.imgPlaceholder,onMount:l=>i.handleMount(a),onUnmount:l=>i.handleUnmount(a),onRemount:l=>i.handleRemount(a),onSettings:l=>i.handleSettings(a),onEdit:l=>i.handleEdit(a),onCopyToCustom:l=>i.handleCopyToCustom(a),onCopyName:l=>i.handleCopyName(a),onOpenFolder:l=>i.handleOpenFolder(a)},null,8,["function_call","is-mounted","is-processing","get-icon-url","on-img-error","onMount","onUnmount","onRemount","onSettings","onEdit","onCopyToCustom","onCopyName","onOpenFolder"]))),128))],512),S("div",Kkn,[i.hasMoreFunctionsToLoad&&!r.isLoadingFunctions&&!r.isSearchingFunc?(N(),H("div",Zkn,e[17]||(e[17]=[S("svg",{"aria-hidden":"true",class:"w-5 h-5 mr-2 text-blue-300 dark:text-blue-600 animate-spin fill-blue-500 dark:fill-blue-400",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Me(),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1),S("span",null,"Loading more...",-1)]))):Z("",!0)],512)])}const BO=Ye(Mkn,[["render",Xkn],["__scopeId","data-v-de225b9a"]]),Jkn={name:"ModelGenerationParameters",components:{ToggleSwitch:n6},props:{loading:{type:Boolean,default:!1}},emits:["update:setting"],computed:{isDisabled(){return!this.$store.state.config.override_personality_model_parameters}},methods:{updateValue(t,e){let n=e;t!=="seed"&&typeof e!="boolean"?(n=Number(e),isNaN(n)&&(console.warn(`Invalid number input for ${t}:`,e),n=e)):t==="seed"&&(n=parseInt(e),isNaN(n)&&String(e)!=="-"?n=-1:String(e)==="-"?n="-":n<-1&&(n=-1)),!(t!=="seed"&&typeof n=="number"&&isNaN(n))&&(t==="seed"&&n==="-"||this.$emit("update:setting",{key:t,value:n}))},updateBoolean(t,e){this.$emit("update:setting",{key:t,value:!!e})},replaceFeatherIcons(){Se(()=>{Ce.replace()})}},mounted(){this.replaceFeatherIcons()},updated(){this.replaceFeatherIcons()}},eHn={class:"user-settings-panel space-y-6"},tHn={class:"toggle-item !justify-start gap-4 border border-blue-200 dark:border-blue-700 rounded-lg p-3 panels-color"},nHn={class:"setting-item"},rHn=["value","disabled"],iHn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},oHn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},sHn=["value","disabled"],aHn=["value","disabled"],lHn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},cHn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},uHn=["value","disabled"],dHn=["value","disabled"],THn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},fHn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},pHn=["value","disabled"],hHn=["value","disabled"],mHn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},gHn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},_Hn=["value","disabled"],QHn=["value","disabled"],vHn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},yHn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},bHn=["value","disabled"],EHn=["value","disabled"],SHn={class:"setting-item items-start md:items-center border-t border-blue-200 dark:border-blue-700 pt-4 mt-4"},xHn={class:"flex-1 flex flex-col sm:flex-row items-center gap-4 w-full"},LHn=["value","disabled"],CHn=["value","disabled"];function AHn(t,e,n,o,r,i){const s=ze("ToggleSwitch");return N(),H("div",eHn,[e[22]||(e[22]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100 border-b border-blue-300 dark:border-blue-600 pb-2"}," Model Generation Parameters ",-1)),e[23]||(e[23]=S("p",{class:"text-sm text-blue-600 dark:text-blue-400 mb-4"}," Adjust the core parameters that influence how the AI generates text. These settings can be overridden by specific personalities unless the option below is checked. ",-1)),S("div",tHn,[ne(s,{id:"override_personality_model_parameters",checked:t.$store.state.config.override_personality_model_parameters,"onUpdate:checked":e[0]||(e[0]=a=>i.updateBoolean("override_personality_model_parameters",a))},null,8,["checked"]),e[14]||(e[14]=S("label",{for:"override_personality_model_parameters",class:"toggle-label !flex-none"},[Me(" Override Personality Parameters "),S("span",{class:"toggle-description"},"Force the use of these global parameters, ignoring any settings defined within the selected personality.")],-1))]),S("div",{class:Ee(["space-y-5 pt-4",i.isDisabled?"opacity-50 pointer-events-none":""])},[S("div",nHn,[e[15]||(e[15]=tr('',1)),S("input",{type:"number",id:"seed",value:t.$store.state.config.seed,onInput:e[1]||(e[1]=a=>i.updateValue("seed",parseInt(a.target.value))),class:"input-sm w-full md:w-32",step:"1",placeholder:"-1",disabled:i.isDisabled},null,40,rHn)]),S("div",iHn,[e[16]||(e[16]=tr('',1)),S("div",oHn,[S("input",{id:"temperature-range",value:t.$store.state.config.temperature,onInput:e[2]||(e[2]=a=>i.updateValue("temperature",parseFloat(a.target.value))),type:"range",min:"0",max:"2",step:"0.01",class:"range-input flex-grow",disabled:i.isDisabled},null,40,sHn),S("input",{id:"temperature-number",value:t.$store.state.config.temperature,onInput:e[3]||(e[3]=a=>i.updateValue("temperature",parseFloat(a.target.value))),type:"number",min:"0",max:"2",step:"0.01",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,aHn)])]),S("div",lHn,[e[17]||(e[17]=tr('',1)),S("div",cHn,[S("input",{id:"n_predict-range",value:t.$store.state.config.n_predict,onInput:e[4]||(e[4]=a=>i.updateValue("n_predict",parseInt(a.target.value))),type:"range",min:"32",max:"8192",step:"32",class:"range-input flex-grow",disabled:i.isDisabled},null,40,uHn),S("input",{id:"n_predict-number",value:t.$store.state.config.n_predict,onInput:e[5]||(e[5]=a=>i.updateValue("n_predict",parseInt(a.target.value))),type:"number",min:"32",max:"8192",step:"32",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,dHn)])]),S("div",THn,[e[18]||(e[18]=tr('',1)),S("div",fHn,[S("input",{id:"top_k-range",value:t.$store.state.config.top_k,onInput:e[6]||(e[6]=a=>i.updateValue("top_k",parseInt(a.target.value))),type:"range",min:"0",max:"100",step:"1",class:"range-input flex-grow",disabled:i.isDisabled},null,40,pHn),S("input",{id:"top_k-number",value:t.$store.state.config.top_k,onInput:e[7]||(e[7]=a=>i.updateValue("top_k",parseInt(a.target.value))),type:"number",min:"0",max:"100",step:"1",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,hHn)])]),S("div",mHn,[e[19]||(e[19]=tr('',1)),S("div",gHn,[S("input",{id:"top_p-range",value:t.$store.state.config.top_p,onInput:e[8]||(e[8]=a=>i.updateValue("top_p",parseFloat(a.target.value))),type:"range",min:"0",max:"1",step:"0.01",class:"range-input flex-grow",disabled:i.isDisabled},null,40,_Hn),S("input",{id:"top_p-number",value:t.$store.state.config.top_p,onInput:e[9]||(e[9]=a=>i.updateValue("top_p",parseFloat(a.target.value))),type:"number",min:"0",max:"1",step:"0.01",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,QHn)])]),S("div",vHn,[e[20]||(e[20]=tr('',1)),S("div",yHn,[S("input",{id:"repeat_penalty-range",value:t.$store.state.config.repeat_penalty,onInput:e[10]||(e[10]=a=>i.updateValue("repeat_penalty",parseFloat(a.target.value))),type:"range",min:"0.5",max:"2.0",step:"0.01",class:"range-input flex-grow",disabled:i.isDisabled},null,40,bHn),S("input",{id:"repeat_penalty-number",value:t.$store.state.config.repeat_penalty,onInput:e[11]||(e[11]=a=>i.updateValue("repeat_penalty",parseFloat(a.target.value))),type:"number",min:"0.5",max:"2.0",step:"0.01",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,EHn)])]),S("div",SHn,[e[21]||(e[21]=tr('',1)),S("div",xHn,[S("input",{id:"repeat_last_n-range",value:t.$store.state.config.repeat_last_n,onInput:e[12]||(e[12]=a=>i.updateValue("repeat_last_n",parseInt(a.target.value))),type:"range",min:"0",max:"512",step:"8",class:"range-input flex-grow",disabled:i.isDisabled},null,40,LHn),S("input",{id:"repeat_last_n-number",value:t.$store.state.config.repeat_last_n,onInput:e[13]||(e[13]=a=>i.updateValue("repeat_last_n",parseInt(a.target.value))),type:"number",min:"0",max:"512",step:"8",class:"input-sm w-24 text-center",disabled:i.isDisabled},null,40,CHn)])])],2)])}const FO=Ye(Jkn,[["render",AHn],["__scopeId","data-v-99271729"]]);ce.defaults.baseURL="/";const R6={accept:"application/json","Content-Type":"application/json"},wHn={name:"SettingsView",components:{SettingsSidebar:fCn,SystemStatusSettings:OO,SmartRoutingSettings:MO,MainConfigSettings:RO,DataManagementSettings:NO,InternetSettings:DO,ServicesZooSettings:IO,BindingZooSettings:HO,ModelsZooSettings:PO,PersonalitiesZooSettings:VO,FunctionCallsZooSettings:BO,ModelConfigSettings:FO},data(){return{isLoading:!1,settingsChanged:!1,has_updates:!1,activeSection:"system_status",loading_text:"Loading settings...",sections:[{id:"system_status",name:"System Status",icon:"activity",component:OO},{id:"main_config",name:"Main Config",icon:"sliders",component:RO},{id:"smart_routing",name:"Smart Routing",icon:"git-branch",component:MO},{id:"data_management",name:"Data Management",icon:"database",component:NO},{id:"internet",name:"Internet",icon:"wifi",component:DO},{id:"services_zoo",name:"Services Zoo",icon:"server",component:IO},{id:"model_config",name:"Model Parameters",icon:"cpu",component:FO},{id:"binding_zoo",name:"Bindings",icon:"link",component:HO},{id:"models_zoo",name:"Models",icon:"package",component:PO},{id:"personalities_zoo",name:"Personalities",icon:"users",component:VO},{id:"function_calls_zoo",name:"Function Calls",icon:"tool",component:BO}]}},computed:{currentComponent(){const t=this.sections.find(e=>e.id===this.activeSection);return t?t.component:null}},watch:{},methods:{setActiveSection(t){this.settingsChanged?this.$store.state.yesNoDialog.askQuestion("You have unsaved changes in the current section. Do you want to discard them and switch?","Discard Changes","Stay").then(e=>{e&&(this.cancelConfiguration(!1),this.activeSection=t)}):this.activeSection=t},handleSettingUpdate(t){const e=t.key.split(".");let n=this.$store.state.config;try{for(;e.length>1;){const i=e.shift(),s=i.match(/(\w+)\[(\d+)\]/);if(s?n=n[s[1]][parseInt(s[2])]:n=n[i],n==null){console.error("Invalid key path segment:",i,"in",t.key),this.$store.state.toast.showToast(`Error updating setting: Invalid path ${t.key}`,4,!1);return}}const o=e[0],r=o.match(/(\w+)\[(\d+)\]/);if(r){if(n[r[1]]===void 0||n[r[1]][parseInt(r[2])]===void 0){console.error("Invalid final key path segment:",o,"in",t.key),this.$store.state.toast.showToast(`Error updating setting: Invalid path ${t.key}`,4,!1);return}n[r[1]][parseInt(r[2])]=t.value}else{if(n[o]===void 0){console.error("Invalid final key path segment:",o,"in",t.key),this.$store.state.toast.showToast(`Error updating setting: Invalid path ${t.key}`,4,!1);return}n[o]=t.value}console.log("Setting updated in parent:",t.key,t.value),this.settingsChanged=!0}catch(o){console.error("Error processing setting update:",t.key,o),this.$store.state.toast.showToast(`Error updating setting ${t.key}: ${o.message}`,4,!1)}},handleSettingsChanged(){console.log("settings changed"),this.settingsChanged=!0},async refreshConfig(){this.isLoading=!0,this.loading_text="Refreshing configuration...";try{await this.$store.dispatch("refreshConfig"),this.settingsChanged=!1}catch(t){console.error("Failed to refresh config:",t),this.$store.state.toast.showToast("Failed to load configuration.",4,!1)}finally{this.isLoading=!1,Se(()=>{Ce.replace()})}},async applyConfiguration(){this.isLoading=!0,this.loading_text="Applying settings...";try{const t=await ce.post("/apply_settings",{client_id:this.$store.state.client_id,config:this.$store.state.config},{headers:R6});t.data.status?(this.$store.state.toast.showToast("Configuration applied successfully.",4,!0),await this.refreshConfig()):this.$store.state.toast.showToast(`Configuration apply failed: ${t.data.error||"Unknown error"}`,4,!1)}catch(t){console.error("Error applying settings:",t),this.$store.state.toast.showToast(`Error applying settings: ${t.message||t}`,4,!1)}finally{this.isLoading=!1}},async cancelConfiguration(t=!0){t?await this.refreshConfig():this.settingsChanged=!1},async saveConfiguration(){this.isLoading=!0,this.loading_text="Saving settings to disk...";try{const t=await ce.post("/save_settings",{client_id:this.$store.state.client_id},{headers:R6});t.data.status?this.$store.state.toast.showToast("Settings saved successfully.",4,!0):this.$store.state.messageBox.showMessage(`Error saving settings: ${t.data.error||"Unknown error"}`)}catch(t){console.error("Error saving settings:",t),this.$store.state.messageBox.showMessage(`Error saving settings: ${t.message}`)}finally{this.isLoading=!1}},reset_configuration(){this.$store.state.yesNoDialog.askQuestion(`Are you sure? +This will delete your current configuration file and revert to the default.`,"Reset Now","Cancel").then(async t=>{if(t){this.isLoading=!0,this.loading_text="Resetting configuration...";try{const e=await ce.post("/reset_settings",{client_id:this.$store.state.client_id},{headers:R6});e.data.status?(this.$store.state.messageBox.showMessage("Settings reset successfully. The application will now reload."),setTimeout(()=>window.location.reload(),2e3)):(this.$store.state.messageBox.showMessage(`Couldn't reset settings: ${e.data.error||"Unknown error"}`),this.isLoading=!1)}catch(e){console.error("Error resetting settings:",e),this.$store.state.messageBox.showMessage(`Couldn't reset settings: ${e.message}`),this.isLoading=!1}}})},async restart_program(){this.loading_text="Restarting program...",this.isLoading=!0;try{const t=await this.api_post_req("restart_program");t.status?this.$store.state.toast.showToast("Restarting LoLLMs.",4,!0):(this.$store.state.toast.showToast(`Failed to restart: ${t.error||"Unknown error"}`,4,!1),this.isLoading=!1)}catch{this.isLoading=!1}},async clear_uploads(){this.loading_text="Clearing uploads...",this.isLoading=!0;try{const t=await this.api_get_req("clear_uploads");t.status?this.$store.state.toast.showToast("Uploads folder cleared!",4,!0):this.$store.state.toast.showToast(`Failed to clear uploads: ${t.error||"Unknown error"}`,4,!1)}catch{}finally{this.isLoading=!1}},async update_software(){this.loading_text="Updating software...",this.isLoading=!0;try{const t=await this.api_post_req("update_software");this.$store.state.toast.showToast("Update process initiated. LoLLMs might restart.",4,!0),this.has_updates=!1,t.status||(this.$store.state.toast.showToast(`Update command sent, but server reported: ${t.error||"Unknown issue"}`,4,!1),this.isLoading=!1)}catch{this.isLoading=!1}},async updateHasUpdates(){try{const t=await this.api_get_req("check_update");this.has_updates=(t==null?void 0:t.update_availability)||!1,console.log("Update available:",this.has_updates),Se(()=>{Ce.replace()})}catch(t){console.error("Failed to check for updates:",t),this.has_updates=!1}},async api_get_req(t){try{return(await ce.get(`/${t}?client_id=${this.$store.state.client_id}`)).data}catch(e){throw console.error(`API GET request failed for /${t}:`,e),this.$store.state.toast.showToast(`Failed to fetch data from ${t}. ${e.message}`,4,!1),e}},async api_post_req(t,e={}){try{const n={...e,client_id:this.$store.state.client_id};return(await ce.post(`/${t}`,n,{headers:R6})).data}catch(n){throw console.error(`API POST request failed for /${t}:`,n),this.$store.state.toast.showToast(`Failed to post data to ${t}. ${n.message}`,4,!1),n}}},mounted(){this.refreshConfig(),this.updateHasUpdates(),Se(()=>{Ce.replace()})},updated(){Se(()=>{Ce.replace()})}},OHn={class:"flex h-screen w-screen font-sans antialiased theme-bg-primary theme-text-primary"},MHn={class:"flex-1 flex flex-col overflow-hidden"},RHn={class:"flex items-center gap-4 flex-1"},NHn={key:0,class:"flex items-center gap-2 theme-text-warning animate-pulse"},DHn={key:1,class:"flex gap-3 items-center"},IHn={key:0,class:"flex items-center gap-2"},kHn={key:1,class:"flex items-center gap-2 text-sm theme-text-muted"},HHn={class:"flex-1 overflow-x-hidden overflow-y-auto theme-scrollbar p-6"},PHn={key:1,class:"flex justify-center items-center h-full theme-text-secondary"};function $Hn(t,e,n,o,r,i){const s=ze("SettingsSidebar");return N(),H("div",OHn,[ne(s,{sections:r.sections,"active-section":r.activeSection,"onUpdate:activeSection":i.setActiveSection,class:"flex-shrink-0 w-64 border-r theme-border-primary theme-bg-secondary overflow-y-auto theme-scrollbar"},null,8,["sections","active-section","onUpdate:activeSection"]),S("div",MHn,[S("div",{class:Ee(["sticky top-0 z-20 flex items-center justify-between p-3 gap-3 shadow-md theme-bg-secondary theme-border-b theme-border-primary",r.isLoading?"opacity-50 pointer-events-none":""])},[S("div",RHn,[r.settingsChanged&&!r.isLoading?(N(),H("div",NHn,e[6]||(e[6]=[S("i",{"data-feather":"alert-circle",class:"w-5 h-5"},null,-1),S("span",{class:"text-sm font-medium"},"Settings have changed",-1)]))):Z("",!0),!r.settingsChanged&&!r.isLoading?(N(),H("div",DHn,[S("button",{title:"Reset configuration to default",class:"icon-button theme-text-secondary hover:theme-text-primary",onClick:e[0]||(e[0]=a=>i.reset_configuration())},e[7]||(e[7]=[S("i",{"data-feather":"refresh-ccw"},null,-1)])),S("button",{title:"Restart program",class:"icon-button theme-text-secondary hover:theme-text-primary",onClick:e[1]||(e[1]=a=>i.restart_program())},e[8]||(e[8]=[S("i",{"data-feather":"power"},null,-1)])),S("button",{title:"Clear uploads folder",class:"icon-button theme-text-secondary hover:theme-text-danger",onClick:e[2]||(e[2]=a=>i.clear_uploads())},e[9]||(e[9]=[S("i",{"data-feather":"trash-2"},null,-1)])),r.has_updates?(N(),H("button",{key:0,title:"Upgrade program",class:"icon-button theme-text-success hover:theme-text-primary relative",onClick:e[3]||(e[3]=a=>i.update_software())},e[10]||(e[10]=[S("i",{"data-feather":"arrow-up-circle"},null,-1),S("span",{class:"absolute top-0 right-0 block h-2 w-2 rounded-full theme-bg-danger ring-2 theme-ring-bg"},null,-1)]))):Z("",!0)])):Z("",!0)]),r.settingsChanged&&!r.isLoading?(N(),H("div",IHn,[S("button",{class:"flex items-center gap-2 px-3 py-1.5 rounded theme-button-success duration-150 active:scale-95",title:"Apply changes",type:"button",onClick:e[4]||(e[4]=oe(a=>i.applyConfiguration(),["stop"]))},e[11]||(e[11]=[S("span",{class:"font-medium text-sm"},"Apply",-1),S("i",{"data-feather":"check",class:"w-4 h-4"},null,-1)])),S("button",{class:"flex items-center gap-2 px-3 py-1.5 rounded theme-button-danger duration-150 active:scale-95",title:"Cancel changes",type:"button",onClick:e[5]||(e[5]=oe(a=>i.cancelConfiguration(),["stop"]))},e[12]||(e[12]=[S("span",{class:"font-medium text-sm"},"Cancel",-1),S("i",{"data-feather":"x",class:"w-4 h-4"},null,-1)]))])):Z("",!0),r.isLoading?(N(),H("div",kHn,[S("span",null,J(r.loading_text),1),e[13]||(e[13]=S("svg",{"aria-hidden":"true",class:"w-5 h-5 animate-spin theme-spinner-color",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})],-1)),e[14]||(e[14]=S("span",{class:"sr-only"},"Loading...",-1))])):Z("",!0)],2),S("main",HHn,[t.$store.state.config?(N(),ot(Vc(i.currentComponent),{key:0,loading:r.isLoading,"settings-changed":r.settingsChanged,onSettingsChanged:i.handleSettingsChanged,api_get_req:i.api_get_req,api_post_req:i.api_post_req,refresh_config:i.refreshConfig,show_toast:(a,l,c)=>t.$store.state.toast.showToast(a,l,c),show_yes_no_dialog:(a,l,c)=>t.$store.state.yesNoDialog.askQuestion(a,l,c),show_message_box:a=>t.$store.state.messageBox.showMessage(a),client_id:t.$store.state.client_id,show_universal_form:(a,l,c,u)=>t.$store.state.universalForm.showForm(a,l,c,u)},null,40,["loading","settings-changed","onSettingsChanged","api_get_req","api_post_req","refresh_config","show_toast","show_yes_no_dialog","show_message_box","client_id","show_universal_form"])):(N(),H("div",PHn,e[15]||(e[15]=[S("p",null,"Loading configuration...",-1)])))])])])}const VHn=Ye(wHn,[["render",$Hn],["__scopeId","data-v-9889ee74"]]),BHn={components:{ClipBoardTextInput:hh,Card:mh},data(){return{dataset_path:"",max_length:1024,batch_size:4,lr:5e-5,num_epochs:2,selectedFolder:"",selectedDataset:""}},methods:{submitForm(){const t={model_name:this.selectedModel,dataset_file:this.selectedDataset,max_length:this.max_length,batch_size:this.batch_size,lr:this.lr,num_epochs:this.num_epochs,output_dir:this.selectedFolder};ce.post("/start_training",t).then(e=>{})},openFolderSelector(){this.$refs.folder_selector.click()},selectOutputDirectory(t){var n;console.log("here");const e=(n=t.target.files[0])==null?void 0:n.path;console.log(e),e&&(this.selectedFolder=e)},selectDataset(t){const e=t.target.files;e.length>0&&(this.selectedDataset=e[0])}},computed:{selectedModel:{get(){return this.$store.state.selectedModel}},models:{get(){return this.$store.state.modelsArr}}},watch:{model_name(t){console.log("watching model_name",t),this.$refs.clipboardInput.inputValue=t}}},FHn={key:0,class:"container overflow-y-scroll flex flex-col no-scrollbar shadow-lg p-10 pt-2 bg-bg-light-tone dark:bg-bg-dark-tone"},UHn={class:"mb-4"},qHn=["value"],GHn={class:"mb-4"},jHn={class:"mb-4"},zHn={class:"mb-4"},YHn={class:"mb-4"},WHn={class:"mb-4"},KHn={class:"mb-4"},ZHn={key:1};function XHn(t,e,n,o,r,i){const s=ze("Card"),a=ze("ClipBoardTextInput");return i.selectedModel!==null&&i.selectedModel.toLowerCase().includes("gptq")?(N(),H("div",FHn,[S("form",{onSubmit:e[2]||(e[2]=oe((...l)=>i.submitForm&&i.submitForm(...l),["prevent"])),class:""},[ne(s,{title:"Training configuration",isHorizontal:!0,disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>[ne(s,{title:"Model",class:"",isHorizontal:!1},{default:Ge(()=>[S("div",UHn,[e[3]||(e[3]=S("label",{for:"model_name",class:"text-sm"},"Model Name:",-1)),Le(S("select",{"onUpdate:modelValue":e[0]||(e[0]=l=>i.selectedModel=l),onChange:e[1]||(e[1]=(...l)=>t.setModel&&t.setModel(...l)),class:"bg-white dark:bg-black m-0 border-2 rounded-md shadow-sm w-full"},[(N(!0),H(xe,null,Pe(i.models,l=>(N(),H("option",{key:l,value:l},J(l),9,qHn))),128))],544),[[Dr,i.selectedModel]])])]),_:1}),ne(s,{title:"Data",isHorizontal:!1},{default:Ge(()=>[S("div",GHn,[e[4]||(e[4]=S("label",{for:"dataset_path",class:"text-sm"},"Dataset:",-1)),ne(a,{id:"model_path",inputType:"file",value:r.dataset_path,onchange:"selectDataset()"},null,8,["value"])])]),_:1}),ne(s,{title:"Training",isHorizontal:!1},{default:Ge(()=>[S("div",jHn,[e[5]||(e[5]=S("label",{for:"lr",class:"text-sm"},"Learning Rate:",-1)),ne(a,{id:"model_path",inputType:"integer",value:r.lr},null,8,["value"])]),S("div",zHn,[e[6]||(e[6]=S("label",{for:"num_epochs",class:"text-sm"},"Number of Epochs:",-1)),ne(a,{id:"model_path",inputType:"integer",value:r.num_epochs},null,8,["value"])]),S("div",YHn,[e[7]||(e[7]=S("label",{for:"max_length",class:"text-sm"},"Max Length:",-1)),ne(a,{id:"model_path",inputType:"integer",value:r.max_length},null,8,["value"])]),S("div",WHn,[e[8]||(e[8]=S("label",{for:"batch_size",class:"text-sm"},"Batch Size:",-1)),ne(a,{id:"model_path",inputType:"integer",value:r.batch_size},null,8,["value"])])]),_:1}),ne(s,{title:"Output",isHorizontal:!1},{default:Ge(()=>[S("div",KHn,[e[9]||(e[9]=S("label",{for:"output_dir",class:"text-sm"},"Output Directory:",-1)),ne(a,{id:"model_path",inputType:"text",value:t.output_dir},null,8,["value"])])]),_:1})]),_:1}),ne(s,{disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>e[10]||(e[10]=[S("button",{class:"bg-blue-500 text-white px-4 py-2 rounded"},"Start training",-1)])),_:1})],32)])):(N(),H("div",ZHn,[ne(s,{title:"Info",class:"",isHorizontal:!1},{default:Ge(()=>e[11]||(e[11]=[Me(" Only GPTQ models are supported for QLora fine tuning. Please select a GPTQ compatible binding. ")])),_:1})]))}const JHn=Ye(BHn,[["render",XHn]]),ePn={components:{ClipBoardTextInput:hh,Card:mh},data(){return{model_name:"jondurbin/airoboros-7b-gpt4",tokenizer_name:"jondurbin/airoboros-7b-gpt4",dataset_path:"",max_length:1024,batch_size:4,lr:5e-5,num_epochs:2,selectedFolder:"",selectedDatasetPath:""}},methods:{submitForm(){this.model_name,this.tokenizer_name,this.selectedDatasetPath,this.max_length,this.batch_size,this.lr,this.num_epochs,this.selectedFolder},openFolderSelector(){this.$refs.folder_selector.click()},selectOutputDirectory(t){var n;console.log("here");const e=(n=t.target.files[0])==null?void 0:n.path;console.log(e),e&&(this.selectedFolder=e)},selectDatasetPath(t){const e=t.target.files;e.length>0&&(this.selectedDatasetPath=e[0].webkitRelativePath)}}},tPn={class:"container overflow-y-scroll flex flex-col no-scrollbar shadow-lg p-10 pt-2 bg-bg-light-tone dark:bg-bg-dark-tone"},nPn={class:"mb-4"},rPn={class:"mb-4"};function iPn(t,e,n,o,r,i){const s=ze("ClipBoardTextInput"),a=ze("Card");return N(),H("div",tPn,[S("form",{onSubmit:e[0]||(e[0]=oe((...l)=>i.submitForm&&i.submitForm(...l),["prevent"])),class:"max-w-md mx-auto"},[ne(a,{title:"Quantizing configuration",isHorizontal:!0,disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>[ne(a,{title:"Model",class:"",isHorizontal:!1},{default:Ge(()=>[S("div",nPn,[e[1]||(e[1]=S("label",{for:"model_name",class:"text-sm"},"Model Name:",-1)),ne(s,{id:"model_path",inputType:"text",value:r.model_name},null,8,["value"])]),S("div",rPn,[e[2]||(e[2]=S("label",{for:"tokenizer_name",class:"text-sm"},"Tokenizer Name:",-1)),ne(s,{id:"model_path",inputType:"text",value:r.tokenizer_name},null,8,["value"])])]),_:1})]),_:1}),ne(a,{disableHoverAnimation:!0,disableFocus:!0},{default:Ge(()=>e[3]||(e[3]=[S("button",{type:"submit",class:"bg-blue-500 text-white px-4 py-2 rounded"},"Quantize LLM",-1)])),_:1})],32)])}const oPn=Ye(ePn,[["render",iPn]]),sPn={name:"Discussion",emits:["delete","select","openFolder","editTitle","makeTitle","checked"],props:{id:Number,title:String,selected:Boolean,loading:Boolean,isCheckbox:Boolean,checkBoxValue:Boolean,openfolder_enabled:Boolean},setup(){},data(){return{showConfirmation:!1,editTitleMode:!1,makeTitleMode:!1,deleteMode:!1,openFolder:!1,editTitle:!1,newTitle:String,checkBoxValue_local:!1}},methods:{cancel(){this.editTitleMode=!1,this.makeTitleMode=!1,this.deleteMode=!1,this.showConfirmation=!1},deleteEvent(){this.showConfirmation=!1,this.$emit("delete")},selectEvent(){this.$emit("select")},openFolderEvent(){this.$emit("openFolder",{id:this.id})},editTitleEvent(){this.editTitle=!1,this.editTitleMode=!1,this.makeTitleMode=!1,this.deleteMode=!1,this.showConfirmation=!1,this.$emit("editTitle",{title:this.newTitle,id:this.id})},makeTitleEvent(){this.$emit("makeTitle",{id:this.id}),this.showConfirmation=!1},chnageTitle(t){this.newTitle=t},checkedChangeEvent(t,e){this.$emit("checked",t,e)}},mounted(){this.newTitle=this.title,Se(()=>{Ce.replace()})},watch:{showConfirmation(){Se(()=>{Ce.replace()})},editTitleMode(t){this.showConfirmation=t,this.editTitle=t,t&&Se(()=>{try{this.$refs.titleBox.focus()}catch{}})},deleteMode(t){this.showConfirmation=t,t&&Se(()=>{this.$refs.titleBox.focus()})},makeTitleMode(t){this.showConfirmation=t},checkBoxValue(t,e){this.checkBoxValue_local=t}}},aPn=["id"],lPn={class:"flex flex-row items-center gap-2"},cPn={key:0},uPn={class:"flex flex-row items-center w-full"},dPn=["title"],TPn=["value"],fPn={class:"absolute top-0 right-0 h-full flex items-center group"},pPn={class:"discussion-toolbox"},hPn={key:0,class:"flex gap-2 items-center"},mPn={key:1,class:"flex gap-2 items-center"};function gPn(t,e,n,o,r,i){return N(),H("div",{class:Ee([n.selected?"discussion-hilighted":"discussion","m-1 py-2 flex flex-row sm:flex-row flex-wrap flex-shrink-0 items-center rounded-md duration-75 cursor-pointer relative w-[15rem]"]),id:"dis-"+n.id,onClick:e[13]||(e[13]=oe(s=>i.selectEvent(),["stop"]))},[S("div",lPn,[n.isCheckbox?(N(),H("div",cPn,[Le(S("input",{type:"checkbox",class:"w-4 h-4 text-blue-600 bg-gray-100 border-gray-300 rounded focus:ring-blue-500 dark:focus:ring-blue-600 dark:ring-offset-gray-700 dark:focus:ring-offset-gray-700 focus:ring-2 dark:bg-gray-600 dark:border-gray-500",onClick:e[0]||(e[0]=oe(()=>{},["stop"])),"onUpdate:modelValue":e[1]||(e[1]=s=>r.checkBoxValue_local=s),onInput:e[2]||(e[2]=s=>i.checkedChangeEvent(s,n.id))},null,544),[[vl,r.checkBoxValue_local]])])):Z("",!0),n.selected?(N(),H("div",{key:1,class:Ee(["min-h-full w-2 rounded-xl self-stretch",n.loading?"animate-bounce bg-accent":"bg-secondary"])},null,2)):Z("",!0),n.selected?Z("",!0):(N(),H("div",{key:2,class:Ee(["w-2",n.loading?"min-h-full w-2 rounded-xl self-stretch animate-bounce bg-accent":""])},null,2))]),S("div",uPn,[r.editTitle?Z("",!0):(N(),H("p",{key:0,title:n.title,class:"line-clamp-1 w-full ml-1 -mx-5 text-xs"},J(n.title?n.title==="untitled"?"New discussion":n.title:"New discussion"),9,dPn)),r.editTitle?(N(),H("input",{key:1,type:"text",id:"title-box",ref:"titleBox",class:"bg-bg-light dark:bg-bg-dark rounded-md border-0 w-full -m-1 p-1",value:n.title,required:"",onKeydown:[e[3]||(e[3]=Qn(oe(s=>i.editTitleEvent(),["exact"]),["enter"])),e[4]||(e[4]=Qn(oe(s=>r.editTitleMode=!1,["exact"]),["esc"]))],onInput:e[5]||(e[5]=s=>i.chnageTitle(s.target.value)),onClick:e[6]||(e[6]=oe(()=>{},["stop"]))},null,40,TPn)):Z("",!0)]),S("div",fPn,[S("div",pPn,[r.showConfirmation?(N(),H("div",hPn,[S("button",{class:"text-2xl hover:text-red-600 duration-75 active:scale-90",title:"Discard title changes",type:"button",onClick:e[7]||(e[7]=oe(s=>i.cancel(),["stop"]))},e[14]||(e[14]=[S("i",{"data-feather":"x"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Confirm title changes",type:"button",onClick:e[8]||(e[8]=oe(s=>r.editTitleMode?i.editTitleEvent():r.deleteMode?i.deleteEvent():i.makeTitleEvent(),["stop"]))},e[15]||(e[15]=[S("i",{"data-feather":"check"},null,-1)]))])):Z("",!0),r.showConfirmation?Z("",!0):(N(),H("div",mPn,[n.openfolder_enabled?(N(),H("button",{key:0,class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Open folder",type:"button",onClick:e[9]||(e[9]=oe(s=>i.openFolderEvent(),["stop"]))},e[16]||(e[16]=[S("i",{"data-feather":"folder"},null,-1)]))):Z("",!0),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Make a title",type:"button",onClick:e[10]||(e[10]=oe(s=>r.makeTitleMode=!0,["stop"]))},e[17]||(e[17]=[S("i",{"data-feather":"type"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Edit title",type:"button",onClick:e[11]||(e[11]=oe(s=>r.editTitleMode=!0,["stop"]))},e[18]||(e[18]=[S("i",{"data-feather":"edit-2"},null,-1)])),S("button",{class:"text-2xl hover:text-red-600 duration-75 active:scale-90",title:"Remove discussion",type:"button",onClick:e[12]||(e[12]=oe(s=>r.deleteMode=!0,["stop"]))},e[19]||(e[19]=[S("i",{"data-feather":"trash"},null,-1)]))]))])])],10,aPn)}const Ch=Ye(sPn,[["render",gPn],["__scopeId","data-v-2b3580ce"]]),_Pn={data(){return{id:0,loading:!1,isCheckbox:!1,isVisible:!1,categories:[],titles:[],content:"",searchQuery:""}},components:{Discussion:Ch,MarkdownRenderer:Q0},props:{host:{type:String,required:!1,default:"http://localhost:9600"}},methods:{showSkillsLibrary(){this.isVisible=!0,this.fetchTitles()},closeComponent(){this.isVisible=!1},fetchCategories(){ce.post("/get_skills_library_categories",{client_id:this.$store.state.client_id}).then(t=>{this.categories=t.data.categories}).catch(t=>{console.error("Error fetching categories:",t)})},fetchTitles(){console.log("Fetching categories"),ce.post("/get_skills_library_titles",{client_id:this.$store.state.client_id}).then(t=>{this.titles=t.data.titles,console.log("titles recovered")}).catch(t=>{console.error("Error fetching titles:",t)})},fetchContent(t){console.log("loading skill",t),ce.post("/get_skills_library_content",{client_id:this.$store.state.client_id,skill_id:t}).then(e=>{const n=e.data.contents[0];this.id=n.id,this.content=n.content}).catch(e=>{console.error("Error fetching content:",e)})},deleteCategory(t){console.log("Delete category")},editCategory(t){console.log("Edit category")},checkUncheckCategory(t){console.log("Unchecked category")},deleteSkill(t){console.log("Delete skill ",t),ce.post("/delete_skill",{client_id:this.$store.state.client_id,skill_id:t}).then(()=>{this.fetchTitles()})},editTitle(t){ce.post("/edit_skill_title",{client_id:this.$store.state.client_id,skill_id:t,title:t}).then(()=>{this.fetchTitles()}),console.log("Edit title")},makeTitle(t){console.log("Make title")},checkUncheckTitle(t){},searchSkills(){}}},QPn={id:"leftPanel",class:"flex flex-row h-full flex-grow shadow-lg rounded"},vPn={class:"w-[15rem] z-10 top-0 bg-bg-light-tone dark:bg-bg-dark-tone shadow-md overflow-y-scroll no-scrollbar"},yPn={classclass:"absolute flex flex-col no-scrollbar shadow-lg w-[15rem] bg-bg-light-tone dark:bg-bg-dark-tone top-20 left-20 bottom-20 right-20 bg-bg-light shadow-lg rounded"},bPn={class:"z-0 flex flex-col flex-grow overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"};function EPn(t,e,n,o,r,i){const s=ze("Discussion"),a=ze("MarkdownRenderer");return N(),H("div",{class:Ee([{hidden:!r.isVisible},"absolute flex flex-col no-scrollbar shadow-lg bg-bg-light dark:bg-bg-dark top-20 left-20 bottom-20 right-20 shadow-lg rounded"])},[S("div",QPn,[S("div",vPn,[Le(S("input",{type:"search",id:"default-search",class:"block w-full h-8 px-8 text-sm border border-gray-300 rounded-md bg-bg-light focus:ring-1 focus:ring-secondary focus:border-secondary dark:bg-bg-dark dark:border-gray-600 dark:placeholder-gray-400 dark:focus:ring-secondary dark:focus:border-secondary transition-all duration-200",placeholder:"Search discussions...",title:"Filter skills by title","onUpdate:modelValue":e[0]||(e[0]=l=>r.searchQuery=l),onKeyup:e[1]||(e[1]=Qn((...l)=>i.searchSkills&&i.searchSkills(...l),["enter"]))},null,544),[[Je,r.searchQuery]]),S("div",yPn,[e[3]||(e[3]=S("h2",{class:"text-xl font-bold m-4"},"Titles",-1)),r.titles.length>0?(N(),ot(w2,{key:0,name:"list"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(r.titles,l=>(N(),ot(s,{key:l.id,id:l.id,title:l.title,selected:i.fetchContent(l.id),loading:r.loading,isCheckbox:r.isCheckbox,checkBoxValue:!1,openfolder_enabled:!1,onSelect:c=>i.fetchContent(l.id),onDelete:c=>i.deleteSkill(l.id),onEditTitle:i.editTitle,onMakeTitle:i.makeTitle,onChecked:i.checkUncheckTitle},null,8,["id","title","selected","loading","isCheckbox","onSelect","onDelete","onEditTitle","onMakeTitle","onChecked"]))),128))]),_:1})):Z("",!0)])]),S("div",bPn,[e[4]||(e[4]=S("h2",{class:"text-xl font-bold m-4"},"Content",-1)),ne(a,{host:n.host,"markdown-text":r.content,message_id:r.id,discussion_id:r.id,client_id:this.$store.state.client_id},null,8,["host","markdown-text","message_id","discussion_id","client_id"])])]),S("button",{onClick:e[2]||(e[2]=(...l)=>i.closeComponent&&i.closeComponent(...l)),class:"absolute top-2 right-2 bg-red-500 text-white rounded px-2 py-1 hover:bg-red-300"},"Close")],2)}const Dk=Ye(_Pn,[["render",EPn]]),SPn={props:{htmlContent:{type:String,required:!0}}},xPn=["innerHTML"];function LPn(t,e,n,o,r,i){return N(),H("div",{class:"w-full h-full overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary",innerHTML:n.htmlContent},null,8,xPn)}const CPn=Ye(SPn,[["render",LPn]]),APn={name:"JsonNode",props:{data:{required:!0},label:{type:String,default:""},depth:{type:Number,default:0}},data(){return{expanded:!0}},computed:{isObject(){return this.data!==null&&typeof this.data=="object"},isArray(){return Array.isArray(this.data)}},methods:{toggle(){this.expanded=!this.expanded},getValueType(t){return t===null?"null":typeof t},formatValue(t){return t===null?"null":typeof t=="string"?`"${t}"`:t}}},wPn={class:"json-tree"},OPn={key:0,class:"tree-node"},MPn={class:"toggle-icon"},RPn={class:"key"},NPn={class:"bracket"},DPn={key:0,class:"node-content"},IPn={key:1,class:"bracket-close"},kPn={key:1,class:"tree-leaf"},HPn={key:0,class:"key"};function PPn(t,e,n,o,r,i){const s=ze("json-node",!0);return N(),H("div",wPn,[i.isObject?(N(),H("div",OPn,[S("div",{class:"node-label",onClick:e[0]||(e[0]=(...a)=>i.toggle&&i.toggle(...a))},[S("span",MPn,J(r.expanded?"▼":"▶"),1),S("span",RPn,J(n.label),1),S("span",NPn,J(i.isArray?"[":"{"),1)]),r.expanded?(N(),H("div",DPn,[(N(!0),H(xe,null,Pe(n.data,(a,l)=>(N(),H("div",{key:l,class:"node-item"},[ne(s,{data:a,label:l,depth:n.depth+1},null,8,["data","label","depth"])]))),128))])):Z("",!0),r.expanded?(N(),H("div",IPn,J(i.isArray?"]":"}"),1)):Z("",!0)])):(N(),H("div",kPn,[n.label?(N(),H("span",HPn,J(n.label)+":",1)):Z("",!0),S("span",{class:Ee(["value",i.getValueType(n.data)])},J(i.formatValue(n.data)),3)]))])}const $Pn=Ye(APn,[["render",PPn],["__scopeId","data-v-0535817b"]]),VPn={name:"JsonViewer",components:{JsonNode:$Pn},props:{data:{required:!0},title:{type:String,default:"JSON Data"}},data(){return{expanded:!0}},computed:{parsedData(){if(typeof this.data=="string")try{return JSON.parse(this.data)}catch{return{error:"Invalid JSON"}}return this.data}},methods:{toggle(){this.expanded=!this.expanded}}},BPn={class:"json-viewer"},FPn={class:"toggle-icon"},UPn={class:"title"},qPn={key:0,class:"viewer-content"};function GPn(t,e,n,o,r,i){const s=ze("json-node");return N(),H("div",BPn,[S("div",{class:"viewer-header",onClick:e[0]||(e[0]=(...a)=>i.toggle&&i.toggle(...a))},[S("span",FPn,J(r.expanded?"▼":"▶"),1),S("span",UPn,J(n.title),1)]),r.expanded?(N(),H("div",qPn,[ne(s,{data:i.parsedData},null,8,["data"])])):Z("",!0)])}const jPn=Ye(VPn,[["render",GPn],["__scopeId","data-v-6fbe5047"]]),zPn={props:{done:Boolean,text:String,status:Boolean,description:String}},YPn={class:"flex items-start gap-2 w-full"},WPn={class:"w-4 h-4 flex-shrink-0"},KPn={key:0,class:"w-4 h-4 text-green-500 dark:text-green-400",viewBox:"0 0 24 24",fill:"currentColor"},ZPn={key:1,class:"w-4 h-4 text-red-500 dark:text-red-400",viewBox:"0 0 24 24",fill:"currentColor"},XPn={key:1,class:"w-4 h-4 border-2 border-t-primary rounded-full animate-spin"},JPn={class:"min-w-0"},e$n={class:"text-sm text-gray-700 dark:text-gray-200 truncate"},t$n={key:0,class:"text-xs text-gray-500 dark:text-gray-400 truncate"};function n$n(t,e,n,o,r,i){return N(),H("div",{class:Ee(["flex items-center p-2 rounded transition-colors duration-200",[n.done?"bg-opacity-5":"bg-opacity-3",n.status?"bg-green-50 dark:bg-green-900/20":"bg-gray-50 dark:bg-gray-800/20"]])},[S("div",YPn,[S("div",WPn,[n.done?(N(),H(xe,{key:0},[n.status?(N(),H("svg",KPn,e[0]||(e[0]=[S("path",{d:"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z"},null,-1)]))):(N(),H("svg",ZPn,e[1]||(e[1]=[S("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"},null,-1)])))],64)):(N(),H("div",XPn))]),S("div",JPn,[S("div",e$n,J(n.text||"No text provided"),1),n.description?(N(),H("div",t$n,J(n.description),1)):Z("",!0)])])],2)}const r$n=Ye(zPn,[["render",n$n],["__scopeId","data-v-2cb174d6"]]),i$n="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='iso-8859-1'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20fill='%23000000'%20height='800px'%20width='800px'%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20viewBox='0%200%20480%20480'%20xml:space='preserve'%3e%3cg%3e%3cg%3e%3cg%3e%3cpath%20d='M240,0C107.664,0,0,107.664,0,240s107.664,240,240,240s240-107.664,240-240S372.336,0,240,0z%20M240,460%20c-121.309,0-220-98.691-220-220S118.691,20,240,20s220,98.691,220,220S361.309,460,240,460z'/%3e%3cpath%20d='M410,194.999h-27.058c-2.643-8.44-6-16.56-10.03-24.271l19.158-19.158c3.776-3.775,5.854-8.79,5.854-14.121%20c0-5.332-2.08-10.347-5.854-14.121l-35.399-35.399c-3.775-3.775-8.79-5.854-14.122-5.854c-5.331,0-10.346,2.079-14.121,5.854%20l-19.158,19.158c-7.711-4.03-15.832-7.386-24.271-10.03V70c0-11.028-8.972-20-20-20h-50c-11.028,0-20,8.972-20,20v27.058%20c-8.44,2.643-16.56,6-24.271,10.03L151.57,87.93c-3.775-3.776-8.79-5.854-14.121-5.854c-5.332,0-10.347,2.08-14.121,5.854%20l-35.399,35.399c-3.775,3.775-5.854,8.79-5.854,14.122c0,5.331,2.079,10.346,5.854,14.121l19.158,19.158%20c-4.03,7.711-7.386,15.832-10.03,24.271H70c-11.028,0-20,8.972-20,20v50c0,11.028,8.972,20,20,20h27.057%20c2.643,8.44,6,16.56,10.03,24.271L87.929,328.43c-3.776,3.775-5.854,8.79-5.854,14.121c0,5.332,2.08,10.347,5.854,14.121%20l35.399,35.399c3.775,3.775,8.79,5.854,14.122,5.854c5.331,0,10.346-2.079,14.121-5.854l19.158-19.158%20c7.711,4.03,15.832,7.386,24.271,10.03V410c0,11.028,8.972,20,20,20h50c11.028,0,20-8.972,20.001-20v-27.058%20c8.44-2.643,16.56-6,24.271-10.03l19.158,19.158c3.775,3.776,8.79,5.854,14.121,5.854c5.332,0,10.347-2.08,14.121-5.854%20l35.399-35.399c3.775-3.775,5.854-8.79,5.854-14.122c0-5.331-2.079-10.346-5.854-14.121l-19.158-19.158%20c4.03-7.711,7.386-15.832,10.03-24.271H410c11.028,0,20-8.972,20-20v-50C430,203.971,421.028,194.999,410,194.999z%20M410,264.998%20h-34.598c-4.562,0-8.544,3.086-9.684,7.503c-3.069,11.901-7.716,23.133-13.813,33.387c-2.337,3.931-1.71,8.948,1.524,12.182%20l24.5,24.457l-35.357,35.4l-24.5-24.5c-3.236-3.235-8.253-3.86-12.182-1.524c-10.254,6.097-21.487,10.745-33.387,13.813%20c-4.417,1.14-7.503,5.122-7.503,9.684V410h-50v-34.599c0-4.562-3.086-8.544-7.503-9.684%20c-11.901-3.069-23.133-7.716-33.387-13.813c-1.587-0.944-3.353-1.404-5.107-1.404c-2.586,0-5.147,1.002-7.073,2.931l-24.457,24.5%20l-35.4-35.357l24.5-24.5c3.234-3.235,3.861-8.251,1.524-12.182c-6.097-10.254-10.745-21.487-13.813-33.387%20c-1.14-4.417-5.122-7.503-9.684-7.503H70v-50h34.596c4.562,0,8.544-3.086,9.684-7.503c3.069-11.901,7.716-23.133,13.813-33.387%20c2.337-3.931,1.71-8.948-1.524-12.182l-24.5-24.457l35.357-35.4l24.5,24.5c3.236,3.235,8.253,3.861,12.182,1.524%20c10.254-6.097,21.487-10.745,33.387-13.813c4.417-1.14,7.503-5.122,7.503-9.684V70h50v34.596c0,4.562,3.086,8.544,7.503,9.684%20c11.901,3.069,23.133,7.716,33.387,13.813c3.929,2.337,8.947,1.709,12.182-1.524l24.457-24.5l35.4,35.357l-24.5,24.5%20c-3.234,3.235-3.861,8.251-1.524,12.182c6.097,10.254,10.745,21.487,13.813,33.387c1.14,4.417,5.122,7.503,9.684,7.503H410%20V264.998z'/%3e%3cpath%20d='M331.585,292.475l-40-35l-13.17,15.051L298.386,290H240c-27.57,0-50-22.43-50-50h-20c0,38.598,31.402,70,70,70h58.386%20l-19.971,17.475l13.17,15.051l40-35c2.17-1.898,3.415-4.642,3.415-7.525S333.755,294.373,331.585,292.475z'/%3e%3cpath%20d='M201.585,207.473L181.614,190H240c27.57,0,50,22.43,50,50h20c0-38.598-31.402-70-70-70h-58.386l19.971-17.475%20l-13.17-15.051l-40,35c-2.17,1.898-3.415,4.642-3.415,7.525s1.245,5.627,3.415,7.525l40,35L201.585,207.473z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3canimateTransform%20attributeName='transform'%20attributeType='XML'%20type='rotate'%20from='0%20240%20240'%20to='360%20240%20240'%20dur='10s'%20repeatCount='indefinite'%20/%3e%3c/svg%3e",o$n="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2050%2050'%3e%3cpath%20d='M25%200C11.6%200%200%2011.6%200%2025s11.6%2025%2025%2025%2025-11.6%2025-25S40.4%200%2025%200zm0%2048C12.8%2048%202%2039.2%202%2025S12.8%202%2025%202s24%2010.8%2024%2024-10.8%2024-24%2024zm-4-33l-8%208%2018%2018%2030-30-8-8-22%2022L22%2016'%20fill='green'/%3e%3c/svg%3e",s$n="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%3e%3cpath%20d='M0%200h24v24H0z'%20fill='none'/%3e%3cpath%20d='M19%206.41L17.59%205%2012%2010.59%206.41%205%205%206.41%2010.59%2012%205%2017.59%206.41%2019%2012%2013.41%2017.59%2019%2019%2017.59%2013.41%2012%2019%206.41z'%20fill='red'/%3e%3c/svg%3e",Ik="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20version='1.1'%20width='256'%20height='256'%20viewBox='0%200%20256%20256'%20xml:space='preserve'%3e%3cdefs%3e%3c/defs%3e%3cg%20style='stroke:%20white;%20stroke-width:%202px;%20stroke-dasharray:%20none;%20stroke-linecap:%20butt;%20stroke-linejoin:%20miter;%20stroke-miterlimit:%2010;%20fill:%20none;%20fill-rule:%20nonzero;%20opacity:%201;'%20transform='translate(1.4065934065934016%201.4065934065934016)%20scale(2.81%202.81)'%20%3e%3cpath%20d='M%2089.999%203.075%20C%2090%203.02%2090%202.967%2089.999%202.912%20c%20-0.004%20-0.134%20-0.017%20-0.266%20-0.038%20-0.398%20c%20-0.007%20-0.041%20-0.009%20-0.081%20-0.018%20-0.122%20c%20-0.034%20-0.165%20-0.082%20-0.327%20-0.144%20-0.484%20c%20-0.018%20-0.046%20-0.041%20-0.089%20-0.061%20-0.134%20c%20-0.053%20-0.119%20-0.113%20-0.234%20-0.182%20-0.346%20C%2089.528%201.382%2089.5%201.336%2089.469%201.29%20c%20-0.102%20-0.147%20-0.212%20-0.288%20-0.341%20-0.417%20c%20-0.13%20-0.13%20-0.273%20-0.241%20-0.421%20-0.344%20c%20-0.042%20-0.029%20-0.085%20-0.056%20-0.129%20-0.082%20c%20-0.118%20-0.073%20-0.239%20-0.136%20-0.364%20-0.191%20c%20-0.039%20-0.017%20-0.076%20-0.037%20-0.116%20-0.053%20c%20-0.161%20-0.063%20-0.327%20-0.113%20-0.497%20-0.147%20c%20-0.031%20-0.006%20-0.063%20-0.008%20-0.094%20-0.014%20c%20-0.142%20-0.024%20-0.285%20-0.038%20-0.429%20-0.041%20C%2087.03%200%2086.983%200%2086.936%200.001%20c%20-0.141%200.003%20-0.282%200.017%20-0.423%200.041%20c%20-0.035%200.006%20-0.069%200.008%20-0.104%200.015%20c%20-0.154%200.031%20-0.306%200.073%20-0.456%200.129%20L%201.946%2031.709%20c%20-1.124%200.422%20-1.888%201.473%20-1.943%202.673%20c%20-0.054%201.199%200.612%202.316%201.693%202.838%20l%2034.455%2016.628%20l%2016.627%2034.455%20C%2053.281%2089.344%2054.334%2090%2055.481%2090%20c%200.046%200%200.091%20-0.001%200.137%20-0.003%20c%201.199%20-0.055%202.251%20-0.819%202.673%20-1.943%20L%2089.815%204.048%20c%200.056%20-0.149%200.097%20-0.3%200.128%20-0.453%20c%200.008%20-0.041%200.011%20-0.081%200.017%20-0.122%20C%2089.982%203.341%2089.995%203.208%2089.999%203.075%20z%20M%2075.086%2010.672%20L%2037.785%2047.973%20L%2010.619%2034.864%20L%2075.086%2010.672%20z%20M%2055.136%2079.381%20L%2042.027%2052.216%20l%2037.302%20-37.302%20L%2055.136%2079.381%20z'%20style='stroke:%20none;%20stroke-width:%201;%20stroke-dasharray:%20none;%20stroke-linecap:%20butt;%20stroke-linejoin:%20miter;%20stroke-miterlimit:%2010;%20fill:%20rgb(0,0,0);%20fill-rule:%20nonzero;%20opacity:%201;'%20transform='%20matrix(1%200%200%201%200%200)%20'%20stroke-linecap='round'%20/%3e%3ccircle%20cx='75'%20cy='75'%20r='15'%20fill='%23008000'/%3e%3cpath%20d='M75,60%20A15,15%200%200,1%2090,75%20A15,15%200%200,1%2075,90%20A15,15%200%200,1%2060,75%20A15,15%200%200,1%2075,60%20Z'%20stroke='%23FFFFFF'%20stroke-width='2'%20fill='none'/%3e%3cpath%20d='M81,75%20A6,6%200%200,1%2075,81%20A6,6%200%200,1%2069,75%20A6,6%200%200,1%2075,69%20A6,6%200%200,1%2081,75%20Z'%20fill='%23FFFFFF'/%3e%3c/g%3e%3c/svg%3e",a$n="/",l$n={name:"Message",emits:["copy","delete","rankUp","rankDown","updateMessage","resendMessage","continueMessage"],components:{MarkdownRenderer:Q0,Step:r$n,RenderHTMLJS:CPn,JsonViewer:jPn,DynamicUIRenderer:Rk,ToolbarButton:gh,DropdownMenu:Mk},props:{host:{type:String,required:!1,default:"http://localhost:9600"},message:Object,avatar:{default:""}},data(){return{ui_componentKey:0,isSynthesizingVoice:!1,cpp_block:gk,html5_block:_k,LaTeX_block:Qk,json_block:mk,javascript_block:hk,process_svg:i$n,ok_svg:o$n,failed_svg:s$n,loading_svg:yk,sendGlobe:Ik,code_block:fk,python_block:pk,bash_block:vk,audio_url:null,audio:null,msg:null,isSpeaking:!1,speechSynthesis:null,voices:[],expanded:!1,showConfirmation:!1,editMsgMode_:!1,deleteMsgMode:!1,mdRenderHeight:Number}},mounted(){if("speechSynthesis"in window?(this.speechSynthesis=window.speechSynthesis,this.voices=this.speechSynthesis.getVoices(),this.voices.length===0?this.speechSynthesis.addEventListener("voiceschanged",this.onVoicesChanged):console.log("No voices found")):console.error("Speech synthesis is not supported in this browser."),Se(()=>{Ce.replace(),this.mdRenderHeight=this.$refs.mdRender.$el.offsetHeight}),console.log("Checking metadata"),console.log(this.message),Object.prototype.hasOwnProperty.call(this.message,"metadata")&&this.message.metadata!=null){console.log("Metadata found!"),Array.isArray(this.message.metadata)||(this.message.metadata=[]),console.log(typeof this.message.metadata),console.log(this.message.metadata);for(let t of this.message.metadata)Object.prototype.hasOwnProperty.call(t,"audio_url")&&t.audio_url!=null&&(this.audio_url=t.audio_url,console.log("Audio URL:",this.audio_url))}},methods:{toggleExpanded(){this.expanded=!this.expanded},computeTimeDiff(t,e){let n=e.getTime()-t.getTime();const o=Math.floor(n/(1e3*60*60));n-=o*(1e3*60*60);const r=Math.floor(n/(1e3*60));n-=r*(1e3*60);const i=Math.floor(n/1e3);return n-=i*1e3,[o,r,i]},insertTab(t){const e=t.target,n=e.selectionStart,o=e.selectionEnd,r=t.shiftKey;if(n===o)if(r){if(e.value.substring(n-4,n)==" "){const i=e.value.substring(0,n-4),s=e.value.substring(o),a=i+s;this.message.content=a,this.$nextTick(()=>{e.selectionStart=e.selectionEnd=n-4})}}else{const i=e.value.substring(0,n),s=e.value.substring(o),a=i+" "+s;this.message.content=a,this.$nextTick(()=>{e.selectionStart=e.selectionEnd=n+4})}else{const s=e.value.substring(n,o).split(` `).map(u=>u.trim()===""?u:r?u.startsWith(" ")?u.substring(4):u:" "+u),a=e.value.substring(0,n),l=e.value.substring(o),c=a+s.join(` `)+l;this.message.content=c,this.$nextTick(()=>{e.selectionStart=n,e.selectionEnd=o+s.length*4})}t.preventDefault()},onVoicesChanged(){this.voices=this.speechSynthesis.getVoices()},read(){this.isSynthesizingVoice?(this.isSynthesizingVoice=!1,this.$refs.audio_player.pause()):(this.isSynthesizingVoice=!0,ce.post("./text2wav",{text:this.message.content}).then(t=>{this.isSynthesizingVoice=!1;let e=t.data.url;console.log(e),this.audio_url=e,this.message.metadata||(this.message.metadata=[]);let n=!1;for(let o of this.message.metadata)Object.prototype.hasOwnProperty.call(o,"audio_url")&&(o.audio_url=this.audio_url,n=!0);n||this.message.metadata.push({audio_url:this.audio_url}),this.$emit("updateMessage",this.message.id,this.message.content,this.audio_url)}).catch(t=>{this.$store.state.toast.showToast(`Error: ${t}`,4,!1),this.isSynthesizingVoice=!1}))},async speak(){if(this.$store.state.config.active_tts_service!="browser"&&this.$store.state.config.active_tts_service!="None")this.isSpeaking?(this.isSpeaking=!0,ce.post("./stop",{text:this.message.content}).then(t=>{this.isSpeaking=!1}).catch(t=>{this.$store.state.toast.showToast(`Error: ${t}`,4,!1),this.isSpeaking=!1})):(this.isSpeaking=!0,ce.post("./text2Audio",{client_id:this.$store.state.client_id,text:this.message.content}).then(t=>{this.isSpeaking=!1}).catch(t=>{this.$store.state.toast.showToast(`Error: ${t}`,4,!1),this.isSpeaking=!1}));else{if(this.msg){this.speechSynthesis.cancel(),this.msg=null,this.isSpeaking=!1;return}let t=0;console.log("voice on"),this.isSpeaking=!0;const e=200;this.message.content,this.msg=new SpeechSynthesisUtterance,this.msg.pitch=this.$store.state.config.audio_pitch,this.voices.length>0&&(this.msg.voice=this.voices.filter(r=>r.name===this.$store.state.config.audio_out_voice)[0]);const n=r=>{let i=this.message.content.substring(r,r+e);const s=[".","!","?",` `];let a=-1;return s.forEach(l=>{const c=i.lastIndexOf(l);c>a&&(a=c)}),a==-1&&(a=i.length),console.log(a),a+r+1},o=()=>{if(this.message.status_message=="Done"||this.message.content.includes(".")||this.message.content.includes("?")||this.message.content.includes("!")){const r=n(t),i=this.message.content.substring(t,r);this.msg.text=i,t=r+1,this.msg.onend=s=>{t{o()},1):(this.isSpeaking=!1,console.log("voice off :",this.message.content.length," ",r))},this.speechSynthesis.speak(this.msg)}else setTimeout(()=>{o()},1)};console.log("Speaking chunk"),o()}},toggleModel(){this.expanded=!this.expanded},addBlock(t){let e=this.$refs.mdTextarea.selectionStart,n=this.$refs.mdTextarea.selectionEnd;e==n?speechSynthesis==0||this.message.content[e-1]==` `?(this.message.content=this.message.content.slice(0,e)+"```"+t+"\n\n```\n"+this.message.content.slice(e),e=e+4+t.length):(this.message.content=this.message.content.slice(0,e)+"\n```"+t+"\n\n```\n"+this.message.content.slice(e),e=e+3+t.length):speechSynthesis==0||this.message.content[e-1]==` `?(this.message.content=this.message.content.slice(0,e)+"```"+t+` `+this.message.content.slice(e,n)+"\n```\n"+this.message.content.slice(n),e=e+4+t.length):(this.message.content=this.message.content.slice(0,e)+"\n```"+t+` -`+this.message.content.slice(e,n)+"\n```\n"+this.message.content.slice(n),p=p+3+t.length),this.$refs.mdTextarea.focus(),this.$refs.mdTextarea.selectionStart=this.$refs.mdTextarea.selectionEnd=p},copyContentToClipboard(){this.$emit("copy",this)},deleteMsg(){this.$emit("delete",this.message.id),this.deleteMsgMode=!1},rankUp(){this.$emit("rankUp",this.message.id)},rankDown(){this.$emit("rankDown",this.message.id)},updateMessage(){this.$emit("updateMessage",this.message.id,this.message.content,this.audio_url),this.editMsgMode=!1},resendMessage(t){this.$emit("resendMessage",this.message.id,this.message.content,t)},continueMessage(){console.log("Emitting continueMessage"),this.$emit("continueMessage",this.message.id,this.message.content)},getImgUrl(){return this.avatar?s$n+this.avatar:(console.log("No avatar found"),Wi)},defaultImg(t){t.target.src=Wi},parseDate(t){let e=new Date(Date.parse(t)),o=Math.floor((new Date-e)/1e3);return o<=1?"just now":o<20?o+" seconds ago":o<40?"half a minute ago":o<60?"less than a minute ago":o<=90?"one minute ago":o<=3540?Math.round(o/60)+" minutes ago":o<=5400?"1 hour ago":o<=86400?Math.round(o/3600)+" hours ago":o<=129600?"1 day ago":o<604800?Math.round(o/86400)+" days ago":o<=777600?"1 week ago":t},prettyDate(t){let e=new Date((t||"").replace(/-/g,"/").replace(/[TZ]/g," ")),n=(new Date().getTime()-e.getTime())/1e3,o=Math.floor(n/86400);if(!(isNaN(o)||o<0||o>=31))return o==0&&(n<60&&"just now"||n<120&&"1 minute ago"||n<3600&&Math.floor(n/60)+" minutes ago"||n<7200&&"1 hour ago"||n<86400&&Math.floor(n/3600)+" hours ago")||o==1&&"Yesterday"||o<7&&o+" days ago"||o<31&&Math.ceil(o/7)+" weeks ago"},checkForFullSentence(){if(this.message.content.trim().split(" ").length>3){this.speak();return}}},watch:{audio_url(t){t&&(this.$refs.audio_player.src=t)},"message.content":function(t){this.$store.state.config.auto_speak&&(this.$store.state.config.xtts_enable&&this.$store.state.config.xtts_use_streaming_mode||this.isSpeaking||this.checkForFullSentence())},"message.ui":function(t){console.log("ui changed to",t),this.ui_componentKey++},showConfirmation(){Se(()=>{Ce.replace()})},deleteMsgMode(){Se(()=>{Ce.replace()})}},computed:{editMsgMode:{get(){return this.message.hasOwnProperty("open")?this.editMsgMode_||this.message.open:this.editMsgMode_},set(t){this.message.open=t,this.editMsgMode_=t,Se(()=>{Ce.replace()})}},isTalking:{get(){return this.isSpeaking}},created_at(){return this.prettyDate(this.message.created_at)},created_at_parsed(){return new Date(Date.parse(this.message.created_at)).toLocaleString()},finished_generating_at_parsed(){return new Date(Date.parse(this.message.finished_generating_at)).toLocaleString()},time_spent(){const t=new Date(Date.parse(this.message.started_generating_at)),e=new Date(Date.parse(this.message.finished_generating_at));if(e.getTime()===t.getTime()||!t.getTime()||!e.getTime())return;let[o,r,i]=this.computeTimeDiff(t,e);function s(l){return l<10&&(l="0"+l),l}return s(o)+"h:"+s(r)+"m:"+s(i)+"s"},warmup_duration(){const t=new Date(Date.parse(this.message.created_at)),e=new Date(Date.parse(this.message.started_generating_at));if(console.log("Computing the warmup duration, ",t," -> ",e),e.getTime()===t.getTime())return 0;if(!t.getTime()||!e.getTime())return;let o,r,i;[o,r,i]=this.computeTimeDiff(t,e);function s(l){return l<10&&(l="0"+l),l}return s(o)+"h:"+s(r)+"m:"+s(i)+"s"},generation_rate(){const t=new Date(Date.parse(this.message.started_generating_at)),e=new Date(Date.parse(this.message.finished_generating_at)),n=this.message.nb_tokens;if(e.getTime()===t.getTime()||!n||!t.getTime()||!e.getTime())return;let r=e.getTime()-t.getTime();const i=Math.floor(r/1e3),s=n/i;return Math.round(s)+" t/s"}}},l$n={class:"relative message w-full group rounded-lg m-2 shadow-lg hover:border-primary dark:hover:border-primary hover:border-solid hover:border-2 border-2 border-transparent flex flex-col flex-grow flex-wrap overflow-visible p-4 pb-2"},c$n={class:"flex flex-row gap-2"},u$n={class:"flex-shrink-0"},d$n={class:"group/avatar"},T$n=["src","data-popover-target"],f$n={class:"flex flex-col w-full flex-grow-0"},p$n={class:"flex flex-row flex-grow items-start"},h$n={class:"flex flex-col mb-2"},m$n={class:"drop-shadow-sm text-lg text-opacity-95 font-bold grow"},g$n=["title"],_$n={class:"overflow-x-auto w-full overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary space-y-2"},Q$n={key:1},v$n=["src"],y$n={class:"message-details w-full max-w-4xl mx-auto"},b$n={key:0,class:"steps-container bg-white/50 dark:bg-gray-800/50 rounded border border-gray-200 dark:border-gray-700 text-sm mb-2"},E$n={class:"text-gray-600 dark:text-gray-300 flex-grow"},S$n={key:0,class:"overflow-hidden"},x$n={class:"px-2 pb-2 space-y-1"},L$n={key:1,class:"flex flex-col items-start w-full overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"},C$n={class:"flex-row justify-end mx-2"},A$n={class:"invisible group-hover:visible flex flex-row"},w$n={key:0},O$n={key:1},M$n={key:2},R$n={key:3},N$n={key:4,class:"flex items-center duration-75"},D$n={class:"flex flex-row items-center"},I$n={class:"flex flex-row items-center"},k$n={key:6,class:"flex flex-row items-center"},H$n=["src"],P$n={class:"text-sm text-gray-400 mt-2"},$$n={class:"flex flex-row items-center gap-2"},V$n={key:0},B$n={class:"font-thin"},F$n={key:1},U$n={class:"font-thin"},q$n={key:2},G$n={class:"font-thin"},j$n={key:3},z$n=["title"],Y$n={key:4},W$n=["title"],K$n={key:5},Z$n=["title"],X$n={key:6},J$n=["title"];function eVn(t,e,n,o,r,i){var g;const s=ze("MarkdownRenderer"),a=ze("JsonViewer"),l=ze("DynamicUIRenderer"),c=ze("StatusIcon"),u=ze("Step"),d=ze("RenderHTMLJS"),f=ze("ToolbarButton"),T=ze("DropdownSubmenu"),h=ze("DropdownMenu");return N(),H("div",l$n,[S("div",c$n,[S("div",u$n,[S("div",d$n,[S("img",{src:i.getImgUrl(),onError:e[0]||(e[0]=Q=>i.defaultImg(Q)),"data-popover-target":"avatar"+n.message.id,"data-popover-placement":"bottom",class:"w-10 h-10 rounded-full object-fill text-red-700"},null,40,T$n)])]),S("div",f$n,[S("div",p$n,[S("div",h$n,[S("div",m$n,J(n.message.sender),1),n.message.created_at?(N(),H("div",{key:0,class:"text-sm text-gray-400 font-thin",title:"Created at: "+i.created_at_parsed},J(i.created_at),9,g$n)):Z("",!0)]),e[46]||(e[46]=S("div",{class:"flex-grow"},null,-1))]),S("div",_$n,[i.editMsgMode?Z("",!0):(N(),ot(s,{key:0,ref:"mdRender",host:n.host,"markdown-text":n.message.content,message_id:n.message.id,discussion_id:n.message.discussion_id,client_id:this.$store.state.client_id},null,8,["host","markdown-text","message_id","discussion_id","client_id"])),S("div",null,[n.message.open?Le((N(),H("textarea",{key:0,ref:"mdTextarea",onKeydown:e[1]||(e[1]=Qn(oe((...Q)=>i.insertTab&&i.insertTab(...Q),["prevent"]),["tab"])),class:"block min-h-[500px] p-2.5 w-full text-gray-900 bg-gray-50 rounded-lg border border-gray-300 focus:ring-blue-500 focus:border-blue-500 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500 overflow-y-scroll flex flex-col shadow-lg p-10 pt-0 overflow-y-scroll dark:bg-bg-dark scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary",rows:4,placeholder:"Enter message here...","onUpdate:modelValue":e[2]||(e[2]=Q=>n.message.content=Q)}," ",544)),[[Je,n.message.content]]):Z("",!0)]),n.message.metadata!==null?(N(),H("div",Q$n,[(N(!0),H(xe,null,Pe(((g=n.message.metadata)==null?void 0:g.filter(Q=>Q!=null&&Q.hasOwnProperty("title")&&Q.hasOwnProperty("content")))||[],(Q,m)=>(N(),H("div",{key:"json-"+n.message.id+"-"+m,class:"json font-bold"},[(N(),ot(a,{title:Q.title,data:Q.content,key:"msgjson-"+n.message.id},null,8,["title","data"]))]))),128))])):Z("",!0),n.message.ui?(N(),ot(l,{ref:"ui",class:"w-full",ui:n.message.ui,key:"msgui-"+n.message.id},null,8,["ui"])):Z("",!0),r.audio_url!=null?(N(),H("audio",{controls:"",key:r.audio_url},[S("source",{src:r.audio_url,type:"audio/wav",ref:"audio_player"},null,8,v$n),e[47]||(e[47]=Re(" Your browser does not support the audio element. "))])):Z("",!0),S("div",y$n,[n.message.steps.length>0?(N(),H("div",b$n,[S("div",{class:"flex items-center p-2 cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-700/50 transition-colors duration-200",onClick:e[3]||(e[3]=(...Q)=>i.toggleExpanded&&i.toggleExpanded(...Q))},[ne(c,{status:n.message.status_message,icon:!0,class:"w-4 h-4 mr-2"},null,8,["status"]),S("span",E$n,J(n.message.status_message),1),S("span",{class:Ee(["text-xs text-gray-400 transform transition-transform duration-200",{"rotate-180":r.expanded}])},"▼",2)]),ne(Nr,{"enter-active-class":"transition-all duration-200 ease-out","leave-active-class":"transition-all duration-150 ease-in","enter-from-class":"opacity-0 max-h-0","enter-to-class":"opacity-100 max-h-[500px]","leave-from-class":"opacity-100 max-h-[500px]","leave-to-class":"opacity-0 max-h-0"},{default:Ge(()=>[r.expanded?(N(),H("div",S$n,[S("div",x$n,[(N(!0),H(xe,null,Pe(n.message.steps,(Q,m)=>(N(),H("div",{key:`step-${n.message.id}-${m}`,class:"animate-fadeIn",style:an({animationDelay:`${m*50}ms`})},[ne(u,{done:Q.done,text:Q.text,status:Q.status,description:Q.description,class:"text-xs rounded bg-gray-50/50 dark:bg-gray-700/50 p-2 hover:bg-gray-100 dark:hover:bg-gray-600/50"},null,8,["done","text","status","description"])],4))),128))])])):Z("",!0)]),_:1})])):Z("",!0),n.message.html_js_s&&n.message.html_js_s.length?(N(),H("div",L$n,[(N(!0),H(xe,null,Pe(n.message.html_js_s,(Q,m)=>(N(),H("div",{key:`htmljs-${n.message.id}-${m}`,class:"font-bold animate-fadeIn",style:an({animationDelay:`${m*200}ms`})},[ne(d,{htmlContent:Q},null,8,["htmlContent"])],4))),128))])):Z("",!0)])]),S("div",C$n,[S("div",A$n,[i.editMsgMode?(N(),H("div",w$n,[ne(f,{onClick:e[4]||(e[4]=oe(Q=>i.editMsgMode=!1,["stop"])),title:"Cancel edit",icon:"x"}),ne(f,{onClick:oe(i.updateMessage,["stop"]),title:"Update message",icon:"check"},null,8,["onClick"]),ne(h,{title:"Add Block"},{default:Ge(()=>[ne(T,{title:"Programming Languages",icon:"code"},{default:Ge(()=>[ne(f,{onClick:e[5]||(e[5]=oe(Q=>i.addBlock("python"),["stop"])),title:"Python",icon:"python"}),ne(f,{onClick:e[6]||(e[6]=oe(Q=>i.addBlock("javascript"),["stop"])),title:"JavaScript",icon:"js"}),ne(f,{onClick:e[7]||(e[7]=oe(Q=>i.addBlock("typescript"),["stop"])),title:"TypeScript",icon:"typescript"}),ne(f,{onClick:e[8]||(e[8]=oe(Q=>i.addBlock("java"),["stop"])),title:"Java",icon:"java"}),ne(f,{onClick:e[9]||(e[9]=oe(Q=>i.addBlock("c++"),["stop"])),title:"C++",icon:"cplusplus"}),ne(f,{onClick:e[10]||(e[10]=oe(Q=>i.addBlock("csharp"),["stop"])),title:"C#",icon:"csharp"}),ne(f,{onClick:e[11]||(e[11]=oe(Q=>i.addBlock("go"),["stop"])),title:"Go",icon:"go"}),ne(f,{onClick:e[12]||(e[12]=oe(Q=>i.addBlock("rust"),["stop"])),title:"Rust",icon:"rust"}),ne(f,{onClick:e[13]||(e[13]=oe(Q=>i.addBlock("swift"),["stop"])),title:"Swift",icon:"swift"}),ne(f,{onClick:e[14]||(e[14]=oe(Q=>i.addBlock("kotlin"),["stop"])),title:"Kotlin",icon:"kotlin"}),ne(f,{onClick:e[15]||(e[15]=oe(Q=>i.addBlock("r"),["stop"])),title:"R",icon:"r-project"})]),_:1}),ne(T,{title:"Web Technologies",icon:"web"},{default:Ge(()=>[ne(f,{onClick:e[16]||(e[16]=oe(Q=>i.addBlock("html"),["stop"])),title:"HTML",icon:"html5"}),ne(f,{onClick:e[17]||(e[17]=oe(Q=>i.addBlock("css"),["stop"])),title:"CSS",icon:"css3"}),ne(f,{onClick:e[18]||(e[18]=oe(Q=>i.addBlock("vue"),["stop"])),title:"Vue.js",icon:"vuejs"}),ne(f,{onClick:e[19]||(e[19]=oe(Q=>i.addBlock("react"),["stop"])),title:"React",icon:"react"}),ne(f,{onClick:e[20]||(e[20]=oe(Q=>i.addBlock("angular"),["stop"])),title:"Angular",icon:"angular"})]),_:1}),ne(T,{title:"Markup and Data",icon:"file-code"},{default:Ge(()=>[ne(f,{onClick:e[21]||(e[21]=oe(Q=>i.addBlock("xml"),["stop"])),title:"XML",icon:"xml"}),ne(f,{onClick:e[22]||(e[22]=oe(Q=>i.addBlock("json"),["stop"])),title:"JSON",icon:"json"}),ne(f,{onClick:e[23]||(e[23]=oe(Q=>i.addBlock("yaml"),["stop"])),title:"YAML",icon:"yaml"}),ne(f,{onClick:e[24]||(e[24]=oe(Q=>i.addBlock("markdown"),["stop"])),title:"Markdown",icon:"markdown"}),ne(f,{onClick:e[25]||(e[25]=oe(Q=>i.addBlock("latex"),["stop"])),title:"LaTeX",icon:"latex"})]),_:1}),ne(T,{title:"Scripting and Shell",icon:"terminal"},{default:Ge(()=>[ne(f,{onClick:e[26]||(e[26]=oe(Q=>i.addBlock("bash"),["stop"])),title:"Bash",icon:"bash"}),ne(f,{onClick:e[27]||(e[27]=oe(Q=>i.addBlock("powershell"),["stop"])),title:"PowerShell",icon:"powershell"}),ne(f,{onClick:e[28]||(e[28]=oe(Q=>i.addBlock("perl"),["stop"])),title:"Perl",icon:"perl"})]),_:1}),ne(T,{title:"Diagramming",icon:"sitemap"},{default:Ge(()=>[ne(f,{onClick:e[29]||(e[29]=oe(Q=>i.addBlock("mermaid"),["stop"])),title:"Mermaid",icon:"mermaid"}),ne(f,{onClick:e[30]||(e[30]=oe(Q=>i.addBlock("graphviz"),["stop"])),title:"Graphviz",icon:"graphviz"}),ne(f,{onClick:e[31]||(e[31]=oe(Q=>i.addBlock("plantuml"),["stop"])),title:"PlantUML",icon:"plantuml"})]),_:1}),ne(T,{title:"Database",icon:"database"},{default:Ge(()=>[ne(f,{onClick:e[32]||(e[32]=oe(Q=>i.addBlock("sql"),["stop"])),title:"SQL",icon:"sql"}),ne(f,{onClick:e[33]||(e[33]=oe(Q=>i.addBlock("mongodb"),["stop"])),title:"MongoDB",icon:"mongodb"})]),_:1}),ne(f,{onClick:e[34]||(e[34]=oe(Q=>i.addBlock(""),["stop"])),title:"Generic Block",icon:"code"})]),_:1})])):(N(),H("div",O$n,[ne(f,{onClick:e[35]||(e[35]=oe(Q=>i.editMsgMode=!0,["stop"])),title:"Edit message",icon:"edit"})])),ne(f,{onClick:i.copyContentToClipboard,title:"Copy message to clipboard",icon:"copy"},null,8,["onClick"]),!i.editMsgMode&&n.message.sender!==t.$store.state.mountedPers.name?(N(),H("div",M$n,[ne(f,{onClick:e[36]||(e[36]=oe(Q=>i.resendMessage("full_context"),["stop"])),title:"Resend message with full context",icon:"send"}),ne(f,{onClick:e[37]||(e[37]=oe(Q=>i.resendMessage("full_context_with_internet"),["stop"])),title:"Resend message with internet search",icon:"globe"}),ne(f,{onClick:e[38]||(e[38]=oe(Q=>i.resendMessage("simple_question"),["stop"])),title:"Resend message without context",icon:"sendSimple"})])):Z("",!0),!i.editMsgMode&&n.message.sender===t.$store.state.mountedPers.name?(N(),H("div",R$n,[ne(f,{onClick:oe(i.continueMessage,["stop"]),title:"Continue message",icon:"fastForward"},null,8,["onClick"])])):Z("",!0),r.deleteMsgMode?(N(),H("div",N$n,[S("button",{class:"text-2xl hover:text-red-600 duration-75 active:scale-90 p-2 cursor-pointer",title:"Cancel removal",type:"button",onClick:e[39]||(e[39]=oe(Q=>r.deleteMsgMode=!1,["stop"]))},e[48]||(e[48]=[S("i",{"data-feather":"x"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90 p-2 cursor-pointer",title:"Confirm removal",type:"button",onClick:e[40]||(e[40]=oe(Q=>i.deleteMsg(),["stop"]))},e[49]||(e[49]=[S("i",{"data-feather":"check"},null,-1)]))])):Z("",!0),!i.editMsgMode&&!r.deleteMsgMode?(N(),H("div",{key:5,class:"text-lg hover:text-red-600 duration-75 active:scale-90 p-2 cursor-pointer",title:"Remove message",onClick:e[41]||(e[41]=Q=>r.deleteMsgMode=!0)},e[50]||(e[50]=[S("i",{"data-feather":"trash"},null,-1)]))):Z("",!0),S("div",{class:"text-lg hover:text-secondary duration-75 active:scale-90 p-2 cursor-pointer",title:"Upvote",onClick:e[42]||(e[42]=oe(Q=>i.rankUp(),["stop"]))},e[51]||(e[51]=[S("i",{"data-feather":"thumbs-up"},null,-1)])),S("div",D$n,[S("div",{class:"text-lg hover:text-red-600 duration-75 active:scale-90 p-2 cursor-pointer",title:"Downvote",onClick:e[43]||(e[43]=oe(Q=>i.rankDown(),["stop"]))},e[52]||(e[52]=[S("i",{"data-feather":"thumbs-down"},null,-1)])),n.message.rank!=0?(N(),H("div",{key:0,class:Ee(["rounded-full px-2 text-sm flex items-center justify-center font-bold cursor-pointer",n.message.rank>0?"bg-secondary":"bg-red-600"]),title:"Rank"},J(n.message.rank),3)):Z("",!0)]),S("div",I$n,[this.$store.state.config.active_tts_service!="None"?(N(),H("div",{key:0,class:Ee(["text-lg hover:text-red-600 duration-75 active:scale-90 p-2 cursor-pointer",{"text-red-500":i.isTalking}]),title:"speak",onClick:e[44]||(e[44]=oe(Q=>i.speak(),["stop"]))},e[53]||(e[53]=[S("i",{"data-feather":"volume-2"},null,-1)]),2)):Z("",!0)]),this.$store.state.config.xtts_enable&&!this.$store.state.config.xtts_use_streaming_mode?(N(),H("div",k$n,[r.isSynthesizingVoice?(N(),H("img",{key:1,src:r.loading_svg},null,8,H$n)):(N(),H("div",{key:0,class:"text-lg hover:text-red-600 duration-75 active:scale-90 p-2 cursor-pointer",title:"generate_audio",onClick:e[45]||(e[45]=oe(Q=>i.read(),["stop"]))},e[54]||(e[54]=[S("i",{"data-feather":"voicemail"},null,-1)])))])):Z("",!0)])]),S("div",P$n,[S("div",$$n,[n.message.binding?(N(),H("p",V$n,[e[55]||(e[55]=Re("Binding: ")),S("span",B$n,J(n.message.binding),1)])):Z("",!0),n.message.model?(N(),H("p",F$n,[e[56]||(e[56]=Re("Model: ")),S("span",U$n,J(n.message.model),1)])):Z("",!0),n.message.seed?(N(),H("p",q$n,[e[57]||(e[57]=Re("Seed: ")),S("span",G$n,J(n.message.seed),1)])):Z("",!0),n.message.nb_tokens?(N(),H("p",j$n,[e[58]||(e[58]=Re("Number of tokens: ")),S("span",{class:"font-thin",title:"Number of Tokens: "+n.message.nb_tokens},J(n.message.nb_tokens),9,z$n)])):Z("",!0),i.warmup_duration?(N(),H("p",Y$n,[e[59]||(e[59]=Re("Warmup duration: ")),S("span",{class:"font-thin",title:"Warmup duration: "+i.warmup_duration},J(i.warmup_duration),9,W$n)])):Z("",!0),i.time_spent?(N(),H("p",K$n,[e[60]||(e[60]=Re("Generation duration: ")),S("span",{class:"font-thin",title:"Finished generating: "+i.time_spent},J(i.time_spent),9,Z$n)])):Z("",!0),i.generation_rate?(N(),H("p",X$n,[e[61]||(e[61]=Re("Rate: ")),S("span",{class:"font-thin",title:"Generation rate: "+i.generation_rate},J(i.generation_rate),9,J$n)])):Z("",!0)])])])])])}const kk=Ye(a$n,[["render",eVn],["__scopeId","data-v-1a0adb61"]]);ce.defaults.baseURL="/";const tVn={data(){return{loading:!1,showMenu:!1,menuPosition:"below"}},props:{commandsList:Array,sendCommand:Function,showSettings:Function,help:{type:String,default:""},icon:{type:String,default:""},highlighted:{type:Boolean,default:!1}},computed:{isAnyCommandChecked(){return this.commandsList.some(t=>t.is_checked)},iconParts(){if(!this.icon)return{type:null,value:null};const[t,...e]=this.icon.split(":");return{type:t,value:e.join(":")}}},methods:{selected(t){t.is_checked!==void 0&&(t.is_checked=!t.is_checked),this.sendCommand(t.value)},toggleMenu(){this.showMenu=!this.showMenu,this.showMenu&&this.$nextTick(()=>{Ce.replace(),this.calculatePosition()})},calculatePosition(){var r;const t=this.$refs.menuContainer.getBoundingClientRect(),e=((r=this.$refs.menu)==null?void 0:r.offsetHeight)||300,n=window.innerHeight-t.bottom,o=t.top;this.menuPosition=n>e||n>o?"below":"above"},handleClickOutside(t){this.$refs.menuContainer.contains(t.target)||(this.showMenu=!1)}},mounted(){document.addEventListener("click",this.handleClickOutside),window.addEventListener("resize",this.calculatePosition)},beforeUnmount(){document.removeEventListener("click",this.handleClickOutside),window.removeEventListener("resize",this.calculatePosition)}},nVn={key:0,title:"Loading..",class:"flex flex-row flex-grow justify-end"},rVn={key:1,class:"relative",ref:"menuContainer"},iVn=["title"],oVn=["data-feather"],sVn=["src"],aVn=["src"],lVn={class:"p-2 space-y-1 custom-scrollbar max-h-96 overflow-y-auto"},cVn={class:"flex items-center justify-between w-full px-2 py-1 hover:bg-blue-100 dark:hover:bg-gray-700 transition-colors duration-200 rounded-md"},uVn=["title","onClick"],dVn={key:0,class:"mr-2 flex-shrink-0"},TVn=["checked","id"],fVn=["for"],pVn={key:0,class:"h-3 w-3 text-white",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},hVn={key:1,class:"mr-2 flex-shrink-0"},mVn=["data-feather"],gVn=["src"],_Vn=["src"],QVn=["innerHTML"],vVn=["onClick"],yVn={key:0,class:"border-t border-gray-200 dark:border-gray-700"};function bVn(t,e,n,o,r,i){return r.loading?(N(),H("div",nVn)):(N(),H("div",rVn,[S("button",{onClick:e[0]||(e[0]=(...s)=>i.toggleMenu&&i.toggleMenu(...s)),class:Ee(["flex items-center gap-2 px-4 py-2 text-white rounded-lg transition-all duration-300 shadow-md",{"bg-blue-600 hover:bg-blue-700":!i.isAnyCommandChecked,"bg-yellow-400 hover:bg-yellow-500":i.isAnyCommandChecked}]),title:n.help},[n.icon?(N(),H(xe,{key:0},[i.iconParts.type==="feather"?(N(),H("svg",{key:0,class:"w-4 h-4",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","data-feather":i.iconParts.value},null,8,oVn)):i.iconParts.type==="img"?(N(),H("img",{key:1,src:i.iconParts.value,class:"w-4 h-4"},null,8,sVn)):i.iconParts.type==="b64"?(N(),H("img",{key:2,src:"data:image/png;base64,"+i.iconParts.value,class:"w-4 h-4"},null,8,aVn)):Z("",!0)],64)):Z("",!0),(N(),H("svg",{class:Ee(["w-4 h-4 transform transition-transform",{"rotate-180":r.showMenu}]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},e[1]||(e[1]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"},null,-1)]),2))],10,iVn),ne(Nr,{"enter-active-class":"transition-opacity duration-200 ease-out","leave-active-class":"transition-opacity duration-150 ease-in","enter-from-class":"opacity-0","leave-to-class":"opacity-0"},{default:Ge(()=>[r.showMenu?(N(),H("div",{key:0,ref:"menu",class:Ee(["absolute z-50 mt-2 w-72 origin-top-right rounded-lg bg-white dark:bg-gray-800 shadow-xl ring-1 ring-black ring-opacity-5 focus:outline-none",r.menuPosition==="above"?"bottom-full mb-2":"top-full"])},[S("div",lVn,[(N(!0),H(xe,null,Pe(n.commandsList,(s,a)=>(N(),H(xe,{key:a},[S("div",cVn,[S("button",{title:s.help,onClick:l=>i.selected(s),class:"flex items-center flex-1 min-w-0 text-sm text-gray-700 dark:text-gray-200"},[s.is_checked!==void 0?(N(),H("span",dVn,[S("input",{type:"checkbox",checked:s.is_checked,class:"opacity-0 absolute h-4 w-4",id:`checkbox-${a}`},null,8,TVn),S("label",{for:`checkbox-${a}`,class:Ee(["flex items-center justify-center h-4 w-4 border-2 border-blue-500 rounded-sm cursor-pointer transition-colors duration-200",{"bg-blue-500 border-blue-500":s.is_checked}])},[s.is_checked?(N(),H("svg",pVn,e[2]||(e[2]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 13l4 4L19 7"},null,-1)]))):Z("",!0)],10,fVn)])):Z("",!0),s.icon?(N(),H("span",hVn,[s.icon.startsWith("feather:")?(N(),H("i",{key:0,"data-feather":s.icon.replace("feather:",""),class:"w-4 h-4"},null,8,mVn)):s.icon.startsWith("img:")?(N(),H("img",{key:1,src:s.icon.replace("img:",""),class:"w-4 h-4"},null,8,gVn)):s.icon.startsWith("b64:")?(N(),H("img",{key:2,src:`data:image/png;base64,${s.icon.replace("b64:","")}`,class:"w-4 h-4"},null,8,_Vn)):Z("",!0)])):Z("",!0),S("span",{innerHTML:s.name,class:"truncate flex-1 text-left"},null,8,QVn)],8,uVn),n.showSettings!==void 0?(N(),H("button",{key:0,onClick:l=>n.showSettings(s),class:"text-green-500 hover:text-green-600 transition duration-300 ease-in-out flex-shrink-0 p-1",title:"Settings"},e[3]||(e[3]=[S("i",{"data-feather":"settings",class:"h-4 w-4"},null,-1)]),8,vVn)):Z("",!0)]),a0},isCommandsValid(){return Array.isArray(this.$store.state.mountedPersArr[this.$store.state.config.active_personality_id].commands)&&this.$store.state.mountedPersArr[this.$store.state.config.active_personality_id].commands.length>0},dataLakeNames(){console.log("rag_databases",this.$store.state.config.datalakes);const t=this.$store.state.config.datalakes.map(e=>(console.log("entry",e),{name:e.alias,value:e.alias||"default_value",is_checked:e.mounted,icon:"",help:"mounts the datalake"}));return console.log("formatted datalake",t),t},functionCalls(){console.log("Function calls",this.$store.state.config.mounted_function_calls);const t=this.$store.state.config.mounted_function_calls.map(e=>(console.log("entry",e),{name:e.name,value:e,dir:e.dir,is_checked:e.selected,icon:e.icon,help:e.help}));return console.log("formatted function calls",t),t}},methods:{toggleThinkFirstMode(){this.$store.state.config.think_first_mode=!this.$store.state.config.think_first_mode,this.$store.state.applyConfiguration(),this.$store.state.saveConfiguration()},toggleFunMode(){this.$store.state.config.fun_mode=!this.$store.state.config.fun_mode,this.$store.state.applyConfiguration(),this.$store.state.saveConfiguration()},showSendMenu(){clearTimeout(this.hideSendMenuTimeout),this.isSendMenuVisible=!0},hideSendMenu(){this.hideSendMenuTimeout=setTimeout(()=>{this.isSendMenuVisible=!1},300)},toggleLeftPanel(){console.log(this.$store.state.leftPanelCollapsed),this.$store.commit("setLeftPanelCollapsed",!this.$store.state.leftPanelCollapsed)},async toggleRightPanel(){console.log(this.$store.state.rightPanelCollapsed),this.$store.commit("setRightPanelCollapsed",!this.$store.state.rightPanelCollapsed),this.$store.state.rightPanelCollapsed&&(this.$store.commit("setleftPanelCollapsed",!0),this.$nextTick(()=>{this.extractHtml()})),console.log(this.$store.state.rightPanelCollapsed)},handlePaste(t){const e=(t.clipboardData||t.originalEvent.clipboardData).items;let n=[];for(let o of e)if(o.type.indexOf("image")!==-1){const r=o.getAsFile(),s=`image_${Date.now()+"_"+Math.random().toString(36).substr(2,9)}.png`;console.log("newFileName",s);const a=new File([r],s,{type:r.type});this.addFiles([a])}else if(o.kind==="file"){const r=o.getAsFile();n.push(r)}n.length>0&&this.addFiles(n)},emitloaded(){this.$emit("loaded")},download_files(){ce.get("/download_files")},remove_file(t){ce.get("/remove_discussion_file",{client_id:this.$store.state.client_id,name:t}).then(e=>{console.log(e)})},clear_files(){ce.post("/clear_discussion_files_list",{client_id:this.$store.state.client_id}).then(t=>{console.log(t),t.data.state?(this.$store.state.toast.showToast("File removed successfully",4,!0),this.filesList.length=0,this.isFileSentList.length=0,this.totalSize=0):this.$store.state.toast.showToast("Files couldn't be removed",4,!1)})},send_file(t,e){console.log("Send file triggered");const n=new FileReader,o=24*1024;let r=0,i=0;n.onloadend=()=>{if(n.error){console.error("Error reading file:",n.error);return}const a=n.result,l=r+a.byteLength>=t.size;Ze.emit("send_file_chunk",{filename:t.name,chunk:a,offset:r,isLastChunk:l,chunkIndex:i}),r+=a.byteLength,i++,l?(console.log("File sent successfully"),this.isFileSentList[this.filesList.length-1]=!0,console.log(this.isFileSentList),this.$store.state.toast.showToast("File uploaded successfully",4,!0),e()):s()};function s(){const a=t.slice(r,r+o);n.readAsArrayBuffer(a)}console.log("Uploading file"),s()},makeAnEmptyUserMessage(){this.$emit("createEmptyUserMessage",this.message),this.message=""},makeAnEmptyAIMessage(){this.$emit("createEmptyAIMessage")},toggleSendMenu(){this.isSendMenuVisible=!this.isSendMenuVisible},toggleHelpModal(){this.showHelpModal=!this.showHelpModal},updateRT(){console.log("Updating rt status"),this.is_rt?this.stopRTCom():this.startRTCom()},startRTCom(){this.is_rt=!0,console.log("is_rt:",this.is_rt),Ze.emit("start_bidirectional_audio_stream"),Se(()=>{Ce.replace()})},stopRTCom(){this.is_rt=!1,console.log("is_rt:",this.is_rt),Ze.emit("stop_bidirectional_audio_stream"),Se(()=>{Ce.replace()})},startSpeechRecognition(){"SpeechRecognition"in window||"webkitSpeechRecognition"in window?(this.recognition=new(window.SpeechRecognition||window.webkitSpeechRecognition),this.recognition.lang=this.$store.state.config.audio_in_language,this.recognition.interimResults=!0,this.recognition.onstart=()=>{this.isListeningToVoice=!0,this.silenceTimer=setTimeout(()=>{this.recognition.stop()},this.silenceTimeout)},this.recognition.onresult=t=>{let e="";for(let n=t.resultIndex;n{this.recognition.stop()},this.silenceTimeout)},this.recognition.onerror=t=>{console.error("Speech recognition error:",t.error),this.isListeningToVoice=!1,clearTimeout(this.silenceTimer)},this.recognition.onend=()=>{console.log("Speech recognition ended."),this.isListeningToVoice=!1,clearTimeout(this.silenceTimer),this.submit()},this.recognition.start()):console.error("Speech recognition is not supported in this browser.")},computedFileSize(t){return Se(()=>{Ce.replace()}),G1(t)},removeItem(t){console.log("Removing ",t.name),ce.post("/remove_discussion_file",{client_id:this.$store.state.client_id,name:t.name},{headers:this.posts_headers}).then(()=>{this.filesList=this.filesList.filter(e=>e!=t)}),console.log(this.filesList)},sendMessageEvent(t,e="no_internet"){this.$emit("messageSentEvent",t,e)},sendCMDEvent(t){this.$emit("sendCMDEvent",t)},async mountDB(t){console.log("datalake_name:"),console.log(t),await ce.post("/toggle_mount_rag_database",{client_id:this.$store.state.client_id,datalake_name:t}),await this.$store.dispatch("refreshConfig"),console.log("Refreshed")},async showFunctionSettings(t){const e=t,o=e.dir.replace(/\\/g,"/").split("/").filter(i=>i!==""),r=o[o.length-2];try{this.isLoading=!0,ce.post("/get_function_call_settings",{client_id:this.$store.state.client_id,category:r,name:e.name}).then(i=>{this.isLoading=!1,i&&(i.data&&Object.keys(i.data).length>0?this.$store.state.universalForm.showForm(i.data,"Function call settings - "+e.name,"Save changes","Cancel").then(s=>{try{ce.post("/set_function_call_settings",{client_id:this.$store.state.client_id,category:r,name:e.name,settings:s},{headers:this.posts_headers}).then(a=>{a&&a.data?(console.log("function call set with new settings",a.data),this.$store.state.toast.showToast("function call settings updated successfully!",4,!0)):(this.$store.state.toast.showToast(`Did not get function call settings responses. +`+this.message.content.slice(e,n)+"\n```\n"+this.message.content.slice(n),p=p+3+t.length),this.$refs.mdTextarea.focus(),this.$refs.mdTextarea.selectionStart=this.$refs.mdTextarea.selectionEnd=p},copyContentToClipboard(){this.$emit("copy",this)},deleteMsg(){this.$emit("delete",this.message.id),this.deleteMsgMode=!1},rankUp(){this.$emit("rankUp",this.message.id)},rankDown(){this.$emit("rankDown",this.message.id)},updateMessage(){this.$emit("updateMessage",this.message.id,this.message.content,this.audio_url),this.editMsgMode=!1},resendMessage(t){this.$emit("resendMessage",this.message.id,this.message.content,t)},continueMessage(){console.log("Emitting continueMessage"),this.$emit("continueMessage",this.message.id,this.message.content)},getImgUrl(){return this.avatar?a$n+this.avatar:(console.log("No avatar found"),Wi)},defaultImg(t){t.target.src=Wi},parseDate(t){let e=new Date(Date.parse(t)),o=Math.floor((new Date-e)/1e3);return o<=1?"just now":o<20?o+" seconds ago":o<40?"half a minute ago":o<60?"less than a minute ago":o<=90?"one minute ago":o<=3540?Math.round(o/60)+" minutes ago":o<=5400?"1 hour ago":o<=86400?Math.round(o/3600)+" hours ago":o<=129600?"1 day ago":o<604800?Math.round(o/86400)+" days ago":o<=777600?"1 week ago":t},prettyDate(t){let e=new Date((t||"").replace(/-/g,"/").replace(/[TZ]/g," ")),n=(new Date().getTime()-e.getTime())/1e3,o=Math.floor(n/86400);if(!(isNaN(o)||o<0||o>=31))return o==0&&(n<60&&"just now"||n<120&&"1 minute ago"||n<3600&&Math.floor(n/60)+" minutes ago"||n<7200&&"1 hour ago"||n<86400&&Math.floor(n/3600)+" hours ago")||o==1&&"Yesterday"||o<7&&o+" days ago"||o<31&&Math.ceil(o/7)+" weeks ago"},checkForFullSentence(){if(this.message.content.trim().split(" ").length>3){this.speak();return}}},watch:{audio_url(t){t&&(this.$refs.audio_player.src=t)},"message.content":function(t){this.$store.state.config.auto_speak&&(this.$store.state.config.xtts_enable&&this.$store.state.config.xtts_use_streaming_mode||this.isSpeaking||this.checkForFullSentence())},"message.ui":function(t){console.log("ui changed to",t),this.ui_componentKey++},showConfirmation(){Se(()=>{Ce.replace()})},deleteMsgMode(){Se(()=>{Ce.replace()})}},computed:{editMsgMode:{get(){return this.message.hasOwnProperty("open")?this.editMsgMode_||this.message.open:this.editMsgMode_},set(t){this.message.open=t,this.editMsgMode_=t,Se(()=>{Ce.replace()})}},isTalking:{get(){return this.isSpeaking}},created_at(){return this.prettyDate(this.message.created_at)},created_at_parsed(){return new Date(Date.parse(this.message.created_at)).toLocaleString()},finished_generating_at_parsed(){return new Date(Date.parse(this.message.finished_generating_at)).toLocaleString()},time_spent(){const t=new Date(Date.parse(this.message.started_generating_at)),e=new Date(Date.parse(this.message.finished_generating_at));if(e.getTime()===t.getTime()||!t.getTime()||!e.getTime())return;let[o,r,i]=this.computeTimeDiff(t,e);function s(l){return l<10&&(l="0"+l),l}return s(o)+"h:"+s(r)+"m:"+s(i)+"s"},warmup_duration(){const t=new Date(Date.parse(this.message.created_at)),e=new Date(Date.parse(this.message.started_generating_at));if(console.log("Computing the warmup duration, ",t," -> ",e),e.getTime()===t.getTime())return 0;if(!t.getTime()||!e.getTime())return;let o,r,i;[o,r,i]=this.computeTimeDiff(t,e);function s(l){return l<10&&(l="0"+l),l}return s(o)+"h:"+s(r)+"m:"+s(i)+"s"},generation_rate(){const t=new Date(Date.parse(this.message.started_generating_at)),e=new Date(Date.parse(this.message.finished_generating_at)),n=this.message.nb_tokens;if(e.getTime()===t.getTime()||!n||!t.getTime()||!e.getTime())return;let r=e.getTime()-t.getTime();const i=Math.floor(r/1e3),s=n/i;return Math.round(s)+" t/s"}}},c$n={class:"relative message w-full group rounded-lg m-2 shadow-lg hover:border-primary dark:hover:border-primary hover:border-solid hover:border-2 border-2 border-transparent flex flex-col flex-grow flex-wrap overflow-visible p-4 pb-2"},u$n={class:"flex flex-row gap-2"},d$n={class:"flex-shrink-0"},T$n={class:"group/avatar"},f$n=["src","data-popover-target"],p$n={class:"flex flex-col w-full flex-grow-0"},h$n={class:"flex flex-row flex-grow items-start"},m$n={class:"flex flex-col mb-2"},g$n={class:"drop-shadow-sm text-lg text-opacity-95 font-bold grow"},_$n=["title"],Q$n={class:"overflow-x-auto w-full overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary space-y-2"},v$n={key:1},y$n=["src"],b$n={class:"message-details w-full max-w-4xl mx-auto"},E$n={key:0,class:"steps-container bg-white/50 dark:bg-gray-800/50 rounded border border-gray-200 dark:border-gray-700 text-sm mb-2"},S$n={class:"text-gray-600 dark:text-gray-300 flex-grow"},x$n={key:0,class:"overflow-hidden"},L$n={class:"px-2 pb-2 space-y-1"},C$n={key:1,class:"flex flex-col items-start w-full overflow-y-auto scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"},A$n={class:"flex-row justify-end mx-2"},w$n={class:"invisible group-hover:visible flex flex-row"},O$n={key:0},M$n={key:1},R$n={key:2},N$n={key:3},D$n={key:4,class:"flex items-center duration-75"},I$n={class:"flex flex-row items-center"},k$n={class:"flex flex-row items-center"},H$n={key:6,class:"flex flex-row items-center"},P$n=["src"],$$n={class:"text-sm text-gray-400 mt-2"},V$n={class:"flex flex-row items-center gap-2"},B$n={key:0},F$n={class:"font-thin"},U$n={key:1},q$n={class:"font-thin"},G$n={key:2},j$n={class:"font-thin"},z$n={key:3},Y$n=["title"],W$n={key:4},K$n=["title"],Z$n={key:5},X$n=["title"],J$n={key:6},eVn=["title"];function tVn(t,e,n,o,r,i){var g;const s=ze("MarkdownRenderer"),a=ze("JsonViewer"),l=ze("DynamicUIRenderer"),c=ze("StatusIcon"),u=ze("Step"),d=ze("RenderHTMLJS"),f=ze("ToolbarButton"),T=ze("DropdownSubmenu"),h=ze("DropdownMenu");return N(),H("div",c$n,[S("div",u$n,[S("div",d$n,[S("div",T$n,[S("img",{src:i.getImgUrl(),onError:e[0]||(e[0]=Q=>i.defaultImg(Q)),"data-popover-target":"avatar"+n.message.id,"data-popover-placement":"bottom",class:"w-10 h-10 rounded-full object-fill text-red-700"},null,40,f$n)])]),S("div",p$n,[S("div",h$n,[S("div",m$n,[S("div",g$n,J(n.message.sender),1),n.message.created_at?(N(),H("div",{key:0,class:"text-sm text-gray-400 font-thin",title:"Created at: "+i.created_at_parsed},J(i.created_at),9,_$n)):Z("",!0)]),e[46]||(e[46]=S("div",{class:"flex-grow"},null,-1))]),S("div",Q$n,[i.editMsgMode?Z("",!0):(N(),ot(s,{key:0,ref:"mdRender",host:n.host,"markdown-text":n.message.content,message_id:n.message.id,discussion_id:n.message.discussion_id,client_id:this.$store.state.client_id},null,8,["host","markdown-text","message_id","discussion_id","client_id"])),S("div",null,[n.message.open?Le((N(),H("textarea",{key:0,ref:"mdTextarea",onKeydown:e[1]||(e[1]=Qn(oe((...Q)=>i.insertTab&&i.insertTab(...Q),["prevent"]),["tab"])),class:"block min-h-[500px] p-2.5 w-full text-gray-900 bg-gray-50 rounded-lg border border-gray-300 focus:ring-blue-500 focus:border-blue-500 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500 overflow-y-scroll flex flex-col shadow-lg p-10 pt-0 overflow-y-scroll dark:bg-bg-dark scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary",rows:4,placeholder:"Enter message here...","onUpdate:modelValue":e[2]||(e[2]=Q=>n.message.content=Q)}," ",544)),[[Je,n.message.content]]):Z("",!0)]),n.message.metadata!==null?(N(),H("div",v$n,[(N(!0),H(xe,null,Pe(((g=n.message.metadata)==null?void 0:g.filter(Q=>Q!=null&&Q.hasOwnProperty("title")&&Q.hasOwnProperty("content")))||[],(Q,m)=>(N(),H("div",{key:"json-"+n.message.id+"-"+m,class:"json font-bold"},[(N(),ot(a,{title:Q.title,data:Q.content,key:"msgjson-"+n.message.id},null,8,["title","data"]))]))),128))])):Z("",!0),n.message.ui?(N(),ot(l,{ref:"ui",class:"w-full",ui:n.message.ui,key:"msgui-"+n.message.id},null,8,["ui"])):Z("",!0),r.audio_url!=null?(N(),H("audio",{controls:"",key:r.audio_url},[S("source",{src:r.audio_url,type:"audio/wav",ref:"audio_player"},null,8,y$n),e[47]||(e[47]=Me(" Your browser does not support the audio element. "))])):Z("",!0),S("div",b$n,[n.message.steps.length>0?(N(),H("div",E$n,[S("div",{class:"flex items-center p-2 cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-700/50 transition-colors duration-200",onClick:e[3]||(e[3]=(...Q)=>i.toggleExpanded&&i.toggleExpanded(...Q))},[ne(c,{status:n.message.status_message,icon:!0,class:"w-4 h-4 mr-2"},null,8,["status"]),S("span",S$n,J(n.message.status_message),1),S("span",{class:Ee(["text-xs text-gray-400 transform transition-transform duration-200",{"rotate-180":r.expanded}])},"▼",2)]),ne(Nr,{"enter-active-class":"transition-all duration-200 ease-out","leave-active-class":"transition-all duration-150 ease-in","enter-from-class":"opacity-0 max-h-0","enter-to-class":"opacity-100 max-h-[500px]","leave-from-class":"opacity-100 max-h-[500px]","leave-to-class":"opacity-0 max-h-0"},{default:Ge(()=>[r.expanded?(N(),H("div",x$n,[S("div",L$n,[(N(!0),H(xe,null,Pe(n.message.steps,(Q,m)=>(N(),H("div",{key:`step-${n.message.id}-${m}`,class:"animate-fadeIn",style:an({animationDelay:`${m*50}ms`})},[ne(u,{done:Q.done,text:Q.text,status:Q.status,description:Q.description,class:"text-xs rounded bg-gray-50/50 dark:bg-gray-700/50 p-2 hover:bg-gray-100 dark:hover:bg-gray-600/50"},null,8,["done","text","status","description"])],4))),128))])])):Z("",!0)]),_:1})])):Z("",!0),n.message.html_js_s&&n.message.html_js_s.length?(N(),H("div",C$n,[(N(!0),H(xe,null,Pe(n.message.html_js_s,(Q,m)=>(N(),H("div",{key:`htmljs-${n.message.id}-${m}`,class:"font-bold animate-fadeIn",style:an({animationDelay:`${m*200}ms`})},[ne(d,{htmlContent:Q},null,8,["htmlContent"])],4))),128))])):Z("",!0)])]),S("div",A$n,[S("div",w$n,[i.editMsgMode?(N(),H("div",O$n,[ne(f,{onClick:e[4]||(e[4]=oe(Q=>i.editMsgMode=!1,["stop"])),title:"Cancel edit",icon:"x"}),ne(f,{onClick:oe(i.updateMessage,["stop"]),title:"Update message",icon:"check"},null,8,["onClick"]),ne(h,{title:"Add Block"},{default:Ge(()=>[ne(T,{title:"Programming Languages",icon:"code"},{default:Ge(()=>[ne(f,{onClick:e[5]||(e[5]=oe(Q=>i.addBlock("python"),["stop"])),title:"Python",icon:"python"}),ne(f,{onClick:e[6]||(e[6]=oe(Q=>i.addBlock("javascript"),["stop"])),title:"JavaScript",icon:"js"}),ne(f,{onClick:e[7]||(e[7]=oe(Q=>i.addBlock("typescript"),["stop"])),title:"TypeScript",icon:"typescript"}),ne(f,{onClick:e[8]||(e[8]=oe(Q=>i.addBlock("java"),["stop"])),title:"Java",icon:"java"}),ne(f,{onClick:e[9]||(e[9]=oe(Q=>i.addBlock("c++"),["stop"])),title:"C++",icon:"cplusplus"}),ne(f,{onClick:e[10]||(e[10]=oe(Q=>i.addBlock("csharp"),["stop"])),title:"C#",icon:"csharp"}),ne(f,{onClick:e[11]||(e[11]=oe(Q=>i.addBlock("go"),["stop"])),title:"Go",icon:"go"}),ne(f,{onClick:e[12]||(e[12]=oe(Q=>i.addBlock("rust"),["stop"])),title:"Rust",icon:"rust"}),ne(f,{onClick:e[13]||(e[13]=oe(Q=>i.addBlock("swift"),["stop"])),title:"Swift",icon:"swift"}),ne(f,{onClick:e[14]||(e[14]=oe(Q=>i.addBlock("kotlin"),["stop"])),title:"Kotlin",icon:"kotlin"}),ne(f,{onClick:e[15]||(e[15]=oe(Q=>i.addBlock("r"),["stop"])),title:"R",icon:"r-project"})]),_:1}),ne(T,{title:"Web Technologies",icon:"web"},{default:Ge(()=>[ne(f,{onClick:e[16]||(e[16]=oe(Q=>i.addBlock("html"),["stop"])),title:"HTML",icon:"html5"}),ne(f,{onClick:e[17]||(e[17]=oe(Q=>i.addBlock("css"),["stop"])),title:"CSS",icon:"css3"}),ne(f,{onClick:e[18]||(e[18]=oe(Q=>i.addBlock("vue"),["stop"])),title:"Vue.js",icon:"vuejs"}),ne(f,{onClick:e[19]||(e[19]=oe(Q=>i.addBlock("react"),["stop"])),title:"React",icon:"react"}),ne(f,{onClick:e[20]||(e[20]=oe(Q=>i.addBlock("angular"),["stop"])),title:"Angular",icon:"angular"})]),_:1}),ne(T,{title:"Markup and Data",icon:"file-code"},{default:Ge(()=>[ne(f,{onClick:e[21]||(e[21]=oe(Q=>i.addBlock("xml"),["stop"])),title:"XML",icon:"xml"}),ne(f,{onClick:e[22]||(e[22]=oe(Q=>i.addBlock("json"),["stop"])),title:"JSON",icon:"json"}),ne(f,{onClick:e[23]||(e[23]=oe(Q=>i.addBlock("yaml"),["stop"])),title:"YAML",icon:"yaml"}),ne(f,{onClick:e[24]||(e[24]=oe(Q=>i.addBlock("markdown"),["stop"])),title:"Markdown",icon:"markdown"}),ne(f,{onClick:e[25]||(e[25]=oe(Q=>i.addBlock("latex"),["stop"])),title:"LaTeX",icon:"latex"})]),_:1}),ne(T,{title:"Scripting and Shell",icon:"terminal"},{default:Ge(()=>[ne(f,{onClick:e[26]||(e[26]=oe(Q=>i.addBlock("bash"),["stop"])),title:"Bash",icon:"bash"}),ne(f,{onClick:e[27]||(e[27]=oe(Q=>i.addBlock("powershell"),["stop"])),title:"PowerShell",icon:"powershell"}),ne(f,{onClick:e[28]||(e[28]=oe(Q=>i.addBlock("perl"),["stop"])),title:"Perl",icon:"perl"})]),_:1}),ne(T,{title:"Diagramming",icon:"sitemap"},{default:Ge(()=>[ne(f,{onClick:e[29]||(e[29]=oe(Q=>i.addBlock("mermaid"),["stop"])),title:"Mermaid",icon:"mermaid"}),ne(f,{onClick:e[30]||(e[30]=oe(Q=>i.addBlock("graphviz"),["stop"])),title:"Graphviz",icon:"graphviz"}),ne(f,{onClick:e[31]||(e[31]=oe(Q=>i.addBlock("plantuml"),["stop"])),title:"PlantUML",icon:"plantuml"})]),_:1}),ne(T,{title:"Database",icon:"database"},{default:Ge(()=>[ne(f,{onClick:e[32]||(e[32]=oe(Q=>i.addBlock("sql"),["stop"])),title:"SQL",icon:"sql"}),ne(f,{onClick:e[33]||(e[33]=oe(Q=>i.addBlock("mongodb"),["stop"])),title:"MongoDB",icon:"mongodb"})]),_:1}),ne(f,{onClick:e[34]||(e[34]=oe(Q=>i.addBlock(""),["stop"])),title:"Generic Block",icon:"code"})]),_:1})])):(N(),H("div",M$n,[ne(f,{onClick:e[35]||(e[35]=oe(Q=>i.editMsgMode=!0,["stop"])),title:"Edit message",icon:"edit"})])),ne(f,{onClick:i.copyContentToClipboard,title:"Copy message to clipboard",icon:"copy"},null,8,["onClick"]),!i.editMsgMode&&n.message.sender!==t.$store.state.mountedPers.name?(N(),H("div",R$n,[ne(f,{onClick:e[36]||(e[36]=oe(Q=>i.resendMessage("full_context"),["stop"])),title:"Resend message with full context",icon:"send"}),ne(f,{onClick:e[37]||(e[37]=oe(Q=>i.resendMessage("full_context_with_internet"),["stop"])),title:"Resend message with internet search",icon:"globe"}),ne(f,{onClick:e[38]||(e[38]=oe(Q=>i.resendMessage("simple_question"),["stop"])),title:"Resend message without context",icon:"sendSimple"})])):Z("",!0),!i.editMsgMode&&n.message.sender===t.$store.state.mountedPers.name?(N(),H("div",N$n,[ne(f,{onClick:oe(i.continueMessage,["stop"]),title:"Continue message",icon:"fastForward"},null,8,["onClick"])])):Z("",!0),r.deleteMsgMode?(N(),H("div",D$n,[S("button",{class:"text-2xl hover:text-red-600 duration-75 active:scale-90 p-2 cursor-pointer",title:"Cancel removal",type:"button",onClick:e[39]||(e[39]=oe(Q=>r.deleteMsgMode=!1,["stop"]))},e[48]||(e[48]=[S("i",{"data-feather":"x"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90 p-2 cursor-pointer",title:"Confirm removal",type:"button",onClick:e[40]||(e[40]=oe(Q=>i.deleteMsg(),["stop"]))},e[49]||(e[49]=[S("i",{"data-feather":"check"},null,-1)]))])):Z("",!0),!i.editMsgMode&&!r.deleteMsgMode?(N(),H("div",{key:5,class:"text-lg hover:text-red-600 duration-75 active:scale-90 p-2 cursor-pointer",title:"Remove message",onClick:e[41]||(e[41]=Q=>r.deleteMsgMode=!0)},e[50]||(e[50]=[S("i",{"data-feather":"trash"},null,-1)]))):Z("",!0),S("div",{class:"text-lg hover:text-secondary duration-75 active:scale-90 p-2 cursor-pointer",title:"Upvote",onClick:e[42]||(e[42]=oe(Q=>i.rankUp(),["stop"]))},e[51]||(e[51]=[S("i",{"data-feather":"thumbs-up"},null,-1)])),S("div",I$n,[S("div",{class:"text-lg hover:text-red-600 duration-75 active:scale-90 p-2 cursor-pointer",title:"Downvote",onClick:e[43]||(e[43]=oe(Q=>i.rankDown(),["stop"]))},e[52]||(e[52]=[S("i",{"data-feather":"thumbs-down"},null,-1)])),n.message.rank!=0?(N(),H("div",{key:0,class:Ee(["rounded-full px-2 text-sm flex items-center justify-center font-bold cursor-pointer",n.message.rank>0?"bg-secondary":"bg-red-600"]),title:"Rank"},J(n.message.rank),3)):Z("",!0)]),S("div",k$n,[this.$store.state.config.active_tts_service!="None"?(N(),H("div",{key:0,class:Ee(["text-lg hover:text-red-600 duration-75 active:scale-90 p-2 cursor-pointer",{"text-red-500":i.isTalking}]),title:"speak",onClick:e[44]||(e[44]=oe(Q=>i.speak(),["stop"]))},e[53]||(e[53]=[S("i",{"data-feather":"volume-2"},null,-1)]),2)):Z("",!0)]),this.$store.state.config.xtts_enable&&!this.$store.state.config.xtts_use_streaming_mode?(N(),H("div",H$n,[r.isSynthesizingVoice?(N(),H("img",{key:1,src:r.loading_svg},null,8,P$n)):(N(),H("div",{key:0,class:"text-lg hover:text-red-600 duration-75 active:scale-90 p-2 cursor-pointer",title:"generate_audio",onClick:e[45]||(e[45]=oe(Q=>i.read(),["stop"]))},e[54]||(e[54]=[S("i",{"data-feather":"voicemail"},null,-1)])))])):Z("",!0)])]),S("div",$$n,[S("div",V$n,[n.message.binding?(N(),H("p",B$n,[e[55]||(e[55]=Me("Binding: ")),S("span",F$n,J(n.message.binding),1)])):Z("",!0),n.message.model?(N(),H("p",U$n,[e[56]||(e[56]=Me("Model: ")),S("span",q$n,J(n.message.model),1)])):Z("",!0),n.message.seed?(N(),H("p",G$n,[e[57]||(e[57]=Me("Seed: ")),S("span",j$n,J(n.message.seed),1)])):Z("",!0),n.message.nb_tokens?(N(),H("p",z$n,[e[58]||(e[58]=Me("Number of tokens: ")),S("span",{class:"font-thin",title:"Number of Tokens: "+n.message.nb_tokens},J(n.message.nb_tokens),9,Y$n)])):Z("",!0),i.warmup_duration?(N(),H("p",W$n,[e[59]||(e[59]=Me("Warmup duration: ")),S("span",{class:"font-thin",title:"Warmup duration: "+i.warmup_duration},J(i.warmup_duration),9,K$n)])):Z("",!0),i.time_spent?(N(),H("p",Z$n,[e[60]||(e[60]=Me("Generation duration: ")),S("span",{class:"font-thin",title:"Finished generating: "+i.time_spent},J(i.time_spent),9,X$n)])):Z("",!0),i.generation_rate?(N(),H("p",J$n,[e[61]||(e[61]=Me("Rate: ")),S("span",{class:"font-thin",title:"Generation rate: "+i.generation_rate},J(i.generation_rate),9,eVn)])):Z("",!0)])])])])])}const kk=Ye(l$n,[["render",tVn],["__scopeId","data-v-1a0adb61"]]);ce.defaults.baseURL="/";const nVn={data(){return{loading:!1,showMenu:!1,menuPosition:"below"}},props:{commandsList:Array,sendCommand:Function,showSettings:Function,help:{type:String,default:""},icon:{type:String,default:""},highlighted:{type:Boolean,default:!1}},computed:{isAnyCommandChecked(){return this.commandsList.some(t=>t.is_checked)},iconParts(){if(!this.icon)return{type:null,value:null};const[t,...e]=this.icon.split(":");return{type:t,value:e.join(":")}}},methods:{selected(t){t.is_checked!==void 0&&(t.is_checked=!t.is_checked),this.sendCommand(t.value)},toggleMenu(){this.showMenu=!this.showMenu,this.showMenu&&this.$nextTick(()=>{Ce.replace(),this.calculatePosition()})},calculatePosition(){var r;const t=this.$refs.menuContainer.getBoundingClientRect(),e=((r=this.$refs.menu)==null?void 0:r.offsetHeight)||300,n=window.innerHeight-t.bottom,o=t.top;this.menuPosition=n>e||n>o?"below":"above"},handleClickOutside(t){this.$refs.menuContainer.contains(t.target)||(this.showMenu=!1)}},mounted(){document.addEventListener("click",this.handleClickOutside),window.addEventListener("resize",this.calculatePosition)},beforeUnmount(){document.removeEventListener("click",this.handleClickOutside),window.removeEventListener("resize",this.calculatePosition)}},rVn={key:0,title:"Loading..",class:"flex flex-row flex-grow justify-end"},iVn={key:1,class:"relative",ref:"menuContainer"},oVn=["title"],sVn=["data-feather"],aVn=["src"],lVn=["src"],cVn={class:"p-2 space-y-1 custom-scrollbar max-h-96 overflow-y-auto"},uVn={class:"flex items-center justify-between w-full px-2 py-1 hover:bg-blue-100 dark:hover:bg-gray-700 transition-colors duration-200 rounded-md"},dVn=["title","onClick"],TVn={key:0,class:"mr-2 flex-shrink-0"},fVn=["checked","id"],pVn=["for"],hVn={key:0,class:"h-3 w-3 text-white",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},mVn={key:1,class:"mr-2 flex-shrink-0"},gVn=["data-feather"],_Vn=["src"],QVn=["src"],vVn=["innerHTML"],yVn=["onClick"],bVn={key:0,class:"border-t border-gray-200 dark:border-gray-700"};function EVn(t,e,n,o,r,i){return r.loading?(N(),H("div",rVn)):(N(),H("div",iVn,[S("button",{onClick:e[0]||(e[0]=(...s)=>i.toggleMenu&&i.toggleMenu(...s)),class:Ee(["flex items-center gap-2 px-4 py-2 text-white rounded-lg transition-all duration-300 shadow-md",{"bg-blue-600 hover:bg-blue-700":!i.isAnyCommandChecked,"bg-yellow-400 hover:bg-yellow-500":i.isAnyCommandChecked}]),title:n.help},[n.icon?(N(),H(xe,{key:0},[i.iconParts.type==="feather"?(N(),H("svg",{key:0,class:"w-4 h-4",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","data-feather":i.iconParts.value},null,8,sVn)):i.iconParts.type==="img"?(N(),H("img",{key:1,src:i.iconParts.value,class:"w-4 h-4"},null,8,aVn)):i.iconParts.type==="b64"?(N(),H("img",{key:2,src:"data:image/png;base64,"+i.iconParts.value,class:"w-4 h-4"},null,8,lVn)):Z("",!0)],64)):Z("",!0),(N(),H("svg",{class:Ee(["w-4 h-4 transform transition-transform",{"rotate-180":r.showMenu}]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},e[1]||(e[1]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"},null,-1)]),2))],10,oVn),ne(Nr,{"enter-active-class":"transition-opacity duration-200 ease-out","leave-active-class":"transition-opacity duration-150 ease-in","enter-from-class":"opacity-0","leave-to-class":"opacity-0"},{default:Ge(()=>[r.showMenu?(N(),H("div",{key:0,ref:"menu",class:Ee(["absolute z-50 mt-2 w-72 origin-top-right rounded-lg bg-white dark:bg-gray-800 shadow-xl ring-1 ring-black ring-opacity-5 focus:outline-none",r.menuPosition==="above"?"bottom-full mb-2":"top-full"])},[S("div",cVn,[(N(!0),H(xe,null,Pe(n.commandsList,(s,a)=>(N(),H(xe,{key:a},[S("div",uVn,[S("button",{title:s.help,onClick:l=>i.selected(s),class:"flex items-center flex-1 min-w-0 text-sm text-gray-700 dark:text-gray-200"},[s.is_checked!==void 0?(N(),H("span",TVn,[S("input",{type:"checkbox",checked:s.is_checked,class:"opacity-0 absolute h-4 w-4",id:`checkbox-${a}`},null,8,fVn),S("label",{for:`checkbox-${a}`,class:Ee(["flex items-center justify-center h-4 w-4 border-2 border-blue-500 rounded-sm cursor-pointer transition-colors duration-200",{"bg-blue-500 border-blue-500":s.is_checked}])},[s.is_checked?(N(),H("svg",hVn,e[2]||(e[2]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 13l4 4L19 7"},null,-1)]))):Z("",!0)],10,pVn)])):Z("",!0),s.icon?(N(),H("span",mVn,[s.icon.startsWith("feather:")?(N(),H("i",{key:0,"data-feather":s.icon.replace("feather:",""),class:"w-4 h-4"},null,8,gVn)):s.icon.startsWith("img:")?(N(),H("img",{key:1,src:s.icon.replace("img:",""),class:"w-4 h-4"},null,8,_Vn)):s.icon.startsWith("b64:")?(N(),H("img",{key:2,src:`data:image/png;base64,${s.icon.replace("b64:","")}`,class:"w-4 h-4"},null,8,QVn)):Z("",!0)])):Z("",!0),S("span",{innerHTML:s.name,class:"truncate flex-1 text-left"},null,8,vVn)],8,dVn),n.showSettings!==void 0?(N(),H("button",{key:0,onClick:l=>n.showSettings(s),class:"text-green-500 hover:text-green-600 transition duration-300 ease-in-out flex-shrink-0 p-1",title:"Settings"},e[3]||(e[3]=[S("i",{"data-feather":"settings",class:"h-4 w-4"},null,-1)]),8,yVn)):Z("",!0)]),a0},isCommandsValid(){return Array.isArray(this.$store.state.mountedPersArr[this.$store.state.config.active_personality_id].commands)&&this.$store.state.mountedPersArr[this.$store.state.config.active_personality_id].commands.length>0},dataLakeNames(){console.log("rag_databases",this.$store.state.config.datalakes);const t=this.$store.state.config.datalakes.map(e=>(console.log("entry",e),{name:e.alias,value:e.alias||"default_value",is_checked:e.mounted,icon:"",help:"mounts the datalake"}));return console.log("formatted datalake",t),t},functionCalls(){console.log("Function calls",this.$store.state.config.mounted_function_calls);const t=this.$store.state.config.mounted_function_calls.map(e=>(console.log("entry",e),{name:e.name,value:e,dir:e.dir,is_checked:e.selected,icon:e.icon,help:e.help}));return console.log("formatted function calls",t),t}},methods:{toggleThinkFirstMode(){this.$store.state.config.think_first_mode=!this.$store.state.config.think_first_mode,this.$store.state.applyConfiguration(),this.$store.state.saveConfiguration()},toggleFunMode(){this.$store.state.config.fun_mode=!this.$store.state.config.fun_mode,this.$store.state.applyConfiguration(),this.$store.state.saveConfiguration()},showSendMenu(){clearTimeout(this.hideSendMenuTimeout),this.isSendMenuVisible=!0},hideSendMenu(){this.hideSendMenuTimeout=setTimeout(()=>{this.isSendMenuVisible=!1},300)},toggleLeftPanel(){console.log(this.$store.state.leftPanelCollapsed),this.$store.commit("setLeftPanelCollapsed",!this.$store.state.leftPanelCollapsed)},async toggleRightPanel(){console.log(this.$store.state.rightPanelCollapsed),this.$store.commit("setRightPanelCollapsed",!this.$store.state.rightPanelCollapsed),this.$store.state.rightPanelCollapsed&&(this.$store.commit("setleftPanelCollapsed",!0),this.$nextTick(()=>{this.extractHtml()})),console.log(this.$store.state.rightPanelCollapsed)},handlePaste(t){const e=(t.clipboardData||t.originalEvent.clipboardData).items;let n=[];for(let o of e)if(o.type.indexOf("image")!==-1){const r=o.getAsFile(),s=`image_${Date.now()+"_"+Math.random().toString(36).substr(2,9)}.png`;console.log("newFileName",s);const a=new File([r],s,{type:r.type});this.addFiles([a])}else if(o.kind==="file"){const r=o.getAsFile();n.push(r)}n.length>0&&this.addFiles(n)},emitloaded(){this.$emit("loaded")},download_files(){ce.get("/download_files")},remove_file(t){ce.get("/remove_discussion_file",{client_id:this.$store.state.client_id,name:t}).then(e=>{console.log(e)})},clear_files(){ce.post("/clear_discussion_files_list",{client_id:this.$store.state.client_id}).then(t=>{console.log(t),t.data.state?(this.$store.state.toast.showToast("File removed successfully",4,!0),this.filesList.length=0,this.isFileSentList.length=0,this.totalSize=0):this.$store.state.toast.showToast("Files couldn't be removed",4,!1)})},send_file(t,e){console.log("Send file triggered");const n=new FileReader,o=24*1024;let r=0,i=0;n.onloadend=()=>{if(n.error){console.error("Error reading file:",n.error);return}const a=n.result,l=r+a.byteLength>=t.size;Ze.emit("send_file_chunk",{filename:t.name,chunk:a,offset:r,isLastChunk:l,chunkIndex:i}),r+=a.byteLength,i++,l?(console.log("File sent successfully"),this.isFileSentList[this.filesList.length-1]=!0,console.log(this.isFileSentList),this.$store.state.toast.showToast("File uploaded successfully",4,!0),e()):s()};function s(){const a=t.slice(r,r+o);n.readAsArrayBuffer(a)}console.log("Uploading file"),s()},makeAnEmptyUserMessage(){this.$emit("createEmptyUserMessage",this.message),this.message=""},makeAnEmptyAIMessage(){this.$emit("createEmptyAIMessage")},toggleSendMenu(){this.isSendMenuVisible=!this.isSendMenuVisible},toggleHelpModal(){this.showHelpModal=!this.showHelpModal},updateRT(){console.log("Updating rt status"),this.is_rt?this.stopRTCom():this.startRTCom()},startRTCom(){this.is_rt=!0,console.log("is_rt:",this.is_rt),Ze.emit("start_bidirectional_audio_stream"),Se(()=>{Ce.replace()})},stopRTCom(){this.is_rt=!1,console.log("is_rt:",this.is_rt),Ze.emit("stop_bidirectional_audio_stream"),Se(()=>{Ce.replace()})},startSpeechRecognition(){"SpeechRecognition"in window||"webkitSpeechRecognition"in window?(this.recognition=new(window.SpeechRecognition||window.webkitSpeechRecognition),this.recognition.lang=this.$store.state.config.audio_in_language,this.recognition.interimResults=!0,this.recognition.onstart=()=>{this.isListeningToVoice=!0,this.silenceTimer=setTimeout(()=>{this.recognition.stop()},this.silenceTimeout)},this.recognition.onresult=t=>{let e="";for(let n=t.resultIndex;n{this.recognition.stop()},this.silenceTimeout)},this.recognition.onerror=t=>{console.error("Speech recognition error:",t.error),this.isListeningToVoice=!1,clearTimeout(this.silenceTimer)},this.recognition.onend=()=>{console.log("Speech recognition ended."),this.isListeningToVoice=!1,clearTimeout(this.silenceTimer),this.submit()},this.recognition.start()):console.error("Speech recognition is not supported in this browser.")},computedFileSize(t){return Se(()=>{Ce.replace()}),G1(t)},removeItem(t){console.log("Removing ",t.name),ce.post("/remove_discussion_file",{client_id:this.$store.state.client_id,name:t.name},{headers:this.posts_headers}).then(()=>{this.filesList=this.filesList.filter(e=>e!=t)}),console.log(this.filesList)},sendMessageEvent(t,e="no_internet"){this.$emit("messageSentEvent",t,e)},sendCMDEvent(t){this.$emit("sendCMDEvent",t)},async mountDB(t){console.log("datalake_name:"),console.log(t),await ce.post("/toggle_mount_rag_database",{client_id:this.$store.state.client_id,datalake_name:t}),await this.$store.dispatch("refreshConfig"),console.log("Refreshed")},async showFunctionSettings(t){const e=t,o=e.dir.replace(/\\/g,"/").split("/").filter(i=>i!==""),r=o[o.length-2];try{this.isLoading=!0,ce.post("/get_function_call_settings",{client_id:this.$store.state.client_id,category:r,name:e.name}).then(i=>{this.isLoading=!1,i&&(i.data&&Object.keys(i.data).length>0?this.$store.state.universalForm.showForm(i.data,"Function call settings - "+e.name,"Save changes","Cancel").then(s=>{try{ce.post("/set_function_call_settings",{client_id:this.$store.state.client_id,category:r,name:e.name,settings:s},{headers:this.posts_headers}).then(a=>{a&&a.data?(console.log("function call set with new settings",a.data),this.$store.state.toast.showToast("function call settings updated successfully!",4,!0)):(this.$store.state.toast.showToast(`Did not get function call settings responses. `+a,4,!1),this.isLoading=!1)})}catch(a){this.$store.state.toast.showToast(`Did not get function call settings responses. - Endpoint error: `+a.message,4,!1),this.isLoading=!1}}):(this.$store.state.toast.showToast("Function call has no settings",4,!1),this.isLoading=!1))})}catch(i){this.isLoading=!1,this.$store.state.toast.showToast("Could not open function call settings. Endpoint error: "+i.message,4,!1)}},async toggleFunctionCall(t){console.log("function call:"),console.log(t),await ce.post("/toggle_function_call",{client_id:this.$store.state.client_id,name:t.name,dir:t.dir}),await this.$store.dispatch("refreshConfig"),console.log("Refreshed")},addWebLink(){this.isSendMenuVisible=!1,console.log("Emitting addWebLink"),this.$emit("addWebLink")},add_file(){this.isSendMenuVisible=!1;const t=document.createElement("input");t.type="file",t.style.display="none",t.multiple=!0,document.body.appendChild(t),t.addEventListener("change",()=>{console.log("Calling Add file..."),this.addFiles(t.files),document.body.removeChild(t)}),t.click()},takePicture(){this.isSendMenuVisible=!1,Ze.emit("take_picture"),Ze.on("picture_taken",()=>{ce.post("/get_discussion_files_list",{client_id:this.$store.state.client_id}).then(t=>{this.filesList=t.data.files,this.isFileSentList=t.data.files.map(e=>!0),console.log(`Files recovered: ${this.filesList}`)})})},submitOnEnter(t){this.loading||t.which===13&&(t.preventDefault(),t.repeat||(this.sendMessageEvent(this.message),this.message=""))},submit(){console.log("SUBMIT"),this.message&&(this.sendMessageEvent(this.message),this.message="")},submitWithInternetSearch(){console.log("SUBMIT WITH internet"),this.message&&(this.sendMessageEvent(this.message,"internet"),this.message="")},stopGenerating(){this.$emit("stopGenerating")},addFiles(t){console.log("Adding files");const e=[...t];let n=0;const o=()=>{if(n>=e.length){console.log(`Files_list: ${this.filesList}`);return}const r=e[n];this.filesList.push(r),this.isFileSentList.push(!1),this.send_file(r,()=>{n++,o()})};o()}},watch:{installedModels:{immediate:!0,handler(t){this.$nextTick(()=>{this.installedModels=t})}},model_name:{immediate:!0,handler(t){this.$nextTick(()=>{this.model_name=t})}},showfilesList(){Se(()=>{Ce.replace()})},loading(t,e){Se(()=>{Ce.replace()})},filesList:{handler(t,e){let n=0;if(t.length>0)for(let o=0;o{Ce.replace()}),console.log("Chatbar mounted"),Ze.on("rtcom_status_changed",t=>{this.$store.dispatch("fetchisRTOn"),console.log("rtcom_status_changed: ",t.status),console.log("active_tts_service: ",this.$store.state.config.active_tts_service),console.log("is_rt_on: ",this.$store.state.is_rt_on)}),this.$store.dispatch("fetchisRTOn")},activated(){Se(()=>{Ce.replace()})}},CVn={class:"fixed bottom-8 left-1/2 transform -translate-x-1/2 w-full max-w-2xl p-6 bg-white/95 dark:bg-gray-900/95 backdrop-blur-sm rounded-xl border border-gray-200 dark:border-gray-700 shadow-2xl transition-all duration-300 ease-in-out z-50"},AVn={key:0,class:"mb-3"},wVn={class:"flex items-center justify-between mb-2"},OVn=["title"],MVn={class:"flex items-center gap-2"},RVn={class:"text-sm",title:"Total file size and number of files"},NVn={class:"flex items-center gap-2 min-w-0"},DVn={key:0,class:"animate-spin",title:"Uploading..."},IVn=["title"],kVn={class:"flex items-center gap-2 flex-shrink-0"},HVn=["title"],PVn=["onClick"],$Vn={class:"flex flex-col gap-2"},VVn={class:"flex flex-row gap-2 w-full"},BVn={class:"relative flex-grow"},FVn=["disabled"],UVn={class:"absolute inset-y-0 right-0 flex items-center pr-2 space-x-1"},qVn={class:"flex items-center justify-between relative"},GVn=["title"],jVn={class:"flex items-center gap-2"},zVn={class:"flex items-center gap-2"},YVn={class:"absolute right-0 bottom-full mb-12 w-48 bg-white dark:bg-gray-900 rounded-lg shadow-lg border border-gray-200 dark:border-gray-700 z-10"},WVn={class:"p-2 space-y-1"},KVn=["title"],ZVn={key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/70"},XVn={class:"bg-white dark:bg-gray-900 rounded-lg p-6 max-w-xl w-full relative overflow-y-auto max-h-[80vh]"};function JVn(t,e,n,o,r,i){const s=ze("PersonalitiesCommands");return N(),H(xe,null,[S("div",CVn,[r.filesList.length>0?(N(),H("div",AVn,[S("div",wVn,[S("button",{class:"p-2 hover:bg-gray-100 dark:hover:bg-gray-800 rounded-lg transition-colors",title:r.showfilesList?"Hide file list":"Show file list",onClick:e[0]||(e[0]=oe(a=>r.showfilesList=!r.showfilesList,["stop"]))},e[24]||(e[24]=[S("i",{"data-feather":"list",class:"w-5 h-5"},null,-1)]),8,OVn),S("div",MVn,[S("span",RVn,J(r.totalSize)+" ("+J(r.filesList.length)+") ",1),S("button",{onClick:e[1]||(e[1]=(...a)=>i.clear_files&&i.clear_files(...a)),class:"p-2 hover:text-red-500 transition-colors",title:"Clear all files"},e[25]||(e[25]=[S("i",{"data-feather":"trash",class:"w-4 h-4"},null,-1)])),S("button",{onClick:e[2]||(e[2]=(...a)=>i.download_files&&i.download_files(...a)),class:"p-2 hover:text-primary transition-colors",title:"Download all files"},e[26]||(e[26]=[S("i",{"data-feather":"download-cloud",class:"w-4 h-4"},null,-1)]))])]),Le(ne(w2,{name:"list",tag:"div",class:"max-h-40 overflow-y-auto rounded-lg bg-gray-50 dark:bg-gray-800 divide-y divide-gray-200 dark:divide-gray-700"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(r.filesList,(a,l)=>(N(),H("div",{key:l+"-"+a.name,class:"flex items-center justify-between p-2 group hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors"},[S("div",NVn,[r.isFileSentList[l]?Z("",!0):(N(),H("div",DVn,e[27]||(e[27]=[S("i",{"data-feather":"loader",class:"w-4 h-4 text-secondary"},null,-1)]))),e[28]||(e[28]=S("i",{"data-feather":"file",class:"w-4 h-4 flex-shrink-0",title:"File"},null,-1)),S("span",{class:Ee(["truncate text-sm",r.isFileSentList[l]?"text-green-500":"text-gray-500"]),title:a.name},J(a.name),11,IVn)]),S("div",kVn,[S("span",{class:"text-xs text-gray-500",title:i.computedFileSize(a.size)},J(i.computedFileSize(a.size)),9,HVn),S("button",{onClick:c=>i.removeItem(a),class:"opacity-0 group-hover:opacity-100 p-1 hover:text-red-500 transition-all",title:"Remove file"},e[29]||(e[29]=[S("i",{"data-feather":"x",class:"w-4 h-4"},null,-1)]),8,PVn)])]))),128))]),_:1},512),[[An,r.showfilesList]])])):Z("",!0),S("div",$Vn,[S("div",VVn,[S("div",BVn,[Le(S("textarea",{id:"chat",disabled:n.loading,"onUpdate:modelValue":e[3]||(e[3]=a=>r.message=a),onPaste:e[4]||(e[4]=(...a)=>i.handlePaste&&i.handlePaste(...a)),onKeydown:e[5]||(e[5]=Qn(oe(a=>i.submitOnEnter(a),["exact"]),["enter"])),rows:"1",class:"w-full p-3 pr-24 text-sm rounded-lg bg-gray-100 dark:bg-gray-800 focus:ring-2 focus:ring-primary border border-gray-300 dark:border-gray-700 resize-y min-h-[3rem] max-h-32 overflow-auto transition-colors",placeholder:"Write your message to the AI here...",title:"Enter your message here"},null,40,FVn),[[Je,r.message]]),S("div",UVn,[n.loading?(N(),H("button",{key:0,onClick:e[6]||(e[6]=(...a)=>i.stopGenerating&&i.stopGenerating(...a)),class:"p-2 bg-red-500 text-white rounded-lg hover:bg-red-600 transform hover:scale-105 active:scale-95 transition-all duration-200 ease-in-out shadow-md hover:shadow-lg animate-pulse focus:outline-none focus:ring-2 focus:ring-red-400 disabled:opacity-50",title:"Stop generating","aria-label":"Stop generation process"},e[30]||(e[30]=[S("i",{"data-feather":"stop-circle",class:"w-5 h-5 animate-spin-slow"},null,-1),S("span",{class:"sr-only"},"Stop Generation",-1)]))):(N(),H(xe,{key:1},[S("button",{onClick:e[7]||(e[7]=(...a)=>i.submit&&i.submit(...a)),class:"p-2 hover:bg-gray-200 dark:hover:bg-gray-700 rounded-lg transition-colors",title:"Send message"},e[31]||(e[31]=[S("i",{"data-feather":"send",class:"w-5 h-5"},null,-1)])),S("button",{onClick:e[8]||(e[8]=(...a)=>i.submitWithInternetSearch&&i.submitWithInternetSearch(...a)),class:"p-2 hover:bg-gray-200 dark:hover:bg-gray-700 rounded-lg transition-colors",title:"Send with internet search"},e[32]||(e[32]=[S("i",{"data-feather":"globe",class:"w-5 h-5"},null,-1)]))],64))])])]),S("div",qVn,[S("button",{onClick:e[9]||(e[9]=(...a)=>i.toggleLeftPanel&&i.toggleLeftPanel(...a)),class:Ee(["p-2 hover:bg-gray-100 dark:hover:bg-gray-800 rounded-lg transition-colors",t.$store.state.leftPanelCollapsed?"":"bg-gray-300"]),title:t.$store.state.leftPanelCollapsed?"Expand Left Panel":"Collapse Left Panel"},e[33]||(e[33]=[tr('',1)]),10,GVn),S("div",jVn,[i.isCommandsValid?(N(),ot(s,{key:0,help:"Personality commands",commandsList:t.$store.state.mountedPersArr[t.$store.state.config.active_personality_id].commands,sendCommand:i.sendCMDEvent,"on-show-toast-message":n.onShowToastMessage,ref:"personalityCMD"},null,8,["commandsList","sendCommand","on-show-toast-message"])):Z("",!0),i.isdataLakeNamesValid?(N(),ot(s,{key:1,help:"Datalakes",icon:"feather:book",commandsList:i.dataLakeNames,sendCommand:i.mountDB,"on-show-toast-message":n.onShowToastMessage,ref:"databasesList"},null,8,["commandsList","sendCommand","on-show-toast-message"])):Z("",!0),t.$store.state.config.mounted_function_calls.length>0?(N(),ot(s,{key:2,icon:"feather:zap",help:"Function calls (WIP)",commandsList:i.functionCalls,sendCommand:i.toggleFunctionCall,showSettings:i.showFunctionSettings,"on-show-toast-message":n.onShowToastMessage,ref:"functioncalls"},null,8,["commandsList","sendCommand","showSettings","on-show-toast-message"])):Z("",!0)]),S("button",{onClick:e[10]||(e[10]=(...a)=>i.toggleThinkFirstMode&&i.toggleThinkFirstMode(...a)),class:Ee(["p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",{"text-primary":t.$store.state.config.think_first_mode}]),title:"Toggle Think First Mode"},e[34]||(e[34]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-5 h-5",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[S("path",{d:"M12 2a6 6 0 0 1 6 6c0 2.42-1.61 4.5-4 5.25V15a2 2 0 0 1-4 0v-1.75C7.61 12.5 6 10.42 6 8a6 6 0 0 1 6-6z"}),S("path",{d:"M9 18h6"}),S("path",{d:"M10 22h4"})],-1)]),2),S("button",{onClick:e[11]||(e[11]=(...a)=>i.toggleFunMode&&i.toggleFunMode(...a)),class:Ee(["p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",{"text-primary":t.$store.state.config.fun_mode}]),title:"Toggle Fun Mode"},e[35]||(e[35]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-5 h-5",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[S("path",{d:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20z"}),S("circle",{cx:"12",cy:"12",r:"10"}),S("path",{d:"M8 14s1.5 2 4 2 4-2 4-2M9 9h.01M15 9h.01"})],-1)]),2),S("div",zVn,[S("button",{onClick:e[12]||(e[12]=(...a)=>i.startSpeechRecognition&&i.startSpeechRecognition(...a)),class:Ee(["p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",{"text-red-500":r.isListeningToVoice}]),title:"Voice input"},e[36]||(e[36]=[S("i",{"data-feather":"mic",class:"w-5 h-5"},null,-1)]),2),t.$store.state.config.active_tts_service!=="None"&&t.$store.state.config.active_tts_service&&t.$store.state.config.active_stt_service!=="None"?(N(),H("button",{key:0,onClick:e[13]||(e[13]=(...a)=>i.updateRT&&i.updateRT(...a)),class:Ee(["p-2 rounded-lg transition-colors",r.is_rt?"bg-red-500 text-white":"bg-green-500 text-white"]),title:"Toggle real-time audio mode"}," 🌟 ",2)):Z("",!0),S("button",{onClick:e[14]||(e[14]=(...a)=>i.toggleSendMenu&&i.toggleSendMenu(...a)),class:"p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",title:"More actions (Add file, take picture, etc.)"},e[37]||(e[37]=[S("i",{"data-feather":"plus-circle",class:"w-5 h-5"},null,-1)])),Le(S("div",YVn,[S("div",WVn,[S("button",{onClick:e[15]||(e[15]=(...a)=>i.add_file&&i.add_file(...a)),class:"w-full p-2 flex items-center gap-2 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",title:"Add a file"},e[38]||(e[38]=[S("i",{"data-feather":"file-plus",class:"w-4 h-4"},null,-1),S("span",null,"Add File",-1)])),S("button",{onClick:e[16]||(e[16]=(...a)=>i.takePicture&&i.takePicture(...a)),class:"w-full p-2 flex items-center gap-2 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",title:"Take a picture"},e[39]||(e[39]=[S("i",{"data-feather":"camera",class:"w-4 h-4"},null,-1),S("span",null,"Take Picture",-1)])),S("button",{onClick:e[17]||(e[17]=(...a)=>i.addWebLink&&i.addWebLink(...a)),class:"w-full p-2 flex items-center gap-2 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",title:"Add a web link"},e[40]||(e[40]=[S("i",{"data-feather":"link",class:"w-4 h-4"},null,-1),S("span",null,"Add Web Link",-1)]))])],512),[[An,r.isSendMenuVisible]]),S("button",{onClick:e[18]||(e[18]=(...a)=>i.makeAnEmptyUserMessage&&i.makeAnEmptyUserMessage(...a)),class:"p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",title:"Insert an empty user message"},e[41]||(e[41]=[S("i",{"data-feather":"message-circle",class:"w-5 h-5"},null,-1)])),S("button",{onClick:e[19]||(e[19]=(...a)=>i.makeAnEmptyAIMessage&&i.makeAnEmptyAIMessage(...a)),class:"p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors text-red-400",title:"Insert an empty AI message"},e[42]||(e[42]=[S("i",{"data-feather":"cpu",class:"w-5 h-5"},null,-1)]))]),S("button",{onClick:e[20]||(e[20]=(...a)=>i.toggleRightPanel&&i.toggleRightPanel(...a)),class:Ee(["p-2 hover:bg-gray-100 dark:hover:bg-gray-800 rounded-lg transition-colors",t.$store.state.rightPanelCollapsed?"":"bg-gray-300"]),title:t.$store.state.rightPanelCollapsed?"Expand Right Panel":"Collapse Right Panel"},e[43]||(e[43]=[tr('',1)]),10,KVn)])])]),S("input",{type:"file",ref:"fileDialog",onChange:e[21]||(e[21]=(...a)=>i.addFiles&&i.addFiles(...a)),multiple:"",class:"hidden"},null,544),r.showHelpModal?(N(),H("div",ZVn,[S("div",XVn,[e[46]||(e[46]=S("h2",{class:"text-2xl font-bold mb-4 text-center"},"Tutorial",-1)),S("button",{onClick:e[22]||(e[22]=(...a)=>i.toggleHelpModal&&i.toggleHelpModal(...a)),class:"absolute top-2 right-2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300",title:"Close tutorial"},e[44]||(e[44]=[S("i",{"data-feather":"x",class:"w-6 h-6"},null,-1)])),e[47]||(e[47]=tr('

Below is an overview of the chatbar buttons and what they do.

Sends your message to the AI.
Sends your message with an internet search.
Activates voice input.
Toggles real-time audio mode.
Opens more actions (Add File, Take Picture, Add Web Link).
Opens this tutorial overlay.
Inserts an empty user message.
Inserts an empty AI message.
Toggles the left panel.
Toggles the right panel.
',2)),S("button",{onClick:e[23]||(e[23]=(...a)=>i.toggleHelpModal&&i.toggleHelpModal(...a)),class:"absolute top-2 right-2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300",title:"Close tutorial"},e[45]||(e[45]=[S("i",{"data-feather":"x",class:"w-6 h-6"},null,-1)]))])])):Z("",!0)],64)}const Hk=Ye(LVn,[["render",JVn],["__scopeId","data-v-385263fc"]]),eBn={name:"WelcomeComponent",data(){return{videoUrl:"",videoType:"",latestNews:"",error:"",showVideoButton:!1,lastVideoUrl:""}},computed:{getImageForVideoType(){switch(this.videoType.toLowerCase()){case"podcast":return"/podcast.png";case"music":return"/music.png";case"movie":return"/movie.png";case"tutorial":return"/tutorial.png";default:return"/play_video.png"}},logoSrc(){return this.$store.state.config&&this.$store.state.config.app_custom_logo?`/user_infos/${this.$store.state.config.app_custom_logo}`:Wi}},methods:{async fetchLatestNews(){try{const t=await ce.get("/get_news");this.latestNews=t.data}catch(t){console.error("Failed to fetch latest news:",t),this.error="Unable to fetch the latest news. Please try again later."}},async fetchVideoUrl(){try{const t=await ce.get("/get_last_video_url");this.videoUrl=t.data.url,this.videoType=t.data.type,this.checkVideoUpdate()}catch(t){console.error("Failed to fetch video information:",t),this.error="Unable to fetch the latest video information. Please try again later."}},async handleClick(){await ce.post("/set_last_viewed_video_url",{client_id:this.$store.state.client_id,last_viewed_video_url:this.videoUrl}),this.showVideoButton=!1},async checkVideoUpdate(){const e=(await ce.get("/get_last_viewed_video_url")).data;console.log("storedVideoUrl"),console.log(e),this.videoUrl!==e&&(this.showVideoButton=!0)}},mounted(){this.fetchLatestNews(),this.fetchVideoUrl()}},tBn={class:"flex flex-col items-center justify-center w-full h-full min-h-screen p-8"},nBn={class:"text-center max-w-4xl"},rBn={class:"flex items-center justify-center gap-8 mb-12"},iBn={class:"relative w-24 h-24"},oBn=["src"],sBn={key:0,class:"flex flex-col items-start"},aBn={class:"text-6xl font-bold text-transparent bg-clip-text bg-gradient-to-r from-indigo-600 to-purple-600 dark:from-indigo-400 dark:to-purple-400"},lBn={key:1,class:"flex flex-col items-start"},cBn={class:"text-6xl font-bold text-transparent bg-clip-text bg-gradient-to-r from-indigo-600 to-purple-600 dark:from-indigo-400 dark:to-purple-400"},uBn={key:0,class:"space-y-8 animate-fade-in-up"},dBn=["innerHTML"],TBn={key:1,class:"space-y-8 animate-fade-in-up"},fBn={class:"text-4xl font-semibold"},pBn={class:"text-xl max-w-3xl mx-auto"},hBn={key:0,class:"mt-12 p-6 rounded-lg shadow-md animate-fade-in-up overflow-y-scroll scrollbar-thin"},mBn=["innerHTML"],gBn={key:2,class:"mt-6 text-red-500"},_Bn={key:0,class:"floating-button-container"},QBn=["href"],vBn=["src","alt"];function yBn(t,e,n,o,r,i){return N(),H("div",tBn,[S("div",nBn,[S("div",rBn,[S("div",iBn,[S("img",{src:i.logoSrc,alt:"LoLLMS Logo",class:"w-24 h-24 rounded-full absolute animate-rolling-ball"},null,8,oBn)]),t.$store.state.config!=null&&t.$store.state.config.app_custom_name!=null&&t.$store.state.config.app_custom_name!=""?(N(),H("div",sBn,[S("h1",aBn,J(t.$store.state.config.app_custom_name),1)])):(N(),H("div",lBn,[S("h1",cBn,J(t.$store.state.theme_vars.lollms_title),1),e[1]||(e[1]=S("p",{class:"text-2xl italic mt-2"}," Lord of Large Language And Multimodal Systems ",-1))]))]),t.$store.state.config!=null&&t.$store.state.config.app_custom_name!=null&&t.$store.state.config.app_custom_name!=""?(N(),H("div",uBn,[S("p",{innerHTML:t.$store.state.config.app_custom_welcome_message},null,8,dBn)])):(N(),H("div",TBn,[S("h2",fBn,J(t.$store.state.theme_vars.lollms_welcome_short_message),1),S("p",pBn,J(t.$store.state.theme_vars.lollms_welcome_message),1),r.latestNews?(N(),H("div",hBn,[e[2]||(e[2]=S("h3",null,"Latest LoLLMS News",-1)),S("p",{innerHTML:r.latestNews},null,8,mBn)])):Z("",!0)])),r.error?(N(),H("div",gBn,J(r.error),1)):Z("",!0)]),r.showVideoButton?(N(),H("div",_Bn,[S("a",{href:r.videoUrl,target:"_blank",class:"floating-button",onClick:e[0]||(e[0]=(...s)=>i.handleClick&&i.handleClick(...s))},[e[3]||(e[3]=S("span",{class:"tooltip"},"New ParisNeo Video!",-1)),S("img",{src:i.getImageForVideoType,alt:"New "+r.videoType,class:"w-full h-full object-cover"},null,8,vBn)],8,QBn)])):Z("",!0)])}const Pk=Ye(eBn,[["render",yBn],["__scopeId","data-v-861ce6fc"]]);var bBn=function(){function t(e,n){n===void 0&&(n=[]),this._eventType=e,this._eventFunctions=n}return t.prototype.init=function(){var e=this;this._eventFunctions.forEach(function(n){typeof window<"u"&&window.addEventListener(e._eventType,n)})},t}(),A5=function(){return A5=Object.assign||function(t){for(var e,n=1,o=arguments.length;n{const e=t.data;console.log("Done"),e.status?(this.currentPersonConfig=e.config,this.showPersonalityEditor=!0):console.error(e.error)}).catch(t=>{console.error(t)})}}},xBn={key:0,class:"fixed top-0 left-0 right-0 bottom-0 flex items-center justify-center bg-black bg-opacity-50 z-20"},LBn={class:"relative w-full max-h-full bg-bg-light dark:bg-bg-dark"},CBn={class:"w-full h-full relative items-center gap-2 rounded-lg border bg-bg-light dark:bg-bg-dark p-1.5 shadow-sm hover:shadow-none dark:border-gray-800 dark:bg-gray-900"},ABn={class:"justify-center text-center items-center w-full bg-bg-light dark:bg-bg-dark"},wBn={class:"w-full flex flex-row mt-4 text-center justify-center"},OBn={class:"w-full max-h-full container bg-bg-light dark:bg-bg-dark"},MBn={class:"mb-4 w-full"},RBn={class:"w-full bg-bg-light dark:bg-bg-dark"};function NBn(t,e,n,o,r,i){return r.show?(N(),H("div",xBn,[S("div",LBn,[S("div",CBn,[S("button",{type:"button",onClick:e[0]||(e[0]=s=>i.hide()),class:"absolute top-1 right-2.5 text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-gray-800 dark:hover:text-white"},e[17]||(e[17]=[S("svg",{"aria-hidden":"true",class:"w-5 h-5",fill:"currentColor",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"fill-rule":"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1),S("span",{class:"sr-only"},"Close modal",-1)])),S("div",ABn,[S("div",wBn,[S("button",{type:"submit",onClick:e[1]||(e[1]=oe((...s)=>i.submitForm&&i.submitForm(...s),["prevent"])),class:"bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded"}," Commit AI to Server "),S("button",{onClick:e[2]||(e[2]=oe(s=>i.hide(),["prevent"])),class:"bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded"}," Close ")]),S("div",OBn,[S("form",MBn,[S("table",RBn,[S("tr",null,[e[18]||(e[18]=S("td",null,[S("label",{for:"personalityConditioning"},"Personality Conditioning:")],-1)),S("td",null,[Le(S("textarea",{class:"dark:bg-black dark:text-primary w-full",id:"personalityConditioning","onUpdate:modelValue":e[3]||(e[3]=s=>n.config.personality_conditioning=s)},null,512),[[Je,n.config.personality_conditioning]])])]),S("tr",null,[e[19]||(e[19]=S("td",null,[S("label",{for:"userMessagePrefix"},"User Message Prefix:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"text",id:"userMessagePrefix","onUpdate:modelValue":e[4]||(e[4]=s=>n.config.user_message_prefix=s)},null,512),[[Je,n.config.user_message_prefix]])])]),S("tr",null,[e[20]||(e[20]=S("td",null,[S("label",{for:"aiMessagePrefix"},"AI Message Prefix:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"text",id:"aiMessagePrefix","onUpdate:modelValue":e[5]||(e[5]=s=>n.config.ai_message_prefix=s)},null,512),[[Je,n.config.ai_message_prefix]])])]),S("tr",null,[e[21]||(e[21]=S("td",null,[S("label",{for:"linkText"},"Link Text:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"text",id:"linkText","onUpdate:modelValue":e[6]||(e[6]=s=>n.config.link_text=s)},null,512),[[Je,n.config.link_text]])])]),S("tr",null,[e[22]||(e[22]=S("td",null,[S("label",{for:"welcomeMessage"},"Welcome Message:")],-1)),S("td",null,[Le(S("textarea",{class:"dark:bg-black dark:text-primary w-full",id:"welcomeMessage","onUpdate:modelValue":e[7]||(e[7]=s=>n.config.welcome_message=s)},null,512),[[Je,n.config.welcome_message]])])]),S("tr",null,[e[23]||(e[23]=S("td",null,[S("label",{for:"modelTemperature"},"Model Temperature:")],-1)),S("td",null,[Le(S("input",{type:"number",id:"modelTemperature","onUpdate:modelValue":e[8]||(e[8]=s=>n.config.model_temperature=s)},null,512),[[Je,n.config.model_temperature]])])]),S("tr",null,[e[24]||(e[24]=S("td",null,[S("label",{for:"modelTopK"},"Model Top K:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"number",id:"modelTopK","onUpdate:modelValue":e[9]||(e[9]=s=>n.config.model_top_k=s)},null,512),[[Je,n.config.model_top_k]])])]),S("tr",null,[e[25]||(e[25]=S("td",null,[S("label",{for:"modelTopP"},"Model Top P:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"number",id:"modelTopP","onUpdate:modelValue":e[10]||(e[10]=s=>n.config.model_top_p=s)},null,512),[[Je,n.config.model_top_p]])])]),S("tr",null,[e[26]||(e[26]=S("td",null,[S("label",{for:"modelRepeatPenalty"},"Model Repeat Penalty:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"number",id:"modelRepeatPenalty","onUpdate:modelValue":e[11]||(e[11]=s=>n.config.model_repeat_penalty=s)},null,512),[[Je,n.config.model_repeat_penalty]])])]),S("tr",null,[e[27]||(e[27]=S("td",null,[S("label",{for:"modelRepeatLastN"},"Model Repeat Last N:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"number",id:"modelRepeatLastN","onUpdate:modelValue":e[12]||(e[12]=s=>n.config.model_repeat_last_n=s)},null,512),[[Je,n.config.model_repeat_last_n]])])]),S("tr",null,[e[28]||(e[28]=S("td",null,[S("label",{for:"recommendedBinding"},"Recommended Binding:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"text",id:"recommendedBinding","onUpdate:modelValue":e[13]||(e[13]=s=>n.config.recommended_binding=s)},null,512),[[Je,n.config.recommended_binding]])])]),S("tr",null,[e[29]||(e[29]=S("td",null,[S("label",{for:"recommendedModel"},"Recommended Model:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"text",id:"recommendedModel","onUpdate:modelValue":e[14]||(e[14]=s=>n.config.recommended_model=s)},null,512),[[Je,n.config.recommended_model]])])]),S("tr",null,[e[30]||(e[30]=S("td",null,[S("label",{class:"dark:bg-black dark:text-primary w-full",for:"dependencies"},"Dependencies:")],-1)),S("td",null,[Le(S("textarea",{class:"dark:bg-black dark:text-primary w-full",id:"dependencies","onUpdate:modelValue":e[15]||(e[15]=s=>n.config.dependencies=s)},null,512),[[Je,n.config.dependencies]])])]),S("tr",null,[e[31]||(e[31]=S("td",null,[S("label",{for:"antiPrompts"},"Anti Prompts:")],-1)),S("td",null,[Le(S("textarea",{class:"dark:bg-black dark:text-primary w-full",id:"antiPrompts","onUpdate:modelValue":e[16]||(e[16]=s=>n.config.anti_prompts=s)},null,512),[[Je,n.config.anti_prompts]])])])])])])])])])])):Z("",!0)}const Kk=Ye(SBn,[["render",NBn]]),DBn={data(){return{showPopup:!1,webpageUrl:"https://lollms.com/"}},methods:{show(){this.showPopup=!0},hide(){this.showPopup=!1},save_configuration(){ce.post("/apply_settings",{client_id:this.$store.state.client_id,config:this.$store.state.config}).then(t=>{this.isLoading=!1,t.data.status?(this.$store.state.toast.showToast("Configuration changed successfully.",4,!0),this.settingsChanged=!1):this.$store.state.toast.showToast("Configuration change failed.",4,!1)})}}},IBn={key:0,class:"fixed inset-0 flex items-center justify-center z-50 bg-black bg-opacity-50"},kBn={class:"relative panels-color p-6 rounded-lg shadow-xl max-w-3xl w-full mx-4"},HBn=["src"],PBn={class:"flex items-center mt-4"};function $Bn(t,e,n,o,r,i){return N(),ot(Nr,{name:"fade"},{default:Ge(()=>[r.showPopup?(N(),H("div",IBn,[S("div",kBn,[S("button",{onClick:e[0]||(e[0]=(...s)=>i.hide&&i.hide(...s)),class:"absolute top-2 right-2 svg-button z-10",title:"Close"},e[3]||(e[3]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)])),S("iframe",{src:r.webpageUrl,class:"w-full h-[70vh] rounded-md border border-blue-300 dark:border-blue-600 bg-white dark:bg-blue-900"},null,8,HBn),S("div",PBn,[Le(S("input",{type:"checkbox",id:"startup",class:"rounded border-blue-300 dark:border-blue-600 text-blue-600 focus:ring-blue-500 dark:bg-blue-700 dark:focus:ring-offset-blue-800","onUpdate:modelValue":e[1]||(e[1]=s=>this.$store.state.config.show_news_panel=s),onChange:e[2]||(e[2]=(...s)=>i.save_configuration&&i.save_configuration(...s))},null,544),[[vl,this.$store.state.config.show_news_panel]]),e[4]||(e[4]=S("label",{for:"startup",class:"ml-2 label !mb-0 cursor-pointer"},"Show at startup",-1))])])])):Z("",!0)]),_:1})}const Zk=Ye(DBn,[["render",$Bn],["__scopeId","data-v-425d1bc4"]]),VBn="/assets/fastapi-BQj-rjUJ.png",BBn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20127.14%2096.36'%3e%3cg%20id='图层_2'%20data-name='图层%202'%3e%3cg%20id='Discord_Logos'%20data-name='Discord%20Logos'%3e%3cg%20id='Discord_Logo_-_Large_-_White'%20data-name='Discord%20Logo%20-%20Large%20-%20White'%3e%3cpath%20d='M107.7,8.07A105.15,105.15,0,0,0,81.47,0a72.06,72.06,0,0,0-3.36,6.83A97.68,97.68,0,0,0,49,6.83,72.37,72.37,0,0,0,45.64,0,105.89,105.89,0,0,0,19.39,8.09C2.79,32.65-1.71,56.6.54,80.21h0A105.73,105.73,0,0,0,32.71,96.36,77.7,77.7,0,0,0,39.6,85.25a68.42,68.42,0,0,1-10.85-5.18c.91-.66,1.8-1.34,2.66-2a75.57,75.57,0,0,0,64.32,0c.87.71,1.76,1.39,2.66,2a68.68,68.68,0,0,1-10.87,5.19,77,77,0,0,0,6.89,11.1A105.25,105.25,0,0,0,126.6,80.22h0C129.24,52.84,122.09,29.11,107.7,8.07ZM42.45,65.69C36.18,65.69,31,60,31,53s5-12.74,11.43-12.74S54,46,53.89,53,48.84,65.69,42.45,65.69Zm42.24,0C78.41,65.69,73.25,60,73.25,53s5-12.74,11.44-12.74S96.23,46,96.12,53,91.08,65.69,84.69,65.69Z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e",FBn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='50'%20height='50'%3e%3ccircle%20cx='25'%20cy='25'%20r='20'%20fill='none'%20stroke='black'%20stroke-width='3'%3e%3c/circle%3e%3cline%20x1='25'%20y1='30'%20x2='25'%20y2='15'%20style='stroke:black;stroke-width:3'%3e%3c/line%3e%3ccircle%20cx='25'%20cy='35'%20r='3'%20fill='black'%3e%3c/circle%3e%3c/svg%3e",UBn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='50'%20height='50'%3e%3ccircle%20cx='25'%20cy='25'%20r='20'%20fill='none'%20stroke='black'%20stroke-width='3'%3e%3c/circle%3e%3cline%20x1='25'%20y1='30'%20x2='25'%20y2='15'%20style='stroke:black;stroke-width:3'%3e%3canimate%20attributeName='y1'%20values='30;25;30'%20dur='1s'%20repeatCount='indefinite'%3e%3c/animate%3e%3canimate%20attributeName='y2'%20values='15;20;15'%20dur='1s'%20repeatCount='indefinite'%3e%3c/animate%3e%3c/line%3e%3ccircle%20cx='25'%20cy='35'%20r='3'%20fill='black'%3e%3canimate%20attributeName='cy'%20values='35;30;35'%20dur='1s'%20repeatCount='indefinite'%3e%3c/animate%3e%3c/circle%3e%3c/svg%3e",qBn="data:image/svg+xml,%3c?xml%20version='1.0'%20?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20fill='%23000000'%20width='800px'%20height='800px'%20viewBox='0%200%2064%2064'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20data-name='Layer%205'%20id='Layer_5'%3e%3cpath%20d='M47,33H17a1,1,0,0,0-1,1c0,9.93,7.18,18,16,18s16-8.07,16-18A1,1,0,0,0,47,33ZM18,35H46a18,18,0,0,1-.67,4H18.71A18,18,0,0,1,18,35ZM26.7,48.8a6.42,6.42,0,0,1,10.6,0,12.3,12.3,0,0,1-10.6,0Zm12.34-1A8.81,8.81,0,0,0,32,44a8.81,8.81,0,0,0-7,3.81A15.56,15.56,0,0,1,19.43,41H44.57A15.56,15.56,0,0,1,39,47.81ZM36,22a1.1,1.1,0,0,1,0-.18,1.17,1.17,0,0,1,.06-.2s0-.05,0-.07a.28.28,0,0,1,.07-.09.71.71,0,0,1,.28-.28s.06-.06.09-.07l10-5a1,1,0,1,1,.9,1.78L39.24,22l8.21,4.11a1,1,0,0,1,.44,1.34A1,1,0,0,1,47,28a.93.93,0,0,1-.45-.11l-10-5h0a1.18,1.18,0,0,1-.28-.22l0-.06a.65.65,0,0,1-.1-.15s0-.05,0-.07a1.17,1.17,0,0,1-.06-.2A1.1,1.1,0,0,1,36,22ZM16.55,26.11,24.76,22l-8.21-4.11a1,1,0,1,1,.9-1.78l10,5s.06.05.09.07a.71.71,0,0,1,.28.28.28.28,0,0,1,.07.09s0,.05,0,.07a1.17,1.17,0,0,1,.06.2.82.82,0,0,1,0,.36,1.17,1.17,0,0,1-.06.2s0,.05,0,.07a.65.65,0,0,1-.1.15.21.21,0,0,0,0,.06,1.18,1.18,0,0,1-.28.22h0l-10,5A.93.93,0,0,1,17,28a1,1,0,0,1-.89-.55A1,1,0,0,1,16.55,26.11ZM60.66,36.45A29.69,29.69,0,0,0,61,32,29,29,0,0,0,3,32a29.69,29.69,0,0,0,.34,4.45,4.65,4.65,0,0,0,2.39,7.82,29,29,0,0,0,52.54,0,4.65,4.65,0,0,0,2.39-7.82ZM4.78,41.58a2.91,2.91,0,0,1-.24-.27A2.62,2.62,0,0,1,4,39.71a.61.61,0,0,1,0-.14,2.58,2.58,0,0,1,.77-1.73,4.38,4.38,0,0,1,.74-.55C7,36.38,10,34.9,12.69,33.67c-1.52,3.3-3.42,7.17-4.17,7.91a2.59,2.59,0,0,1-1.47.72A2.66,2.66,0,0,1,4.78,41.58ZM32,59A27,27,0,0,1,7.92,44.18a4.56,4.56,0,0,0,2-1.18c1.48-1.49,5-9.36,5.66-10.92a1,1,0,0,0-1.32-1.32c-.78.34-3.14,1.39-5.49,2.53-1.29.63-2.58,1.29-3.6,1.88A25.58,25.58,0,0,1,5,32a27,27,0,0,1,54,0,25.58,25.58,0,0,1-.19,3.17c-2.88-1.66-7.88-3.88-9.09-4.41a1,1,0,0,0-1.32,1.32c.69,1.56,4.18,9.43,5.66,10.92a4.56,4.56,0,0,0,2,1.18A27,27,0,0,1,32,59ZM59.46,41.31a2.91,2.91,0,0,1-.24.27A2.66,2.66,0,0,1,57,42.3a2.59,2.59,0,0,1-1.47-.72c-.75-.74-2.65-4.61-4.17-7.91,1.65.76,3.44,1.61,4.91,2.37.91.47,1.7.9,2.26,1.25a4.38,4.38,0,0,1,.74.55A2.58,2.58,0,0,1,60,39.57a.61.61,0,0,1,0,.14A2.62,2.62,0,0,1,59.46,41.31Z'/%3e%3c/g%3e%3c/svg%3e",GBn="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='iso-8859-1'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20fill='%23000000'%20height='800px'%20width='800px'%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20viewBox='0%200%20512.001%20512.001'%20xml:space='preserve'%3e%3cg%3e%3cg%3e%3cpath%20d='M256.001,0C114.841,0,0,114.841,0,256.001s114.841,256.001,256.001,256.001S512.001,397.16,512.001,256.001%20S397.16,0,256.001,0z%20M256.001,493.701c-131.069,0-237.702-106.631-237.702-237.7S124.932,18.299,256.001,18.299%20s237.702,106.632,237.702,237.702S387.068,493.701,256.001,493.701z'/%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20d='M371.284,296.658H138.275c-5.054,0-9.15,4.097-9.15,9.15s4.095,9.15,9.15,9.15h233.008c5.054,0,9.15-4.097,9.15-9.15%20C380.433,300.754,376.337,296.658,371.284,296.658z'/%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20d='M297.481,330.816h-85.403c-5.054,0-9.15,4.097-9.15,9.15s4.095,9.15,9.15,9.15h85.403c5.054,0,9.15-4.097,9.15-9.15%20S302.534,330.816,297.481,330.816z'/%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20d='M146.725,192.982c-18.666,0-33.852,15.186-33.852,33.852c0,18.666,15.186,33.852,33.852,33.852%20c18.666,0,33.852-15.186,33.852-33.852C180.577,208.168,165.391,192.982,146.725,192.982z'/%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20d='M365.275,192.982c-18.666,0-33.852,15.186-33.852,33.852c0,18.666,15.186,33.852,33.852,33.852%20s33.852-15.186,33.852-33.852C399.128,208.168,383.942,192.982,365.275,192.982z'/%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cg%3e%3ccircle%20cx='155.969'%20cy='219.735'%20r='9.15'/%3e%3ccircle%20cx='374.338'%20cy='219.735'%20r='9.15'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e",jBn="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='iso-8859-1'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20fill='%23000000'%20height='800px'%20width='800px'%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20viewBox='0%200%20299.92%20299.92'%20xml:space='preserve'%3e%3cg%3e%3cg%3e%3cg%3e%3cpath%20d='M293.4,65.2H6.52C2.914,65.2,0,68.114,0,71.72v117.36c0,3.606,2.914,6.52,6.52,6.52h6.52v32.6%20c0,3.606,2.914,6.52,6.52,6.52h260.8c3.606,0,6.52-2.914,6.52-6.52v-32.6h6.52c3.606,0,6.52-2.914,6.52-6.52V71.72%20C299.92,68.114,297.006,65.2,293.4,65.2z%20M273.84,221.68h-19.56H228.2h-26.08h-26.08h-26.08h-26.08H97.8H71.72H45.64H26.08V195.6%20h19.56h26.08H97.8h26.08h26.08h26.08h26.08h26.08h26.08h19.56V221.68z%20M286.88,182.56h-6.52H19.56h-6.52V78.24h273.84V182.56z'/%3e%3cpath%20d='M32.6,169.52h39.12c3.606,0,6.52-2.914,6.52-6.52V97.8c0-3.606-2.914-6.52-6.52-6.52H32.6c-3.606,0-6.52,2.914-6.52,6.52%20V163C26.08,166.606,28.994,169.52,32.6,169.52z%20M39.12,104.32H65.2v52.16H39.12V104.32z'/%3e%3cpath%20d='M97.8,169.52h39.12c3.606,0,6.52-2.914,6.52-6.52V97.8c0-3.606-2.914-6.52-6.52-6.52H97.8c-3.606,0-6.52,2.914-6.52,6.52%20V163C91.28,166.606,94.194,169.52,97.8,169.52z%20M104.32,104.32h26.08v52.16h-26.08V104.32z'/%3e%3cpath%20d='M163,169.52h39.12c3.606,0,6.52-2.914,6.52-6.52V97.8c0-3.606-2.914-6.52-6.52-6.52H163c-3.606,0-6.52,2.914-6.52,6.52%20V163C156.48,166.606,159.394,169.52,163,169.52z%20M169.52,104.32h26.08v52.16h-26.08V104.32z'/%3e%3cpath%20d='M228.2,169.52h39.12c3.606,0,6.52-2.914,6.52-6.52V97.8c0-3.606-2.914-6.52-6.52-6.52H228.2%20c-3.606,0-6.52,2.914-6.52,6.52V163C221.68,166.606,224.594,169.52,228.2,169.52z%20M234.72,104.32h26.08v52.16h-26.08V104.32z'/%3e%3cpath%20d='M52.16,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C49.246,221.68,52.16,218.766,52.16,215.16z'/%3e%3cpath%20d='M78.24,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C75.326,221.68,78.24,218.766,78.24,215.16z'/%3e%3cpath%20d='M104.32,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C101.406,221.68,104.32,218.766,104.32,215.16z'/%3e%3cpath%20d='M130.4,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C127.486,221.68,130.4,218.766,130.4,215.16z'/%3e%3cpath%20d='M156.48,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52s-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20S156.48,218.766,156.48,215.16z'/%3e%3cpath%20d='M182.56,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C179.646,221.68,182.56,218.766,182.56,215.16z'/%3e%3cpath%20d='M208.64,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C205.726,221.68,208.64,218.766,208.64,215.16z'/%3e%3cpath%20d='M234.72,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C231.806,221.68,234.72,218.766,234.72,215.16z'/%3e%3cpath%20d='M260.8,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C257.886,221.68,260.8,218.766,260.8,215.16z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e",zBn="data:image/svg+xml,%3csvg%20width='100'%20height='100'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20cx='50'%20cy='50'%20r='40'%20stroke='green'%20stroke-width='4'%20fill='green'%20/%3e%3cpath%20stroke='white'%20stroke-width='4'%20d='M40%2050%20l10%2010%2020%20-20'%20fill='none'%20/%3e%3c/svg%3e",YBn="data:image/svg+xml,%3csvg%20width='100'%20height='100'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20cx='50'%20cy='50'%20r='40'%20stroke='red'%20stroke-width='4'%20fill='red'%20/%3e%3cline%20x1='35'%20y1='35'%20x2='65'%20y2='65'%20stroke='white'%20stroke-width='4'%20/%3e%3cline%20x1='65'%20y1='35'%20x2='35'%20y2='65'%20stroke='white'%20stroke-width='4'%20/%3e%3c/svg%3e",WBn="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='iso-8859-1'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20fill='%23000000'%20version='1.1'%20id='Capa_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='800px'%20height='800px'%20viewBox='0%200%20461.759%20461.759'%20xml:space='preserve'%3e%3cg%3e%3cpath%20d='M0,301.058h147.916v147.919H0V301.058z%20M194.432,448.977H342.35V301.058H194.432V448.977z%20M2.802,257.347h147.916V109.434%20H2.802V257.347z%20M325.476,92.219l-51.603-79.437l-79.441,51.601l51.604,79.437L325.476,92.219z%20M219.337,213.733l71.045,62.663%20l62.66-71.039l-71.044-62.669L219.337,213.733z%20M412.107,57.967l-80.668,49.656l49.652,80.666l80.668-49.65L412.107,57.967z'/%3e%3c/g%3e%3c/svg%3e",KBn="/assets/robot-CQPaMbxU.svg",ZBn="/";ce.defaults.baseURL="/";const XBn={name:"MountedPersonalities",props:{onShowPersList:Function,onReady:Function},components:{Toast:ch,UniversalForm:XI},data(){return{bUrl:ZBn,isMounted:!1,show:!1}},async mounted(){await this.constructor(),this.isMounted=!0},async activated(){this.isMounted&&await this.constructor()},computed:{configFile:{get(){return this.$store.state.config},set(t){this.$store.commit("setConfig",t)}},mountedPers:{get(){return console.log("asked for:",this.$store.state.mountedPers),this.$store.state.mountedPers},set(t){this.$store.commit("setMountedPers",t)}},personalities:{get(){return this.$store.state.personalities},set(t){this.$store.commit("setPersonalities",t)}},mountedPersArr:{get(){return this.$store.state.mountedPersArr},set(t){this.$store.commit("setMountedPers",t)}}},methods:{async handleOnTalk(){const t=this.mountedPers;console.log("pers:",t),this.isGenerating=!0;let e=await ce.get("/get_generation_status",{});if(e)if(e.data.status)console.log("Already generating");else{const n=this.$store.state.config.personalities.findIndex(r=>r===t.full_path),o={client_id:this.$store.state.client_id,id:n};e=await ce.post("/select_personality",o),console.log("Generating message from ",e.data.status),Ze.emit("generate_msg_from",{id:-1})}},async remount_personality(){const t=this.mountedPers;if(console.log("Remounting personality ",t),!t)return{status:!1,error:"no personality - mount_personality"};try{console.log("before");const e={client_id:this.$store.state.client_id,category:t.category,folder:t.folder,language:t.language};console.log("after");const n=await ce.post("/remount_personality",e);if(console.log("Remounting personality executed:",n),n)return console.log("Remounting personality res"),this.$store.state.toast.showToast("Personality remounted",4,!0),n.data;console.log("failed remount_personality")}catch(e){console.log(e.message,"remount_personality - settings");return}},onSettingsPersonality(t){try{ce.get("/get_active_personality_settings").then(e=>{e&&(console.log("pers sett",e),e.data&&Object.keys(e.data).length>0?this.$refs.universalForm.showForm(e.data,"Personality settings - "+t.name,"Save changes","Cancel").then(n=>{console.log("Received"),console.log(n);try{ce.post("/set_active_personality_settings",n).then(o=>{o&&o.data?(console.log("personality set with new settings",o.data),this.$store.state.toast.showToast("Personality settings updated successfully!",4,!0)):this.$store.state.toast.showToast(`Did not get Personality settings responses. + Endpoint error: `+a.message,4,!1),this.isLoading=!1}}):(this.$store.state.toast.showToast("Function call has no settings",4,!1),this.isLoading=!1))})}catch(i){this.isLoading=!1,this.$store.state.toast.showToast("Could not open function call settings. Endpoint error: "+i.message,4,!1)}},async toggleFunctionCall(t){console.log("function call:"),console.log(t),await ce.post("/toggle_function_call",{client_id:this.$store.state.client_id,name:t.name,dir:t.dir}),await this.$store.dispatch("refreshConfig"),console.log("Refreshed")},addWebLink(){this.isSendMenuVisible=!1,console.log("Emitting addWebLink"),this.$emit("addWebLink")},add_file(){this.isSendMenuVisible=!1;const t=document.createElement("input");t.type="file",t.style.display="none",t.multiple=!0,document.body.appendChild(t),t.addEventListener("change",()=>{console.log("Calling Add file..."),this.addFiles(t.files),document.body.removeChild(t)}),t.click()},takePicture(){this.isSendMenuVisible=!1,Ze.emit("take_picture"),Ze.on("picture_taken",()=>{ce.post("/get_discussion_files_list",{client_id:this.$store.state.client_id}).then(t=>{this.filesList=t.data.files,this.isFileSentList=t.data.files.map(e=>!0),console.log(`Files recovered: ${this.filesList}`)})})},submitOnEnter(t){this.loading||t.which===13&&(t.preventDefault(),t.repeat||(this.sendMessageEvent(this.message),this.message=""))},submit(){console.log("SUBMIT"),this.message&&(this.sendMessageEvent(this.message),this.message="")},submitWithInternetSearch(){console.log("SUBMIT WITH internet"),this.message&&(this.sendMessageEvent(this.message,"internet"),this.message="")},stopGenerating(){this.$emit("stopGenerating")},addFiles(t){console.log("Adding files");const e=[...t];let n=0;const o=()=>{if(n>=e.length){console.log(`Files_list: ${this.filesList}`);return}const r=e[n];this.filesList.push(r),this.isFileSentList.push(!1),this.send_file(r,()=>{n++,o()})};o()}},watch:{installedModels:{immediate:!0,handler(t){this.$nextTick(()=>{this.installedModels=t})}},model_name:{immediate:!0,handler(t){this.$nextTick(()=>{this.model_name=t})}},showfilesList(){Se(()=>{Ce.replace()})},loading(t,e){Se(()=>{Ce.replace()})},filesList:{handler(t,e){let n=0;if(t.length>0)for(let o=0;o{Ce.replace()}),console.log("Chatbar mounted"),Ze.on("rtcom_status_changed",t=>{this.$store.dispatch("fetchisRTOn"),console.log("rtcom_status_changed: ",t.status),console.log("active_tts_service: ",this.$store.state.config.active_tts_service),console.log("is_rt_on: ",this.$store.state.is_rt_on)}),this.$store.dispatch("fetchisRTOn")},activated(){Se(()=>{Ce.replace()})}},AVn={class:"fixed bottom-8 left-1/2 transform -translate-x-1/2 w-full max-w-2xl p-6 bg-white/95 dark:bg-gray-900/95 backdrop-blur-sm rounded-xl border border-gray-200 dark:border-gray-700 shadow-2xl transition-all duration-300 ease-in-out z-50"},wVn={key:0,class:"mb-3"},OVn={class:"flex items-center justify-between mb-2"},MVn=["title"],RVn={class:"flex items-center gap-2"},NVn={class:"text-sm",title:"Total file size and number of files"},DVn={class:"flex items-center gap-2 min-w-0"},IVn={key:0,class:"animate-spin",title:"Uploading..."},kVn=["title"],HVn={class:"flex items-center gap-2 flex-shrink-0"},PVn=["title"],$Vn=["onClick"],VVn={class:"flex flex-col gap-2"},BVn={class:"flex flex-row gap-2 w-full"},FVn={class:"relative flex-grow"},UVn=["disabled"],qVn={class:"absolute inset-y-0 right-0 flex items-center pr-2 space-x-1"},GVn={class:"flex items-center justify-between relative"},jVn=["title"],zVn={class:"flex items-center gap-2"},YVn={class:"flex items-center gap-2"},WVn={class:"absolute right-0 bottom-full mb-12 w-48 bg-white dark:bg-gray-900 rounded-lg shadow-lg border border-gray-200 dark:border-gray-700 z-10"},KVn={class:"p-2 space-y-1"},ZVn=["title"],XVn={key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/70"},JVn={class:"bg-white dark:bg-gray-900 rounded-lg p-6 max-w-xl w-full relative overflow-y-auto max-h-[80vh]"};function eBn(t,e,n,o,r,i){const s=ze("PersonalitiesCommands");return N(),H(xe,null,[S("div",AVn,[r.filesList.length>0?(N(),H("div",wVn,[S("div",OVn,[S("button",{class:"p-2 hover:bg-gray-100 dark:hover:bg-gray-800 rounded-lg transition-colors",title:r.showfilesList?"Hide file list":"Show file list",onClick:e[0]||(e[0]=oe(a=>r.showfilesList=!r.showfilesList,["stop"]))},e[24]||(e[24]=[S("i",{"data-feather":"list",class:"w-5 h-5"},null,-1)]),8,MVn),S("div",RVn,[S("span",NVn,J(r.totalSize)+" ("+J(r.filesList.length)+") ",1),S("button",{onClick:e[1]||(e[1]=(...a)=>i.clear_files&&i.clear_files(...a)),class:"p-2 hover:text-red-500 transition-colors",title:"Clear all files"},e[25]||(e[25]=[S("i",{"data-feather":"trash",class:"w-4 h-4"},null,-1)])),S("button",{onClick:e[2]||(e[2]=(...a)=>i.download_files&&i.download_files(...a)),class:"p-2 hover:text-primary transition-colors",title:"Download all files"},e[26]||(e[26]=[S("i",{"data-feather":"download-cloud",class:"w-4 h-4"},null,-1)]))])]),Le(ne(w2,{name:"list",tag:"div",class:"max-h-40 overflow-y-auto rounded-lg bg-gray-50 dark:bg-gray-800 divide-y divide-gray-200 dark:divide-gray-700"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(r.filesList,(a,l)=>(N(),H("div",{key:l+"-"+a.name,class:"flex items-center justify-between p-2 group hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors"},[S("div",DVn,[r.isFileSentList[l]?Z("",!0):(N(),H("div",IVn,e[27]||(e[27]=[S("i",{"data-feather":"loader",class:"w-4 h-4 text-secondary"},null,-1)]))),e[28]||(e[28]=S("i",{"data-feather":"file",class:"w-4 h-4 flex-shrink-0",title:"File"},null,-1)),S("span",{class:Ee(["truncate text-sm",r.isFileSentList[l]?"text-green-500":"text-gray-500"]),title:a.name},J(a.name),11,kVn)]),S("div",HVn,[S("span",{class:"text-xs text-gray-500",title:i.computedFileSize(a.size)},J(i.computedFileSize(a.size)),9,PVn),S("button",{onClick:c=>i.removeItem(a),class:"opacity-0 group-hover:opacity-100 p-1 hover:text-red-500 transition-all",title:"Remove file"},e[29]||(e[29]=[S("i",{"data-feather":"x",class:"w-4 h-4"},null,-1)]),8,$Vn)])]))),128))]),_:1},512),[[An,r.showfilesList]])])):Z("",!0),S("div",VVn,[S("div",BVn,[S("div",FVn,[Le(S("textarea",{id:"chat",disabled:n.loading,"onUpdate:modelValue":e[3]||(e[3]=a=>r.message=a),onPaste:e[4]||(e[4]=(...a)=>i.handlePaste&&i.handlePaste(...a)),onKeydown:e[5]||(e[5]=Qn(oe(a=>i.submitOnEnter(a),["exact"]),["enter"])),rows:"1",class:"w-full p-3 pr-24 text-sm rounded-lg bg-gray-100 dark:bg-gray-800 focus:ring-2 focus:ring-primary border border-gray-300 dark:border-gray-700 resize-y min-h-[3rem] max-h-32 overflow-auto transition-colors",placeholder:"Write your message to the AI here...",title:"Enter your message here"},null,40,UVn),[[Je,r.message]]),S("div",qVn,[n.loading?(N(),H("button",{key:0,onClick:e[6]||(e[6]=(...a)=>i.stopGenerating&&i.stopGenerating(...a)),class:"p-2 bg-red-500 text-white rounded-lg hover:bg-red-600 transform hover:scale-105 active:scale-95 transition-all duration-200 ease-in-out shadow-md hover:shadow-lg animate-pulse focus:outline-none focus:ring-2 focus:ring-red-400 disabled:opacity-50",title:"Stop generating","aria-label":"Stop generation process"},e[30]||(e[30]=[S("i",{"data-feather":"stop-circle",class:"w-5 h-5 animate-spin-slow"},null,-1),S("span",{class:"sr-only"},"Stop Generation",-1)]))):(N(),H(xe,{key:1},[S("button",{onClick:e[7]||(e[7]=(...a)=>i.submit&&i.submit(...a)),class:"p-2 hover:bg-gray-200 dark:hover:bg-gray-700 rounded-lg transition-colors",title:"Send message"},e[31]||(e[31]=[S("i",{"data-feather":"send",class:"w-5 h-5"},null,-1)])),S("button",{onClick:e[8]||(e[8]=(...a)=>i.submitWithInternetSearch&&i.submitWithInternetSearch(...a)),class:"p-2 hover:bg-gray-200 dark:hover:bg-gray-700 rounded-lg transition-colors",title:"Send with internet search"},e[32]||(e[32]=[S("i",{"data-feather":"globe",class:"w-5 h-5"},null,-1)]))],64))])])]),S("div",GVn,[S("button",{onClick:e[9]||(e[9]=(...a)=>i.toggleLeftPanel&&i.toggleLeftPanel(...a)),class:Ee(["p-2 hover:bg-gray-100 dark:hover:bg-gray-800 rounded-lg transition-colors",t.$store.state.leftPanelCollapsed?"":"bg-gray-300"]),title:t.$store.state.leftPanelCollapsed?"Expand Left Panel":"Collapse Left Panel"},e[33]||(e[33]=[tr('',1)]),10,jVn),S("div",zVn,[i.isCommandsValid?(N(),ot(s,{key:0,help:"Personality commands",commandsList:t.$store.state.mountedPersArr[t.$store.state.config.active_personality_id].commands,sendCommand:i.sendCMDEvent,"on-show-toast-message":n.onShowToastMessage,ref:"personalityCMD"},null,8,["commandsList","sendCommand","on-show-toast-message"])):Z("",!0),i.isdataLakeNamesValid?(N(),ot(s,{key:1,help:"Datalakes",icon:"feather:book",commandsList:i.dataLakeNames,sendCommand:i.mountDB,"on-show-toast-message":n.onShowToastMessage,ref:"databasesList"},null,8,["commandsList","sendCommand","on-show-toast-message"])):Z("",!0),t.$store.state.config.mounted_function_calls.length>0?(N(),ot(s,{key:2,icon:"feather:zap",help:"Function calls (WIP)",commandsList:i.functionCalls,sendCommand:i.toggleFunctionCall,showSettings:i.showFunctionSettings,"on-show-toast-message":n.onShowToastMessage,ref:"functioncalls"},null,8,["commandsList","sendCommand","showSettings","on-show-toast-message"])):Z("",!0)]),S("button",{onClick:e[10]||(e[10]=(...a)=>i.toggleThinkFirstMode&&i.toggleThinkFirstMode(...a)),class:Ee(["p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",{"text-primary":t.$store.state.config.think_first_mode}]),title:"Toggle Think First Mode"},e[34]||(e[34]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-5 h-5",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[S("path",{d:"M12 2a6 6 0 0 1 6 6c0 2.42-1.61 4.5-4 5.25V15a2 2 0 0 1-4 0v-1.75C7.61 12.5 6 10.42 6 8a6 6 0 0 1 6-6z"}),S("path",{d:"M9 18h6"}),S("path",{d:"M10 22h4"})],-1)]),2),S("button",{onClick:e[11]||(e[11]=(...a)=>i.toggleFunMode&&i.toggleFunMode(...a)),class:Ee(["p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",{"text-primary":t.$store.state.config.fun_mode}]),title:"Toggle Fun Mode"},e[35]||(e[35]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-5 h-5",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[S("path",{d:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20z"}),S("circle",{cx:"12",cy:"12",r:"10"}),S("path",{d:"M8 14s1.5 2 4 2 4-2 4-2M9 9h.01M15 9h.01"})],-1)]),2),S("div",YVn,[S("button",{onClick:e[12]||(e[12]=(...a)=>i.startSpeechRecognition&&i.startSpeechRecognition(...a)),class:Ee(["p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",{"text-red-500":r.isListeningToVoice}]),title:"Voice input"},e[36]||(e[36]=[S("i",{"data-feather":"mic",class:"w-5 h-5"},null,-1)]),2),t.$store.state.config.active_tts_service!=="None"&&t.$store.state.config.active_tts_service&&t.$store.state.config.active_stt_service!=="None"?(N(),H("button",{key:0,onClick:e[13]||(e[13]=(...a)=>i.updateRT&&i.updateRT(...a)),class:Ee(["p-2 rounded-lg transition-colors",r.is_rt?"bg-red-500 text-white":"bg-green-500 text-white"]),title:"Toggle real-time audio mode"}," 🌟 ",2)):Z("",!0),S("button",{onClick:e[14]||(e[14]=(...a)=>i.toggleSendMenu&&i.toggleSendMenu(...a)),class:"p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",title:"More actions (Add file, take picture, etc.)"},e[37]||(e[37]=[S("i",{"data-feather":"plus-circle",class:"w-5 h-5"},null,-1)])),Le(S("div",WVn,[S("div",KVn,[S("button",{onClick:e[15]||(e[15]=(...a)=>i.add_file&&i.add_file(...a)),class:"w-full p-2 flex items-center gap-2 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",title:"Add a file"},e[38]||(e[38]=[S("i",{"data-feather":"file-plus",class:"w-4 h-4"},null,-1),S("span",null,"Add File",-1)])),S("button",{onClick:e[16]||(e[16]=(...a)=>i.takePicture&&i.takePicture(...a)),class:"w-full p-2 flex items-center gap-2 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",title:"Take a picture"},e[39]||(e[39]=[S("i",{"data-feather":"camera",class:"w-4 h-4"},null,-1),S("span",null,"Take Picture",-1)])),S("button",{onClick:e[17]||(e[17]=(...a)=>i.addWebLink&&i.addWebLink(...a)),class:"w-full p-2 flex items-center gap-2 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",title:"Add a web link"},e[40]||(e[40]=[S("i",{"data-feather":"link",class:"w-4 h-4"},null,-1),S("span",null,"Add Web Link",-1)]))])],512),[[An,r.isSendMenuVisible]]),S("button",{onClick:e[18]||(e[18]=(...a)=>i.makeAnEmptyUserMessage&&i.makeAnEmptyUserMessage(...a)),class:"p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors",title:"Insert an empty user message"},e[41]||(e[41]=[S("i",{"data-feather":"message-circle",class:"w-5 h-5"},null,-1)])),S("button",{onClick:e[19]||(e[19]=(...a)=>i.makeAnEmptyAIMessage&&i.makeAnEmptyAIMessage(...a)),class:"p-2 hover:bg-gray-100 dark:hover:bg-gray-700 rounded-lg transition-colors text-red-400",title:"Insert an empty AI message"},e[42]||(e[42]=[S("i",{"data-feather":"cpu",class:"w-5 h-5"},null,-1)]))]),S("button",{onClick:e[20]||(e[20]=(...a)=>i.toggleRightPanel&&i.toggleRightPanel(...a)),class:Ee(["p-2 hover:bg-gray-100 dark:hover:bg-gray-800 rounded-lg transition-colors",t.$store.state.rightPanelCollapsed?"":"bg-gray-300"]),title:t.$store.state.rightPanelCollapsed?"Expand Right Panel":"Collapse Right Panel"},e[43]||(e[43]=[tr('',1)]),10,ZVn)])])]),S("input",{type:"file",ref:"fileDialog",onChange:e[21]||(e[21]=(...a)=>i.addFiles&&i.addFiles(...a)),multiple:"",class:"hidden"},null,544),r.showHelpModal?(N(),H("div",XVn,[S("div",JVn,[e[46]||(e[46]=S("h2",{class:"text-2xl font-bold mb-4 text-center"},"Tutorial",-1)),S("button",{onClick:e[22]||(e[22]=(...a)=>i.toggleHelpModal&&i.toggleHelpModal(...a)),class:"absolute top-2 right-2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300",title:"Close tutorial"},e[44]||(e[44]=[S("i",{"data-feather":"x",class:"w-6 h-6"},null,-1)])),e[47]||(e[47]=tr('

Below is an overview of the chatbar buttons and what they do.

Sends your message to the AI.
Sends your message with an internet search.
Activates voice input.
Toggles real-time audio mode.
Opens more actions (Add File, Take Picture, Add Web Link).
Opens this tutorial overlay.
Inserts an empty user message.
Inserts an empty AI message.
Toggles the left panel.
Toggles the right panel.
',2)),S("button",{onClick:e[23]||(e[23]=(...a)=>i.toggleHelpModal&&i.toggleHelpModal(...a)),class:"absolute top-2 right-2 text-gray-500 hover:text-gray-700 dark:hover:text-gray-300",title:"Close tutorial"},e[45]||(e[45]=[S("i",{"data-feather":"x",class:"w-6 h-6"},null,-1)]))])])):Z("",!0)],64)}const Hk=Ye(CVn,[["render",eBn],["__scopeId","data-v-385263fc"]]),tBn={name:"WelcomeComponent",data(){return{videoUrl:"",videoType:"",latestNews:"",error:"",showVideoButton:!1,lastVideoUrl:""}},computed:{getImageForVideoType(){switch(this.videoType.toLowerCase()){case"podcast":return"/podcast.png";case"music":return"/music.png";case"movie":return"/movie.png";case"tutorial":return"/tutorial.png";default:return"/play_video.png"}},logoSrc(){return this.$store.state.config&&this.$store.state.config.app_custom_logo?`/user_infos/${this.$store.state.config.app_custom_logo}`:Wi}},methods:{async fetchLatestNews(){try{const t=await ce.get("/get_news");this.latestNews=t.data}catch(t){console.error("Failed to fetch latest news:",t),this.error="Unable to fetch the latest news. Please try again later."}},async fetchVideoUrl(){try{const t=await ce.get("/get_last_video_url");this.videoUrl=t.data.url,this.videoType=t.data.type,this.checkVideoUpdate()}catch(t){console.error("Failed to fetch video information:",t),this.error="Unable to fetch the latest video information. Please try again later."}},async handleClick(){await ce.post("/set_last_viewed_video_url",{client_id:this.$store.state.client_id,last_viewed_video_url:this.videoUrl}),this.showVideoButton=!1},async checkVideoUpdate(){const e=(await ce.get("/get_last_viewed_video_url")).data;console.log("storedVideoUrl"),console.log(e),this.videoUrl!==e&&(this.showVideoButton=!0)}},mounted(){this.fetchLatestNews(),this.fetchVideoUrl()}},nBn={class:"flex flex-col items-center justify-center w-full h-full min-h-screen p-8"},rBn={class:"text-center max-w-4xl"},iBn={class:"flex items-center justify-center gap-8 mb-12"},oBn={class:"relative w-24 h-24"},sBn=["src"],aBn={key:0,class:"flex flex-col items-start"},lBn={class:"text-6xl font-bold text-transparent bg-clip-text bg-gradient-to-r from-indigo-600 to-purple-600 dark:from-indigo-400 dark:to-purple-400"},cBn={key:1,class:"flex flex-col items-start"},uBn={class:"text-6xl font-bold text-transparent bg-clip-text bg-gradient-to-r from-indigo-600 to-purple-600 dark:from-indigo-400 dark:to-purple-400"},dBn={key:0,class:"space-y-8 animate-fade-in-up"},TBn=["innerHTML"],fBn={key:1,class:"space-y-8 animate-fade-in-up"},pBn={class:"text-4xl font-semibold"},hBn={class:"text-xl max-w-3xl mx-auto"},mBn={key:0,class:"mt-12 p-6 rounded-lg shadow-md animate-fade-in-up overflow-y-scroll scrollbar-thin"},gBn=["innerHTML"],_Bn={key:2,class:"mt-6 text-red-500"},QBn={key:0,class:"floating-button-container"},vBn=["href"],yBn=["src","alt"];function bBn(t,e,n,o,r,i){return N(),H("div",nBn,[S("div",rBn,[S("div",iBn,[S("div",oBn,[S("img",{src:i.logoSrc,alt:"LoLLMS Logo",class:"w-24 h-24 rounded-full absolute animate-rolling-ball"},null,8,sBn)]),t.$store.state.config!=null&&t.$store.state.config.app_custom_name!=null&&t.$store.state.config.app_custom_name!=""?(N(),H("div",aBn,[S("h1",lBn,J(t.$store.state.config.app_custom_name),1)])):(N(),H("div",cBn,[S("h1",uBn,J(t.$store.state.theme_vars.lollms_title),1),e[1]||(e[1]=S("p",{class:"text-2xl italic mt-2"}," Lord of Large Language And Multimodal Systems ",-1))]))]),t.$store.state.config!=null&&t.$store.state.config.app_custom_name!=null&&t.$store.state.config.app_custom_name!=""?(N(),H("div",dBn,[S("p",{innerHTML:t.$store.state.config.app_custom_welcome_message},null,8,TBn)])):(N(),H("div",fBn,[S("h2",pBn,J(t.$store.state.theme_vars.lollms_welcome_short_message),1),S("p",hBn,J(t.$store.state.theme_vars.lollms_welcome_message),1),r.latestNews?(N(),H("div",mBn,[e[2]||(e[2]=S("h3",null,"Latest LoLLMS News",-1)),S("p",{innerHTML:r.latestNews},null,8,gBn)])):Z("",!0)])),r.error?(N(),H("div",_Bn,J(r.error),1)):Z("",!0)]),r.showVideoButton?(N(),H("div",QBn,[S("a",{href:r.videoUrl,target:"_blank",class:"floating-button",onClick:e[0]||(e[0]=(...s)=>i.handleClick&&i.handleClick(...s))},[e[3]||(e[3]=S("span",{class:"tooltip"},"New ParisNeo Video!",-1)),S("img",{src:i.getImageForVideoType,alt:"New "+r.videoType,class:"w-full h-full object-cover"},null,8,yBn)],8,vBn)])):Z("",!0)])}const Pk=Ye(tBn,[["render",bBn],["__scopeId","data-v-861ce6fc"]]);var EBn=function(){function t(e,n){n===void 0&&(n=[]),this._eventType=e,this._eventFunctions=n}return t.prototype.init=function(){var e=this;this._eventFunctions.forEach(function(n){typeof window<"u"&&window.addEventListener(e._eventType,n)})},t}(),A5=function(){return A5=Object.assign||function(t){for(var e,n=1,o=arguments.length;n{const e=t.data;console.log("Done"),e.status?(this.currentPersonConfig=e.config,this.showPersonalityEditor=!0):console.error(e.error)}).catch(t=>{console.error(t)})}}},LBn={key:0,class:"fixed top-0 left-0 right-0 bottom-0 flex items-center justify-center bg-black bg-opacity-50 z-20"},CBn={class:"relative w-full max-h-full bg-bg-light dark:bg-bg-dark"},ABn={class:"w-full h-full relative items-center gap-2 rounded-lg border bg-bg-light dark:bg-bg-dark p-1.5 shadow-sm hover:shadow-none dark:border-gray-800 dark:bg-gray-900"},wBn={class:"justify-center text-center items-center w-full bg-bg-light dark:bg-bg-dark"},OBn={class:"w-full flex flex-row mt-4 text-center justify-center"},MBn={class:"w-full max-h-full container bg-bg-light dark:bg-bg-dark"},RBn={class:"mb-4 w-full"},NBn={class:"w-full bg-bg-light dark:bg-bg-dark"};function DBn(t,e,n,o,r,i){return r.show?(N(),H("div",LBn,[S("div",CBn,[S("div",ABn,[S("button",{type:"button",onClick:e[0]||(e[0]=s=>i.hide()),class:"absolute top-1 right-2.5 text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-gray-800 dark:hover:text-white"},e[17]||(e[17]=[S("svg",{"aria-hidden":"true",class:"w-5 h-5",fill:"currentColor",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"fill-rule":"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1),S("span",{class:"sr-only"},"Close modal",-1)])),S("div",wBn,[S("div",OBn,[S("button",{type:"submit",onClick:e[1]||(e[1]=oe((...s)=>i.submitForm&&i.submitForm(...s),["prevent"])),class:"bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded"}," Commit AI to Server "),S("button",{onClick:e[2]||(e[2]=oe(s=>i.hide(),["prevent"])),class:"bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded"}," Close ")]),S("div",MBn,[S("form",RBn,[S("table",NBn,[S("tr",null,[e[18]||(e[18]=S("td",null,[S("label",{for:"personalityConditioning"},"Personality Conditioning:")],-1)),S("td",null,[Le(S("textarea",{class:"dark:bg-black dark:text-primary w-full",id:"personalityConditioning","onUpdate:modelValue":e[3]||(e[3]=s=>n.config.personality_conditioning=s)},null,512),[[Je,n.config.personality_conditioning]])])]),S("tr",null,[e[19]||(e[19]=S("td",null,[S("label",{for:"userMessagePrefix"},"User Message Prefix:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"text",id:"userMessagePrefix","onUpdate:modelValue":e[4]||(e[4]=s=>n.config.user_message_prefix=s)},null,512),[[Je,n.config.user_message_prefix]])])]),S("tr",null,[e[20]||(e[20]=S("td",null,[S("label",{for:"aiMessagePrefix"},"AI Message Prefix:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"text",id:"aiMessagePrefix","onUpdate:modelValue":e[5]||(e[5]=s=>n.config.ai_message_prefix=s)},null,512),[[Je,n.config.ai_message_prefix]])])]),S("tr",null,[e[21]||(e[21]=S("td",null,[S("label",{for:"linkText"},"Link Text:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"text",id:"linkText","onUpdate:modelValue":e[6]||(e[6]=s=>n.config.link_text=s)},null,512),[[Je,n.config.link_text]])])]),S("tr",null,[e[22]||(e[22]=S("td",null,[S("label",{for:"welcomeMessage"},"Welcome Message:")],-1)),S("td",null,[Le(S("textarea",{class:"dark:bg-black dark:text-primary w-full",id:"welcomeMessage","onUpdate:modelValue":e[7]||(e[7]=s=>n.config.welcome_message=s)},null,512),[[Je,n.config.welcome_message]])])]),S("tr",null,[e[23]||(e[23]=S("td",null,[S("label",{for:"modelTemperature"},"Model Temperature:")],-1)),S("td",null,[Le(S("input",{type:"number",id:"modelTemperature","onUpdate:modelValue":e[8]||(e[8]=s=>n.config.model_temperature=s)},null,512),[[Je,n.config.model_temperature]])])]),S("tr",null,[e[24]||(e[24]=S("td",null,[S("label",{for:"modelTopK"},"Model Top K:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"number",id:"modelTopK","onUpdate:modelValue":e[9]||(e[9]=s=>n.config.model_top_k=s)},null,512),[[Je,n.config.model_top_k]])])]),S("tr",null,[e[25]||(e[25]=S("td",null,[S("label",{for:"modelTopP"},"Model Top P:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"number",id:"modelTopP","onUpdate:modelValue":e[10]||(e[10]=s=>n.config.model_top_p=s)},null,512),[[Je,n.config.model_top_p]])])]),S("tr",null,[e[26]||(e[26]=S("td",null,[S("label",{for:"modelRepeatPenalty"},"Model Repeat Penalty:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"number",id:"modelRepeatPenalty","onUpdate:modelValue":e[11]||(e[11]=s=>n.config.model_repeat_penalty=s)},null,512),[[Je,n.config.model_repeat_penalty]])])]),S("tr",null,[e[27]||(e[27]=S("td",null,[S("label",{for:"modelRepeatLastN"},"Model Repeat Last N:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"number",id:"modelRepeatLastN","onUpdate:modelValue":e[12]||(e[12]=s=>n.config.model_repeat_last_n=s)},null,512),[[Je,n.config.model_repeat_last_n]])])]),S("tr",null,[e[28]||(e[28]=S("td",null,[S("label",{for:"recommendedBinding"},"Recommended Binding:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"text",id:"recommendedBinding","onUpdate:modelValue":e[13]||(e[13]=s=>n.config.recommended_binding=s)},null,512),[[Je,n.config.recommended_binding]])])]),S("tr",null,[e[29]||(e[29]=S("td",null,[S("label",{for:"recommendedModel"},"Recommended Model:")],-1)),S("td",null,[Le(S("input",{class:"dark:bg-black dark:text-primary w-full",type:"text",id:"recommendedModel","onUpdate:modelValue":e[14]||(e[14]=s=>n.config.recommended_model=s)},null,512),[[Je,n.config.recommended_model]])])]),S("tr",null,[e[30]||(e[30]=S("td",null,[S("label",{class:"dark:bg-black dark:text-primary w-full",for:"dependencies"},"Dependencies:")],-1)),S("td",null,[Le(S("textarea",{class:"dark:bg-black dark:text-primary w-full",id:"dependencies","onUpdate:modelValue":e[15]||(e[15]=s=>n.config.dependencies=s)},null,512),[[Je,n.config.dependencies]])])]),S("tr",null,[e[31]||(e[31]=S("td",null,[S("label",{for:"antiPrompts"},"Anti Prompts:")],-1)),S("td",null,[Le(S("textarea",{class:"dark:bg-black dark:text-primary w-full",id:"antiPrompts","onUpdate:modelValue":e[16]||(e[16]=s=>n.config.anti_prompts=s)},null,512),[[Je,n.config.anti_prompts]])])])])])])])])])])):Z("",!0)}const Kk=Ye(xBn,[["render",DBn]]),IBn={data(){return{showPopup:!1,webpageUrl:"https://lollms.com/"}},methods:{show(){this.showPopup=!0},hide(){this.showPopup=!1},save_configuration(){ce.post("/apply_settings",{client_id:this.$store.state.client_id,config:this.$store.state.config}).then(t=>{this.isLoading=!1,t.data.status?(this.$store.state.toast.showToast("Configuration changed successfully.",4,!0),this.settingsChanged=!1):this.$store.state.toast.showToast("Configuration change failed.",4,!1)})}}},kBn={key:0,class:"fixed inset-0 flex items-center justify-center z-50 bg-black bg-opacity-50"},HBn={class:"relative panels-color p-6 rounded-lg shadow-xl max-w-3xl w-full mx-4"},PBn=["src"],$Bn={class:"flex items-center mt-4"};function VBn(t,e,n,o,r,i){return N(),ot(Nr,{name:"fade"},{default:Ge(()=>[r.showPopup?(N(),H("div",kBn,[S("div",HBn,[S("button",{onClick:e[0]||(e[0]=(...s)=>i.hide&&i.hide(...s)),class:"absolute top-2 right-2 svg-button z-10",title:"Close"},e[3]||(e[3]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)])),S("iframe",{src:r.webpageUrl,class:"w-full h-[70vh] rounded-md border border-blue-300 dark:border-blue-600 bg-white dark:bg-blue-900"},null,8,PBn),S("div",$Bn,[Le(S("input",{type:"checkbox",id:"startup",class:"rounded border-blue-300 dark:border-blue-600 text-blue-600 focus:ring-blue-500 dark:bg-blue-700 dark:focus:ring-offset-blue-800","onUpdate:modelValue":e[1]||(e[1]=s=>this.$store.state.config.show_news_panel=s),onChange:e[2]||(e[2]=(...s)=>i.save_configuration&&i.save_configuration(...s))},null,544),[[vl,this.$store.state.config.show_news_panel]]),e[4]||(e[4]=S("label",{for:"startup",class:"ml-2 label !mb-0 cursor-pointer"},"Show at startup",-1))])])])):Z("",!0)]),_:1})}const Zk=Ye(IBn,[["render",VBn],["__scopeId","data-v-425d1bc4"]]),BBn="/assets/fastapi-BQj-rjUJ.png",FBn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20127.14%2096.36'%3e%3cg%20id='图层_2'%20data-name='图层%202'%3e%3cg%20id='Discord_Logos'%20data-name='Discord%20Logos'%3e%3cg%20id='Discord_Logo_-_Large_-_White'%20data-name='Discord%20Logo%20-%20Large%20-%20White'%3e%3cpath%20d='M107.7,8.07A105.15,105.15,0,0,0,81.47,0a72.06,72.06,0,0,0-3.36,6.83A97.68,97.68,0,0,0,49,6.83,72.37,72.37,0,0,0,45.64,0,105.89,105.89,0,0,0,19.39,8.09C2.79,32.65-1.71,56.6.54,80.21h0A105.73,105.73,0,0,0,32.71,96.36,77.7,77.7,0,0,0,39.6,85.25a68.42,68.42,0,0,1-10.85-5.18c.91-.66,1.8-1.34,2.66-2a75.57,75.57,0,0,0,64.32,0c.87.71,1.76,1.39,2.66,2a68.68,68.68,0,0,1-10.87,5.19,77,77,0,0,0,6.89,11.1A105.25,105.25,0,0,0,126.6,80.22h0C129.24,52.84,122.09,29.11,107.7,8.07ZM42.45,65.69C36.18,65.69,31,60,31,53s5-12.74,11.43-12.74S54,46,53.89,53,48.84,65.69,42.45,65.69Zm42.24,0C78.41,65.69,73.25,60,73.25,53s5-12.74,11.44-12.74S96.23,46,96.12,53,91.08,65.69,84.69,65.69Z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e",UBn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='50'%20height='50'%3e%3ccircle%20cx='25'%20cy='25'%20r='20'%20fill='none'%20stroke='black'%20stroke-width='3'%3e%3c/circle%3e%3cline%20x1='25'%20y1='30'%20x2='25'%20y2='15'%20style='stroke:black;stroke-width:3'%3e%3c/line%3e%3ccircle%20cx='25'%20cy='35'%20r='3'%20fill='black'%3e%3c/circle%3e%3c/svg%3e",qBn="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='50'%20height='50'%3e%3ccircle%20cx='25'%20cy='25'%20r='20'%20fill='none'%20stroke='black'%20stroke-width='3'%3e%3c/circle%3e%3cline%20x1='25'%20y1='30'%20x2='25'%20y2='15'%20style='stroke:black;stroke-width:3'%3e%3canimate%20attributeName='y1'%20values='30;25;30'%20dur='1s'%20repeatCount='indefinite'%3e%3c/animate%3e%3canimate%20attributeName='y2'%20values='15;20;15'%20dur='1s'%20repeatCount='indefinite'%3e%3c/animate%3e%3c/line%3e%3ccircle%20cx='25'%20cy='35'%20r='3'%20fill='black'%3e%3canimate%20attributeName='cy'%20values='35;30;35'%20dur='1s'%20repeatCount='indefinite'%3e%3c/animate%3e%3c/circle%3e%3c/svg%3e",GBn="data:image/svg+xml,%3c?xml%20version='1.0'%20?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20fill='%23000000'%20width='800px'%20height='800px'%20viewBox='0%200%2064%2064'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20data-name='Layer%205'%20id='Layer_5'%3e%3cpath%20d='M47,33H17a1,1,0,0,0-1,1c0,9.93,7.18,18,16,18s16-8.07,16-18A1,1,0,0,0,47,33ZM18,35H46a18,18,0,0,1-.67,4H18.71A18,18,0,0,1,18,35ZM26.7,48.8a6.42,6.42,0,0,1,10.6,0,12.3,12.3,0,0,1-10.6,0Zm12.34-1A8.81,8.81,0,0,0,32,44a8.81,8.81,0,0,0-7,3.81A15.56,15.56,0,0,1,19.43,41H44.57A15.56,15.56,0,0,1,39,47.81ZM36,22a1.1,1.1,0,0,1,0-.18,1.17,1.17,0,0,1,.06-.2s0-.05,0-.07a.28.28,0,0,1,.07-.09.71.71,0,0,1,.28-.28s.06-.06.09-.07l10-5a1,1,0,1,1,.9,1.78L39.24,22l8.21,4.11a1,1,0,0,1,.44,1.34A1,1,0,0,1,47,28a.93.93,0,0,1-.45-.11l-10-5h0a1.18,1.18,0,0,1-.28-.22l0-.06a.65.65,0,0,1-.1-.15s0-.05,0-.07a1.17,1.17,0,0,1-.06-.2A1.1,1.1,0,0,1,36,22ZM16.55,26.11,24.76,22l-8.21-4.11a1,1,0,1,1,.9-1.78l10,5s.06.05.09.07a.71.71,0,0,1,.28.28.28.28,0,0,1,.07.09s0,.05,0,.07a1.17,1.17,0,0,1,.06.2.82.82,0,0,1,0,.36,1.17,1.17,0,0,1-.06.2s0,.05,0,.07a.65.65,0,0,1-.1.15.21.21,0,0,0,0,.06,1.18,1.18,0,0,1-.28.22h0l-10,5A.93.93,0,0,1,17,28a1,1,0,0,1-.89-.55A1,1,0,0,1,16.55,26.11ZM60.66,36.45A29.69,29.69,0,0,0,61,32,29,29,0,0,0,3,32a29.69,29.69,0,0,0,.34,4.45,4.65,4.65,0,0,0,2.39,7.82,29,29,0,0,0,52.54,0,4.65,4.65,0,0,0,2.39-7.82ZM4.78,41.58a2.91,2.91,0,0,1-.24-.27A2.62,2.62,0,0,1,4,39.71a.61.61,0,0,1,0-.14,2.58,2.58,0,0,1,.77-1.73,4.38,4.38,0,0,1,.74-.55C7,36.38,10,34.9,12.69,33.67c-1.52,3.3-3.42,7.17-4.17,7.91a2.59,2.59,0,0,1-1.47.72A2.66,2.66,0,0,1,4.78,41.58ZM32,59A27,27,0,0,1,7.92,44.18a4.56,4.56,0,0,0,2-1.18c1.48-1.49,5-9.36,5.66-10.92a1,1,0,0,0-1.32-1.32c-.78.34-3.14,1.39-5.49,2.53-1.29.63-2.58,1.29-3.6,1.88A25.58,25.58,0,0,1,5,32a27,27,0,0,1,54,0,25.58,25.58,0,0,1-.19,3.17c-2.88-1.66-7.88-3.88-9.09-4.41a1,1,0,0,0-1.32,1.32c.69,1.56,4.18,9.43,5.66,10.92a4.56,4.56,0,0,0,2,1.18A27,27,0,0,1,32,59ZM59.46,41.31a2.91,2.91,0,0,1-.24.27A2.66,2.66,0,0,1,57,42.3a2.59,2.59,0,0,1-1.47-.72c-.75-.74-2.65-4.61-4.17-7.91,1.65.76,3.44,1.61,4.91,2.37.91.47,1.7.9,2.26,1.25a4.38,4.38,0,0,1,.74.55A2.58,2.58,0,0,1,60,39.57a.61.61,0,0,1,0,.14A2.62,2.62,0,0,1,59.46,41.31Z'/%3e%3c/g%3e%3c/svg%3e",jBn="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='iso-8859-1'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20fill='%23000000'%20height='800px'%20width='800px'%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20viewBox='0%200%20512.001%20512.001'%20xml:space='preserve'%3e%3cg%3e%3cg%3e%3cpath%20d='M256.001,0C114.841,0,0,114.841,0,256.001s114.841,256.001,256.001,256.001S512.001,397.16,512.001,256.001%20S397.16,0,256.001,0z%20M256.001,493.701c-131.069,0-237.702-106.631-237.702-237.7S124.932,18.299,256.001,18.299%20s237.702,106.632,237.702,237.702S387.068,493.701,256.001,493.701z'/%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20d='M371.284,296.658H138.275c-5.054,0-9.15,4.097-9.15,9.15s4.095,9.15,9.15,9.15h233.008c5.054,0,9.15-4.097,9.15-9.15%20C380.433,300.754,376.337,296.658,371.284,296.658z'/%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20d='M297.481,330.816h-85.403c-5.054,0-9.15,4.097-9.15,9.15s4.095,9.15,9.15,9.15h85.403c5.054,0,9.15-4.097,9.15-9.15%20S302.534,330.816,297.481,330.816z'/%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20d='M146.725,192.982c-18.666,0-33.852,15.186-33.852,33.852c0,18.666,15.186,33.852,33.852,33.852%20c18.666,0,33.852-15.186,33.852-33.852C180.577,208.168,165.391,192.982,146.725,192.982z'/%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cpath%20d='M365.275,192.982c-18.666,0-33.852,15.186-33.852,33.852c0,18.666,15.186,33.852,33.852,33.852%20s33.852-15.186,33.852-33.852C399.128,208.168,383.942,192.982,365.275,192.982z'/%3e%3c/g%3e%3c/g%3e%3cg%3e%3cg%3e%3cg%3e%3ccircle%20cx='155.969'%20cy='219.735'%20r='9.15'/%3e%3ccircle%20cx='374.338'%20cy='219.735'%20r='9.15'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e",zBn="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='iso-8859-1'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20fill='%23000000'%20height='800px'%20width='800px'%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20viewBox='0%200%20299.92%20299.92'%20xml:space='preserve'%3e%3cg%3e%3cg%3e%3cg%3e%3cpath%20d='M293.4,65.2H6.52C2.914,65.2,0,68.114,0,71.72v117.36c0,3.606,2.914,6.52,6.52,6.52h6.52v32.6%20c0,3.606,2.914,6.52,6.52,6.52h260.8c3.606,0,6.52-2.914,6.52-6.52v-32.6h6.52c3.606,0,6.52-2.914,6.52-6.52V71.72%20C299.92,68.114,297.006,65.2,293.4,65.2z%20M273.84,221.68h-19.56H228.2h-26.08h-26.08h-26.08h-26.08H97.8H71.72H45.64H26.08V195.6%20h19.56h26.08H97.8h26.08h26.08h26.08h26.08h26.08h26.08h19.56V221.68z%20M286.88,182.56h-6.52H19.56h-6.52V78.24h273.84V182.56z'/%3e%3cpath%20d='M32.6,169.52h39.12c3.606,0,6.52-2.914,6.52-6.52V97.8c0-3.606-2.914-6.52-6.52-6.52H32.6c-3.606,0-6.52,2.914-6.52,6.52%20V163C26.08,166.606,28.994,169.52,32.6,169.52z%20M39.12,104.32H65.2v52.16H39.12V104.32z'/%3e%3cpath%20d='M97.8,169.52h39.12c3.606,0,6.52-2.914,6.52-6.52V97.8c0-3.606-2.914-6.52-6.52-6.52H97.8c-3.606,0-6.52,2.914-6.52,6.52%20V163C91.28,166.606,94.194,169.52,97.8,169.52z%20M104.32,104.32h26.08v52.16h-26.08V104.32z'/%3e%3cpath%20d='M163,169.52h39.12c3.606,0,6.52-2.914,6.52-6.52V97.8c0-3.606-2.914-6.52-6.52-6.52H163c-3.606,0-6.52,2.914-6.52,6.52%20V163C156.48,166.606,159.394,169.52,163,169.52z%20M169.52,104.32h26.08v52.16h-26.08V104.32z'/%3e%3cpath%20d='M228.2,169.52h39.12c3.606,0,6.52-2.914,6.52-6.52V97.8c0-3.606-2.914-6.52-6.52-6.52H228.2%20c-3.606,0-6.52,2.914-6.52,6.52V163C221.68,166.606,224.594,169.52,228.2,169.52z%20M234.72,104.32h26.08v52.16h-26.08V104.32z'/%3e%3cpath%20d='M52.16,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C49.246,221.68,52.16,218.766,52.16,215.16z'/%3e%3cpath%20d='M78.24,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C75.326,221.68,78.24,218.766,78.24,215.16z'/%3e%3cpath%20d='M104.32,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C101.406,221.68,104.32,218.766,104.32,215.16z'/%3e%3cpath%20d='M130.4,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C127.486,221.68,130.4,218.766,130.4,215.16z'/%3e%3cpath%20d='M156.48,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52s-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20S156.48,218.766,156.48,215.16z'/%3e%3cpath%20d='M182.56,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C179.646,221.68,182.56,218.766,182.56,215.16z'/%3e%3cpath%20d='M208.64,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C205.726,221.68,208.64,218.766,208.64,215.16z'/%3e%3cpath%20d='M234.72,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C231.806,221.68,234.72,218.766,234.72,215.16z'/%3e%3cpath%20d='M260.8,215.16v-13.04c0-3.606-2.914-6.52-6.52-6.52c-3.606,0-6.52,2.914-6.52,6.52v13.04c0,3.606,2.914,6.52,6.52,6.52%20C257.886,221.68,260.8,218.766,260.8,215.16z'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e",YBn="data:image/svg+xml,%3csvg%20width='100'%20height='100'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20cx='50'%20cy='50'%20r='40'%20stroke='green'%20stroke-width='4'%20fill='green'%20/%3e%3cpath%20stroke='white'%20stroke-width='4'%20d='M40%2050%20l10%2010%2020%20-20'%20fill='none'%20/%3e%3c/svg%3e",WBn="data:image/svg+xml,%3csvg%20width='100'%20height='100'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20cx='50'%20cy='50'%20r='40'%20stroke='red'%20stroke-width='4'%20fill='red'%20/%3e%3cline%20x1='35'%20y1='35'%20x2='65'%20y2='65'%20stroke='white'%20stroke-width='4'%20/%3e%3cline%20x1='65'%20y1='35'%20x2='35'%20y2='65'%20stroke='white'%20stroke-width='4'%20/%3e%3c/svg%3e",KBn="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='iso-8859-1'?%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Generator:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20fill='%23000000'%20version='1.1'%20id='Capa_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='800px'%20height='800px'%20viewBox='0%200%20461.759%20461.759'%20xml:space='preserve'%3e%3cg%3e%3cpath%20d='M0,301.058h147.916v147.919H0V301.058z%20M194.432,448.977H342.35V301.058H194.432V448.977z%20M2.802,257.347h147.916V109.434%20H2.802V257.347z%20M325.476,92.219l-51.603-79.437l-79.441,51.601l51.604,79.437L325.476,92.219z%20M219.337,213.733l71.045,62.663%20l62.66-71.039l-71.044-62.669L219.337,213.733z%20M412.107,57.967l-80.668,49.656l49.652,80.666l80.668-49.65L412.107,57.967z'/%3e%3c/g%3e%3c/svg%3e",ZBn="/assets/robot-CQPaMbxU.svg",XBn="/";ce.defaults.baseURL="/";const JBn={name:"MountedPersonalities",props:{onShowPersList:Function,onReady:Function},components:{Toast:ch,UniversalForm:XI},data(){return{bUrl:XBn,isMounted:!1,show:!1}},async mounted(){await this.constructor(),this.isMounted=!0},async activated(){this.isMounted&&await this.constructor()},computed:{configFile:{get(){return this.$store.state.config},set(t){this.$store.commit("setConfig",t)}},mountedPers:{get(){return console.log("asked for:",this.$store.state.mountedPers),this.$store.state.mountedPers},set(t){this.$store.commit("setMountedPers",t)}},personalities:{get(){return this.$store.state.personalities},set(t){this.$store.commit("setPersonalities",t)}},mountedPersArr:{get(){return this.$store.state.mountedPersArr},set(t){this.$store.commit("setMountedPers",t)}}},methods:{async handleOnTalk(){const t=this.mountedPers;console.log("pers:",t),this.isGenerating=!0;let e=await ce.get("/get_generation_status",{});if(e)if(e.data.status)console.log("Already generating");else{const n=this.$store.state.config.personalities.findIndex(r=>r===t.full_path),o={client_id:this.$store.state.client_id,id:n};e=await ce.post("/select_personality",o),console.log("Generating message from ",e.data.status),Ze.emit("generate_msg_from",{id:-1})}},async remount_personality(){const t=this.mountedPers;if(console.log("Remounting personality ",t),!t)return{status:!1,error:"no personality - mount_personality"};try{console.log("before");const e={client_id:this.$store.state.client_id,category:t.category,folder:t.folder,language:t.language};console.log("after");const n=await ce.post("/remount_personality",e);if(console.log("Remounting personality executed:",n),n)return console.log("Remounting personality res"),this.$store.state.toast.showToast("Personality remounted",4,!0),n.data;console.log("failed remount_personality")}catch(e){console.log(e.message,"remount_personality - settings");return}},onSettingsPersonality(t){try{ce.get("/get_active_personality_settings").then(e=>{e&&(console.log("pers sett",e),e.data&&Object.keys(e.data).length>0?this.$refs.universalForm.showForm(e.data,"Personality settings - "+t.name,"Save changes","Cancel").then(n=>{console.log("Received"),console.log(n);try{ce.post("/set_active_personality_settings",n).then(o=>{o&&o.data?(console.log("personality set with new settings",o.data),this.$store.state.toast.showToast("Personality settings updated successfully!",4,!0)):this.$store.state.toast.showToast(`Did not get Personality settings responses. `+o,4,!1)})}catch(o){this.$store.state.toast.showToast(`Did not get Personality settings responses. - Endpoint error: `+o.message,4,!1)}}):this.$store.state.toast.showToast("Personality has no settings",4,!1))})}catch(e){this.$store.state.toast.showToast("Could not open personality settings. Endpoint error: "+e.message,4,!1)}},async constructor(){for(Se(()=>{Ce.replace()});this.$store.state.ready===!1;)await new Promise(t=>setTimeout(t,100));this.onReady()},async api_get_req(t){try{const e=await ce.get("/"+t);if(e)return e.data}catch(e){console.log(e.message,"api_get_req - mountedPersonalities");return}},personalityImgPlacehodler(t){t.target.src=t5}}},JBn={class:"relative group/item"},eFn=["src","alt"],tFn={class:"absolute bottom-6 left-0 w-full flex items-center justify-center opacity-0 group-hover/item:opacity-100 transition-opacity duration-200 p-1"},nFn={class:"p-1 bg-gray-500 rounded-full text-white hover:bg-gray-600 focus:outline-none ml-1",title:"Show more"},rFn={class:"text-xs font-bold"};function iFn(t,e,n,o,r,i){const s=ze("UniversalForm");return N(),H(xe,null,[S("div",JBn,[S("button",{onClick:e[1]||(e[1]=oe((...a)=>i.onSettingsPersonality&&i.onSettingsPersonality(...a),["prevent"])),class:Ee(["w-6 h-6 rounded-full overflow-hidden transition-transform duration-200 transform group-hover/item:scale-110 focus:outline-none relative",{"glow-effect":t.$store.state.config.activate_skills_lib}])},[S("img",{src:i.mountedPers.avatar,onError:e[0]||(e[0]=(...a)=>i.personalityImgPlacehodler&&i.personalityImgPlacehodler(...a)),alt:i.mountedPers.name,class:Ee(["w-full h-full object-cover",{"border-2 border-secondary":t.isActive}])},null,42,eFn)],2),S("div",tFn,[S("button",{onClick:e[2]||(e[2]=oe(a=>i.remount_personality(),["prevent"])),class:"p-1 bg-blue-500 rounded-full text-white hover:bg-blue-600 focus:outline-none",title:"Remount"},e[4]||(e[4]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1)])),S("button",{onClick:e[3]||(e[3]=oe(a=>i.handleOnTalk(),["prevent"])),class:"p-1 bg-green-500 rounded-full text-white hover:bg-green-600 focus:outline-none ml-1",title:"Talk"},e[5]||(e[5]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 10h.01M12 10h.01M16 10h.01M9 16H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-5l-5 5v-5z"})],-1)])),S("button",nFn,[S("span",rFn,"+"+J(i.mountedPersArr.length-1),1)])])]),ne(s,{ref:"universalForm",class:"z-50"},null,512)],64)}const Xk=Ye(XBn,[["render",iFn],["__scopeId","data-v-70cef6eb"]]),oFn={name:"ChangelogPopup",data(){return{showChangelogPopup:!1,changelogContent:"",currentVersion:"0.0.0"}},computed:{parsedChangelogContent(){const t={breaks:!0,gfm:!0},e=Et(this.changelogContent,t);return Rc.sanitize(e)}},async mounted(){await this.checkChangelogUpdate()},methods:{async fetchVersion(){try{const t=await ce.get("/get_lollms_webui_version");if(t&&t.data){const{version_main:e,version_secondary:n,version_type:o,version_codename:r}=t.data;let i=`${e}.${n}`;return o&&(i+=` ${o}`),r&&(i+=` (${r})`),this.$store.commit("setVersion",i),this.currentVersion=i,i}}catch(t){console.error("Error fetching LoLLMs version:",t)}return this.$store.state.version||"0.0.0"},async checkChangelogUpdate(){try{const t=await ce.get("/get_changelog");this.changelogContent=t.data||"*No changelog content found.*";const e=await this.fetchVersion(),o=(await ce.get("/get_last_viewed_changelog_version")).data,r=i=>{i&&i.app_show_changelogs&&e!==o&&e!=="0.0.0"&&(this.showChangelogPopup=!0)};if(this.$store.state.config)r(this.$store.state.config);else{const i=this.$watch("$store.state.config",s=>{s&&(r(s),i())},{immediate:!1})}}catch(t){console.error("Error checking changelog:",t)}},async handleUnderstand(){try{await ce.post("/set_last_viewed_changelog_version",{client_id:this.$store.state.client_id,version:this.currentVersion}),this.closePopup()}catch(t){console.error("Error setting last viewed changelog version:",t),this.closePopup()}},closePopup(){this.showChangelogPopup=!1}}},sFn={class:"flex justify-between items-center p-4 px-6 border-b border-blue-300 dark:border-blue-600 flex-shrink-0 unicolor-panels-color"},aFn={class:"p-6 md:p-8 flex-grow overflow-y-auto scrollbar text-blue-900 dark:text-blue-200"},lFn=["innerHTML"],cFn={class:"flex justify-end p-4 px-6 border-t border-blue-300 dark:border-blue-600 flex-shrink-0 unicolor-panels-color"};function uFn(t,e,n,o,r,i){return N(),ot(Nr,{name:"fade"},{default:Ge(()=>[r.showChangelogPopup?(N(),H("div",{key:0,class:Ee(["fixed inset-0 bg-black/60 backdrop-blur-sm flex items-center justify-center z-[100] transition-opacity duration-300",{"opacity-0 pointer-events-none":!r.showChangelogPopup,"opacity-100":r.showChangelogPopup}])},[S("div",{class:Ee(["panels-color rounded-lg w-[95%] max-w-4xl max-h-[90vh] flex flex-col shadow-2xl overflow-hidden transform transition-all duration-300 ease-out border border-blue-300 dark:border-blue-600",{"opacity-0 scale-95":!r.showChangelogPopup,"opacity-100 scale-100":r.showChangelogPopup}])},[S("div",sFn,[e[3]||(e[3]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100"},"What's New",-1)),S("button",{class:"svg-button",onClick:e[0]||(e[0]=(...s)=>i.closePopup&&i.closePopup(...s)),"aria-label":"Close Changelog"},e[2]||(e[2]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)]))]),S("div",aFn,[S("div",{class:"prose prose-blue dark:prose-invert max-w-none",innerHTML:i.parsedChangelogContent},null,8,lFn)]),S("div",cFn,[S("button",{class:"btn btn-primary",onClick:e[1]||(e[1]=(...s)=>i.handleUnderstand&&i.handleUnderstand(...s))}," Got it ")])],2)],2)):Z("",!0)]),_:1})}const Jk=Ye(oFn,[["render",uFn],["__scopeId","data-v-6f262cbb"]]),dFn={key:0,class:"fixed inset-0 z-50 flex items-center justify-center overflow-hidden theme-bg-primary theme-text-primary"},TFn={key:0,class:"absolute inset-0 pointer-events-none overflow-hidden opacity-70"},fFn={class:"relative z-10 flex w-full max-w-4xl flex-col items-center px-6 text-center"},pFn={class:"mb-10 w-full"},hFn={class:"lollms-title-style mb-3 text-5xl font-extrabold tracking-tight drop-shadow-md md:text-7xl transition-transform duration-300 hover:scale-[1.03] theme-text-title"},mFn={class:"text-xl italic md:text-2xl theme-text-secondary"},gFn={key:0,class:"mt-4 text-base theme-text-muted"},_Fn={class:"mt-1 text-sm theme-text-muted"},QFn={class:"text-base theme-text-card-body"},vFn=["innerHTML"],yFn={class:"w-full max-w-lg"},bFn={class:"mb-3 h-3 w-full overflow-hidden rounded-full shadow-inner animated-progressbar-bg"},EFn={role:"status",class:"w-full"},SFn={class:"text-2xl font-semibold theme-text-primary"},xFn={key:0,class:"relative flex flex-col no-scrollbar shadow-lg w-[16rem]"},LFn={class:"logo-container"},CFn=["src","title"],AFn={class:"flex flex-col justify-center"},wFn={class:"text-center p-2"},OFn={class:"text-md relative inline-block"},MFn={class:"relative inline-block font-bold tracking-wide text-black dark:text-white"},RFn={class:"text-gray-400 text-sm"},NFn={class:"toolbar discussion"},DFn={class:"toolbar-container"},IFn={class:"p-4 flex flex-wrap gap-2 items-center"},kFn={class:"p-4 flex flex-wrap gap-2 items-center"},HFn={class:"relative"},PFn={class:"relative"},$Fn={key:0,title:"Loading..",class:"flex justify-center"},VFn={key:1,class:"flex justify-center space-x-4"},BFn={key:2,class:"flex flex-col space-y-2"},FFn={class:"relative inline-block"},UFn={class:"p-2 border-b border-gray-200 dark:border-gray-700"},qFn={class:"p-4 grid grid-cols-3 gap-4 max-h-80 overflow-y-auto custom-scrollbar"},GFn={class:"flex flex-col items-center hover:bg-blue-100 dark:hover:bg-blue-900 p-2 rounded-md w-full cursor-pointer"},jFn=["onClick","title"],zFn=["src","alt"],YFn=["title"],WFn={class:"absolute top-0 left-0 w-full h-full opacity-0 group-hover/item:opacity-100 transition-opacity duration-200 bg-white dark:bg-gray-900 rounded-md shadow-md p-2 flex flex-col items-center justify-center"},KFn=["onClick"],ZFn={class:"flex space-x-1"},XFn=["onClick"],JFn=["src","title"],eUn={class:"relative inline-block"},tUn={class:"p-2 border-b border-gray-200 dark:border-gray-700"},nUn={class:"p-4 grid grid-cols-3 gap-4 max-h-80 overflow-y-auto custom-scrollbar"},rUn={class:"flex flex-col items-center hover:bg-blue-100 dark:hover:bg-blue-900 p-2 rounded-md w-full cursor-pointer"},iUn=["onClick","title"],oUn=["src","alt"],sUn=["title"],aUn={class:"absolute top-0 left-0 w-full h-full opacity-0 group-hover/item:opacity-100 transition-opacity duration-200 bg-white dark:bg-gray-900 rounded-md shadow-md p-2 flex flex-col items-center justify-center"},lUn=["onClick"],cUn={class:"flex space-x-1"},uUn=["onClick"],dUn=["src","title"],TUn={class:"relative inline-block"},fUn={class:"p-2 border-b border-gray-200 dark:border-gray-700"},pUn={class:"p-4 grid grid-cols-3 gap-4 max-h-80 overflow-y-auto custom-scrollbar"},hUn={class:"flex flex-col items-center hover:bg-blue-100 dark:hover:bg-blue-900 p-2 rounded-md w-full cursor-pointer"},mUn=["onClick","title"],gUn=["src","alt"],_Un=["title"],QUn={class:"absolute top-0 left-0 w-full h-full opacity-0 group-hover/item:opacity-100 transition-opacity duration-200 bg-white dark:bg-gray-900 rounded-md shadow-md p-2 flex flex-col items-center justify-center"},vUn=["onClick"],yUn={class:"flex space-x-1"},bUn=["onClick"],EUn=["onClick"],SUn=["onClick"],xUn={class:"personalities-container"},LUn={class:"w-auto max-w-md mx-auto p-2"},CUn={class:"flex items-center"},AUn={class:"relative flex-grow"},wUn={key:0,class:"w-full p-4 bg-bg-light dark:bg-bg-dark"},OUn={class:"flex flex-col space-y-2"},MUn={key:0},RUn={key:1,class:"flex space-x-2"},NUn={key:1,class:"flex space-x-2"},DUn={class:"flex space-x-2"},IUn={class:"relative flex flex-row flex-grow mb-10 z-0 w-full"},kUn={key:1,class:"gap-2 py-2 my-2 hover:shadow-md hover:bg-primary-light dark:hover:bg-primary rounded-md p-2 duration-75 group cursor-pointer"},HUn={class:"flex flex-row items-center justify-center panels-color"},PUn={class:"text-center font-large font-bold text-l drop-shadow-md align-middle"},$Un={key:0,class:"relative flex flex-col flex-grow"},VUn={class:"container pt-4 pb-50 mb-50 w-full"},BUn={key:0,class:"w-full rounded-lg m-2 shadow-lg hover:border-primary dark:hover:border-primary hover:border-solid hover:border-2 border-2 border-transparent even:bg-bg-light-discussion-odd dark:even:bg-bg-dark-discussion-odd flex flex-col overflow-hidden p-4 pb-2"},FUn={class:"overflow-x-auto flex-grow scrollbar-thin scrollbar-thumb-gray-400 dark:scrollbar-thumb-gray-600 scrollbar-track-gray-200 dark:scrollbar-track-gray-800 scrollbar-thumb-rounded-full scrollbar-track-rounded-full"},UUn={class:"flex flex-nowrap gap-6 p-4 min-w-full"},qUn=["title","onClick"],GUn={class:"space-y-3"},jUn=["title"],zUn=["title"],YUn={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},WUn={class:"bg-white dark:bg-gray-800 p-6 rounded-lg shadow-xl max-w-4xl w-full max-h-[90vh] flex flex-col"},KUn={class:"flex-1 flex flex-col min-h-0"},ZUn={class:"mb-4 p-4 bg-gray-100 dark:bg-gray-700 rounded-lg"},XUn={class:"flex-1 h-[200px] overflow-y-auto scrollbar scrollbar-thumb-gray-400 dark:scrollbar-thumb-gray-500 scrollbar-track-gray-200 dark:scrollbar-track-gray-700 scrollbar-thin rounded-md"},JUn={class:"text-base whitespace-pre-wrap"},eqn={class:"flex-1 overflow-y-auto"},tqn={class:"space-y-4"},nqn=["for"],rqn=["id","onUpdate:modelValue","placeholder"],iqn=["id","onUpdate:modelValue"],oqn=["id","onUpdate:modelValue"],sqn=["id","onUpdate:modelValue"],aqn={key:4,class:"border rounded-md overflow-hidden"},lqn={class:"bg-gray-200 dark:bg-gray-900 p-2 text-sm"},cqn=["id","onUpdate:modelValue"],uqn=["id","onUpdate:modelValue"],dqn=["value"],Tqn={class:"mt-6 flex justify-end space-x-4"},fqn={key:0,class:"w-full flex flex-row items-center justify-center h-10 mx-auto"},pqn={key:0,class:"relative flex flex-col no-scrollbar shadow-lg w-1/2 bg-bg-light-tone dark:bg-bg-dark-tone h-full"},hqn={ref:"isolatedContent",class:"h-full"},mqn={role:"status",class:"fixed m-0 p-2 left-2 bottom-2 min-w-[24rem] max-w-[24rem] h-20 flex flex-col justify-center items-center pb-4 bg-blue-500 rounded-lg shadow-lg z-50 background-a"},gqn={class:"text-2xl animate-pulse mt-2 text-white"},_qn={id:"app"},Qqn=t=>{const e=t.replace("[","").replace("]","").split("::"),n=e[0];if(e.length===1)return{label:n,type:"text",fullText:t};const o=e[1],r={label:n,type:o,fullText:t};switch(o){case"int":case"float":case"multiline":break;case"code":r.language=e[2]||"plaintext";break;case"options":r.options=e[2]?e[2].split(",").map(i=>i.trim()):[];break;default:r.type="text"}return r},vqn={setup(){},data(){return{interestingFacts:["ParisNeo, the creator of LoLLMs, originally built his high-performance PC to play Cyberpunk 2077. However, his passion for AI took an unexpected turn, leading him to develop LoLLMs instead. Ironically, he never found the time to actually play the game that inspired his powerful setup!","Saïph, version 14 of LoLLMs, is named after a star in Orion's constellation (Kappa Orionis), representing bright guidance in AI!","At 12, ParisNeo coded 'Saif14' in BASIC on a Tandy 1000, an 'all-in-one' suite named with a friend. LoLLMs v14 'Saïph' - a star in Orion - echoes this BASIC creation's spirit and hints at OpenAI's future.",`The new AI Village app in LoLLMs, simulating AI agents believing they're human, mirrors "The Hitchhiker's Guide to the Galaxy" (ParisNeo's favorite) where Earth was a simulation to compute the Ultimate Question. Both explore the idea of unsuspecting inhabitants participating in a grand cosmic calculation!`,'Once upon a time, young ParisNeo dove so deep into "The Matrix" that he watched it 60 times in two months, practically becoming a human DVD player! Fast forward to today, and this same Matrix-obsessed kid grew up to create LoLLMs, where AI personas are like digital kung-fu masters, and users are the chosen ones. Talk about life imitating art - ParisNeo went from "I know kung fu" to "I code AI"! Who knew binge-watching could lead to bending the rules of AI reality?',"Did you know? The first computer programmer was a woman - Ada Lovelace!","Did you know? The term 'bug' in computing came from an actual moth trapped in a computer relay in 1947!","The first computer mouse was made of wood in the 1960s by Doug Engelbart!","The entire Apollo 11 mission that landed humans on the moon used less computing power than today's average smartphone!","Did you know? The first emoji was created in 1999 by Shigetaka Kurita in Japan!","The world's first website, created by Tim Berners-Lee, went live on August 6, 1991, and it's still online today!","Did you know? A neural network once learned to detect tanks in photos by accidentally learning to detect the time of day - all tank photos were taken during daytime!","The first computer virus was created in 1971 and was called 'Creeper'. It simply displayed the message 'I'm the creeper: catch me if you can!'","Did you know? The CAPTCHA system you use to prove you're human actually helps digitize books and improve AI training!","The word 'robot' comes from the Czech word 'robota', meaning forced labor or servitude!","Did you know? The first AI chatbot, ELIZA, was created in 1966 and could convince some people they were talking to a real therapist!","Large Language Models (LLMs) have evolved from having millions of parameters to hundreds of billions in just a few years.","LoLLMs (Lord of Large Language Multimodal Systems) is an open-source AI assistant platform created by ParisNeo.","Saïph (κ Orionis) is a blue-white supergiant star approximately 650 light-years away from Earth.","Neural networks were first proposed in 1943 by Warren McCulloch and Walter Pitts.","Modern LLMs like GPT-4 can understand and generate multiple languages, code, and even analyze images.","LoLLMs supports multiple AI models and can perform tasks like code interpretation, image analysis, and internet searches.","The term 'transformer' in AI, which powers most modern LLMs, was introduced in the 'Attention is All You Need' paper in 2017.","LoLLMs can generate various types of diagrams, including SVG, Graphviz, and Mermaid diagrams.","The Python programming language was named after Monty Python.","LoLLMs features a built-in code interpreter that can execute multiple programming languages.","Quantum computers can perform calculations in minutes that would take classical computers thousands of years.","LoLLMs supports multimodal interactions, allowing users to work with both text and images.","Did you know? Honeybees build their honeycombs in perfect hexagons, the most efficient shape for storing honey!","The ancient Egyptians used a simple rope with 12 knots to create perfect right angles for building pyramids!","Did you know? There's a shape called a 'mobius strip' that has only one side and one edge - try making one with a paper strip!","The sum of angles in any triangle is always 180 degrees, whether it's tiny or huge!","Did you know? A pizza slice demonstrates the mathematical concept of sectors and radians - math you can eat!","The ancient Greeks believed there were only 5 'perfect' 3D shapes, called Platonic solids!","Did you know? Fractals are shapes that repeat infinitely - they're found everywhere in nature, from snowflakes to broccoli!","A circle has an infinite number of lines of symmetry, more than any other shape!","Did you know? The Golden Ratio (approximately 1.618) appears in nature and is considered the most aesthetically pleasing proportion!","The shortest path between two points on a sphere isn't a straight line - it's called a 'great circle' route, used by airlines!","Did you know? The first computer virus wasn't created to cause harm - it was a game called 'Core War' where programs fought for control of the computer's memory!","A single Google search uses more computing power than the entire Apollo space mission!","Did you know? The world's first programmer, Ada Lovelace, wrote an algorithm in 1842 before computers even existed!","The average smartphone today is millions of times more powerful than all of NASA's combined computing power in 1969!","Did you know? The first computer 'bug' was literally a moth trapped in a relay of the Mark II computer in 1947!","Bitcoin's entire source code is shorter than Microsoft Word's printer drivers!","Did you know? The most expensive typing error in history occurred in 1962 when NASA's Mariner 1 spacecraft was destroyed due to a missing hyphen in its code!","The first computer mouse was made of wood and had two wheels instead of a ball or optical sensor!","Did you know? The entire internet weighs about as much as a strawberry - if you were to weigh all its electrons!","The popular programming language Python wasn't named after the snake - it was named after Monty Python's Flying Circus!","Did you know? The first 1GB hard drive released in 1980 weighed about 550 pounds and cost $40,000!","The QWERTY keyboard layout was designed to slow typists down to prevent mechanical typewriters from jamming!","The name Saïph in Arabic (سيف) means 'sword', symbolizing cutting-edge AI technology.",'
',"LoLLMs' version naming often contains clever easter eggs and references to AI advancements.","The 'Strawberry' version of LoLLMs was a playful nod to ChatGPT's internal codename for one of its versions.","The 'Saïph' version name was an intentional reference to Orion, anticipating OpenAI's rumored AGI-capable model codenamed 'Orion'.","LoLLMs' evolution can be traced through its version names: Warp, Starship, Robot, Brainwave, Strawberry, Feather, Saïph, Nexus, Pulsar.","Each LoLLMs version name reflects either technological advancement or pays homage to significant developments in AI.","'Warp' and 'Starship' versions symbolized the quantum leap in AI capabilities and speed improvements.","'Robot' represented the system's growing autonomy and ability to perform complex tasks.","'Brainwave' highlighted the neural network aspects and cognitive capabilities of the system.","LoLLMs' version naming shows ParisNeo's keen awareness of industry trends and playful approach to development.","LoLLMs can generate and visualize mathematical equations using LaTeX, making it a powerful tool for scientific documentation.","The system's multimodel capabilities allow it to analyze medical images, architectural blueprints, and technical diagrams.","LoLLMs includes a unique feature called 'personality system' that allows it to adapt its communication style and expertise.","Did you know? LoLLMs can process and generate music notation using ABC notation or LilyPond formats.","LoLLMs supports over 2000 different AI models, making it one of the most versatile open-source AI platforms.","The system can generate realistic 3D scenes descriptions that can be rendered using tools like Blender.","Did you know? One day on Venus is longer than its year - it takes 243 Earth days to rotate on its axis but only 225 days to orbit the Sun!","The footprints on the Moon will last for 100 million years because there is no wind to blow them away!","Did you know? If you could put Saturn in a giant bathtub, it would float - it's the only planet less dense than water!","The Great Red Spot on Jupiter is a storm that has been raging for at least 400 years!","Did you know? There's a planet made largely of diamonds, called 55 Cancri e - it's worth about $26.9 nonillion!","A day on the International Space Station has 16 sunrises and sunsets because it orbits Earth every 90 minutes!","Did you know? The largest known star, UY Scuti, is so big that it would take 1,700 years to walk around it at walking speed!","There's a cloud of alcohol in space - Sagittarius B2 contains billions of liters of ethyl alcohol!","Did you know? The sound of a black hole is actually a B-flat note, 57 octaves below middle C!","Space isn't completely silent - planets and stars emit electromagnetic vibrations that can be converted into sound!","Did you know? If you cry in space, your tears just stick to your face - they won't fall because there's no gravity!","The entire human race could fit inside a sugar cube if all the empty space in our atoms was removed!","Did you know? The green code in The Matrix isn't actually computer code - it's sushi recipes written in Japanese characters!","The Matrix used approximately 12,000 pounds of concrete to create the iconic lobby scene destruction!","Did you know? Keanu Reeves had to undergo spinal surgery before filming The Matrix Reloaded due to neck injuries from the first movie's stunts!","The famous 'bullet time' effect required 120 cameras shooting simultaneously and took months to create just a few seconds of footage!","Did you know? The actors had to train for 4 months in martial arts, wire work, and fight choreography before filming began!","The color green was deliberately used throughout the movie to create a connection to the old computer monitors of the 1980s!","Did you know? Will Smith turned down the role of Neo to star in Wild Wild West - a decision he later regretted!","The sunglasses worn in The Matrix were custom-made and cost over $2,000 per pair!","Did you know? The scene where Neo sees the cat twice was actually inspired by a programming concept called déjà vu in computer simulation!","The Matrix's original budget was $60 million, but the opening sequence alone cost $10 million to create!","Did you know? The red pill and blue pill were actually made of minted candy to ensure they looked perfect in every take!","The famous dojo fight scene between Neo and Morpheus took 6 days to film and both actors performed most of their own stunts!","LoLLMs features a unique 'model fusion' capability, combining strengths of different AI models for better results.","The platform includes specialized modules for scientific computing, allowing it to solve complex mathematical problems.","LoLLMs can analyze and generate code in over 20 programming languages, including rare ones like COBOL and Fortran.","The system includes advanced prompt engineering tools, helping users get better results from AI models.","LoLLMs can generate and interpret QR codes, making it useful for creating interactive marketing materials.","The platform supports real-time voice interaction through its advanced speech-to-text and text-to-speech capabilities.","LoLLMs can analyze satellite imagery for environmental monitoring and urban planning applications.","The system includes specialized modules for protein folding prediction and molecular visualization.","LoLLMs features a built-in 'ethical AI' framework that ensures responsible and bias-aware AI interactions.","The platform can generate realistic synthetic data while preserving privacy and maintaining statistical properties.","LoLLMs includes advanced natural language processing capabilities in over 100 languages.","The system can perform sentiment analysis on social media trends and customer feedback in real-time.","LoLLMs features a unique 'time-aware' context system that understands and reasons about temporal relationships.","The world's first computer programmer was a woman named Ada Lovelace.","There are more possible iterations of a game of chess than there are atoms in the known universe.","The first AI program was written in 1951 to play checkers.","The Internet was originally called ARPANET and was developed by the US Department of Defense.","The concept of zero as a number was developed in ancient India, with the earliest known text using it dating to 458 CE.","Light from the Sun takes about 8 minutes and 20 seconds to reach Earth.","The first mobile phone call was made in 1973 by Martin Cooper.","The human brain processes images 60,000 times faster than text.","The most powerful supercomputer today can perform about 442 quadrillion calculations per second.","The ancient Egyptians invented the 365-day calendar we still use today.","Mathematicians have calculated pi to over 62 trillion digits.","Quantum computers can theoretically solve certain problems in seconds that would take classical computers billions of years.","The first email was sent in 1971 by Ray Tomlinson.","The Hubble Space Telescope can see galaxies so far away, it's like looking back in time billions of years.","The largest known prime number has over 24 million digits.","AI can now generate realistic images, music, and even write stories.","The Great Wall of China is not visible from space with the naked eye, contrary to popular belief.","There are more possible ways to shuffle a deck of 52 cards than there are atoms on Earth.","The first computer virus was created in 1983 as an experiment.","The speed of light in a vacuum is exactly 299,792,458 meters per second.",`In version 18 (Matrix), the changelog contained a binary secret message from ParisNeo. + Endpoint error: `+o.message,4,!1)}}):this.$store.state.toast.showToast("Personality has no settings",4,!1))})}catch(e){this.$store.state.toast.showToast("Could not open personality settings. Endpoint error: "+e.message,4,!1)}},async constructor(){for(Se(()=>{Ce.replace()});this.$store.state.ready===!1;)await new Promise(t=>setTimeout(t,100));this.onReady()},async api_get_req(t){try{const e=await ce.get("/"+t);if(e)return e.data}catch(e){console.log(e.message,"api_get_req - mountedPersonalities");return}},personalityImgPlacehodler(t){t.target.src=t5}}},eFn={class:"relative group/item"},tFn=["src","alt"],nFn={class:"absolute bottom-6 left-0 w-full flex items-center justify-center opacity-0 group-hover/item:opacity-100 transition-opacity duration-200 p-1"},rFn={class:"p-1 bg-gray-500 rounded-full text-white hover:bg-gray-600 focus:outline-none ml-1",title:"Show more"},iFn={class:"text-xs font-bold"};function oFn(t,e,n,o,r,i){const s=ze("UniversalForm");return N(),H(xe,null,[S("div",eFn,[S("button",{onClick:e[1]||(e[1]=oe((...a)=>i.onSettingsPersonality&&i.onSettingsPersonality(...a),["prevent"])),class:Ee(["w-6 h-6 rounded-full overflow-hidden transition-transform duration-200 transform group-hover/item:scale-110 focus:outline-none relative",{"glow-effect":t.$store.state.config.activate_skills_lib}])},[S("img",{src:i.mountedPers.avatar,onError:e[0]||(e[0]=(...a)=>i.personalityImgPlacehodler&&i.personalityImgPlacehodler(...a)),alt:i.mountedPers.name,class:Ee(["w-full h-full object-cover",{"border-2 border-secondary":t.isActive}])},null,42,tFn)],2),S("div",nFn,[S("button",{onClick:e[2]||(e[2]=oe(a=>i.remount_personality(),["prevent"])),class:"p-1 bg-blue-500 rounded-full text-white hover:bg-blue-600 focus:outline-none",title:"Remount"},e[4]||(e[4]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1)])),S("button",{onClick:e[3]||(e[3]=oe(a=>i.handleOnTalk(),["prevent"])),class:"p-1 bg-green-500 rounded-full text-white hover:bg-green-600 focus:outline-none ml-1",title:"Talk"},e[5]||(e[5]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 10h.01M12 10h.01M16 10h.01M9 16H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-5l-5 5v-5z"})],-1)])),S("button",rFn,[S("span",iFn,"+"+J(i.mountedPersArr.length-1),1)])])]),ne(s,{ref:"universalForm",class:"z-50"},null,512)],64)}const Xk=Ye(JBn,[["render",oFn],["__scopeId","data-v-70cef6eb"]]),sFn={name:"ChangelogPopup",data(){return{showChangelogPopup:!1,changelogContent:"",currentVersion:"0.0.0"}},computed:{parsedChangelogContent(){const t={breaks:!0,gfm:!0},e=Et(this.changelogContent,t);return Rc.sanitize(e)}},async mounted(){await this.checkChangelogUpdate()},methods:{async fetchVersion(){try{const t=await ce.get("/get_lollms_webui_version");if(t&&t.data){const{version_main:e,version_secondary:n,version_type:o,version_codename:r}=t.data;let i=`${e}.${n}`;return o&&(i+=` ${o}`),r&&(i+=` (${r})`),this.$store.commit("setVersion",i),this.currentVersion=i,i}}catch(t){console.error("Error fetching LoLLMs version:",t)}return this.$store.state.version||"0.0.0"},async checkChangelogUpdate(){try{const t=await ce.get("/get_changelog");this.changelogContent=t.data||"*No changelog content found.*";const e=await this.fetchVersion(),o=(await ce.get("/get_last_viewed_changelog_version")).data,r=i=>{i&&i.app_show_changelogs&&e!==o&&e!=="0.0.0"&&(this.showChangelogPopup=!0)};if(this.$store.state.config)r(this.$store.state.config);else{const i=this.$watch("$store.state.config",s=>{s&&(r(s),i())},{immediate:!1})}}catch(t){console.error("Error checking changelog:",t)}},async handleUnderstand(){try{await ce.post("/set_last_viewed_changelog_version",{client_id:this.$store.state.client_id,version:this.currentVersion}),this.closePopup()}catch(t){console.error("Error setting last viewed changelog version:",t),this.closePopup()}},closePopup(){this.showChangelogPopup=!1}}},aFn={class:"flex justify-between items-center p-4 px-6 border-b border-blue-300 dark:border-blue-600 flex-shrink-0 unicolor-panels-color"},lFn={class:"p-6 md:p-8 flex-grow overflow-y-auto scrollbar text-blue-900 dark:text-blue-200"},cFn=["innerHTML"],uFn={class:"flex justify-end p-4 px-6 border-t border-blue-300 dark:border-blue-600 flex-shrink-0 unicolor-panels-color"};function dFn(t,e,n,o,r,i){return N(),ot(Nr,{name:"fade"},{default:Ge(()=>[r.showChangelogPopup?(N(),H("div",{key:0,class:Ee(["fixed inset-0 bg-black/60 backdrop-blur-sm flex items-center justify-center z-[100] transition-opacity duration-300",{"opacity-0 pointer-events-none":!r.showChangelogPopup,"opacity-100":r.showChangelogPopup}])},[S("div",{class:Ee(["panels-color rounded-lg w-[95%] max-w-4xl max-h-[90vh] flex flex-col shadow-2xl overflow-hidden transform transition-all duration-300 ease-out border border-blue-300 dark:border-blue-600",{"opacity-0 scale-95":!r.showChangelogPopup,"opacity-100 scale-100":r.showChangelogPopup}])},[S("div",aFn,[e[3]||(e[3]=S("h2",{class:"text-xl font-semibold text-blue-800 dark:text-blue-100"},"What's New",-1)),S("button",{class:"svg-button",onClick:e[0]||(e[0]=(...s)=>i.closePopup&&i.closePopup(...s)),"aria-label":"Close Changelog"},e[2]||(e[2]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)]))]),S("div",lFn,[S("div",{class:"prose prose-blue dark:prose-invert max-w-none",innerHTML:i.parsedChangelogContent},null,8,cFn)]),S("div",uFn,[S("button",{class:"btn btn-primary",onClick:e[1]||(e[1]=(...s)=>i.handleUnderstand&&i.handleUnderstand(...s))}," Got it ")])],2)],2)):Z("",!0)]),_:1})}const Jk=Ye(sFn,[["render",dFn],["__scopeId","data-v-6f262cbb"]]),TFn={key:0,class:"fixed inset-0 z-50 flex items-center justify-center overflow-hidden theme-bg-primary theme-text-primary"},fFn={key:0,class:"absolute inset-0 pointer-events-none overflow-hidden opacity-70"},pFn={class:"relative z-10 flex w-full max-w-4xl flex-col items-center px-6 text-center"},hFn={class:"mb-10 w-full"},mFn={class:"lollms-title-style mb-3 text-5xl font-extrabold tracking-tight drop-shadow-md md:text-7xl transition-transform duration-300 hover:scale-[1.03] theme-text-title"},gFn={class:"text-xl italic md:text-2xl theme-text-secondary"},_Fn={key:0,class:"mt-4 text-base theme-text-muted"},QFn={class:"mt-1 text-sm theme-text-muted"},vFn={class:"text-base theme-text-card-body"},yFn=["innerHTML"],bFn={class:"w-full max-w-lg"},EFn={class:"mb-3 h-3 w-full overflow-hidden rounded-full shadow-inner animated-progressbar-bg"},SFn={role:"status",class:"w-full"},xFn={class:"text-2xl font-semibold theme-text-primary"},LFn={key:0,class:"relative flex flex-col no-scrollbar shadow-lg w-[16rem]"},CFn={class:"logo-container"},AFn=["src","title"],wFn={class:"flex flex-col justify-center"},OFn={class:"text-center p-2"},MFn={class:"text-md relative inline-block"},RFn={class:"relative inline-block font-bold tracking-wide text-black dark:text-white"},NFn={class:"text-gray-400 text-sm"},DFn={class:"toolbar discussion"},IFn={class:"toolbar-container"},kFn={class:"p-4 flex flex-wrap gap-2 items-center"},HFn={class:"p-4 flex flex-wrap gap-2 items-center"},PFn={class:"relative"},$Fn={class:"relative"},VFn={key:0,title:"Loading..",class:"flex justify-center"},BFn={key:1,class:"flex justify-center space-x-4"},FFn={key:2,class:"flex flex-col space-y-2"},UFn={class:"relative inline-block"},qFn={class:"p-2 border-b border-gray-200 dark:border-gray-700"},GFn={class:"p-4 grid grid-cols-3 gap-4 max-h-80 overflow-y-auto custom-scrollbar"},jFn={class:"flex flex-col items-center hover:bg-blue-100 dark:hover:bg-blue-900 p-2 rounded-md w-full cursor-pointer"},zFn=["onClick","title"],YFn=["src","alt"],WFn=["title"],KFn={class:"absolute top-0 left-0 w-full h-full opacity-0 group-hover/item:opacity-100 transition-opacity duration-200 bg-white dark:bg-gray-900 rounded-md shadow-md p-2 flex flex-col items-center justify-center"},ZFn=["onClick"],XFn={class:"flex space-x-1"},JFn=["onClick"],eUn=["src","title"],tUn={class:"relative inline-block"},nUn={class:"p-2 border-b border-gray-200 dark:border-gray-700"},rUn={class:"p-4 grid grid-cols-3 gap-4 max-h-80 overflow-y-auto custom-scrollbar"},iUn={class:"flex flex-col items-center hover:bg-blue-100 dark:hover:bg-blue-900 p-2 rounded-md w-full cursor-pointer"},oUn=["onClick","title"],sUn=["src","alt"],aUn=["title"],lUn={class:"absolute top-0 left-0 w-full h-full opacity-0 group-hover/item:opacity-100 transition-opacity duration-200 bg-white dark:bg-gray-900 rounded-md shadow-md p-2 flex flex-col items-center justify-center"},cUn=["onClick"],uUn={class:"flex space-x-1"},dUn=["onClick"],TUn=["src","title"],fUn={class:"relative inline-block"},pUn={class:"p-2 border-b border-gray-200 dark:border-gray-700"},hUn={class:"p-4 grid grid-cols-3 gap-4 max-h-80 overflow-y-auto custom-scrollbar"},mUn={class:"flex flex-col items-center hover:bg-blue-100 dark:hover:bg-blue-900 p-2 rounded-md w-full cursor-pointer"},gUn=["onClick","title"],_Un=["src","alt"],QUn=["title"],vUn={class:"absolute top-0 left-0 w-full h-full opacity-0 group-hover/item:opacity-100 transition-opacity duration-200 bg-white dark:bg-gray-900 rounded-md shadow-md p-2 flex flex-col items-center justify-center"},yUn=["onClick"],bUn={class:"flex space-x-1"},EUn=["onClick"],SUn=["onClick"],xUn=["onClick"],LUn={class:"personalities-container"},CUn={class:"w-auto max-w-md mx-auto p-2"},AUn={class:"flex items-center"},wUn={class:"relative flex-grow"},OUn={key:0,class:"w-full p-4 bg-bg-light dark:bg-bg-dark"},MUn={class:"flex flex-col space-y-2"},RUn={key:0},NUn={key:1,class:"flex space-x-2"},DUn={key:1,class:"flex space-x-2"},IUn={class:"flex space-x-2"},kUn={class:"relative flex flex-row flex-grow mb-10 z-0 w-full"},HUn={key:1,class:"gap-2 py-2 my-2 hover:shadow-md hover:bg-primary-light dark:hover:bg-primary rounded-md p-2 duration-75 group cursor-pointer"},PUn={class:"flex flex-row items-center justify-center panels-color"},$Un={class:"text-center font-large font-bold text-l drop-shadow-md align-middle"},VUn={key:0,class:"relative flex flex-col flex-grow"},BUn={class:"container pt-4 pb-50 mb-50 w-full"},FUn={key:0,class:"w-full rounded-lg m-2 shadow-lg hover:border-primary dark:hover:border-primary hover:border-solid hover:border-2 border-2 border-transparent even:bg-bg-light-discussion-odd dark:even:bg-bg-dark-discussion-odd flex flex-col overflow-hidden p-4 pb-2"},UUn={class:"overflow-x-auto flex-grow scrollbar-thin scrollbar-thumb-gray-400 dark:scrollbar-thumb-gray-600 scrollbar-track-gray-200 dark:scrollbar-track-gray-800 scrollbar-thumb-rounded-full scrollbar-track-rounded-full"},qUn={class:"flex flex-nowrap gap-6 p-4 min-w-full"},GUn=["title","onClick"],jUn={class:"space-y-3"},zUn=["title"],YUn=["title"],WUn={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},KUn={class:"bg-white dark:bg-gray-800 p-6 rounded-lg shadow-xl max-w-4xl w-full max-h-[90vh] flex flex-col"},ZUn={class:"flex-1 flex flex-col min-h-0"},XUn={class:"mb-4 p-4 bg-gray-100 dark:bg-gray-700 rounded-lg"},JUn={class:"flex-1 h-[200px] overflow-y-auto scrollbar scrollbar-thumb-gray-400 dark:scrollbar-thumb-gray-500 scrollbar-track-gray-200 dark:scrollbar-track-gray-700 scrollbar-thin rounded-md"},eqn={class:"text-base whitespace-pre-wrap"},tqn={class:"flex-1 overflow-y-auto"},nqn={class:"space-y-4"},rqn=["for"],iqn=["id","onUpdate:modelValue","placeholder"],oqn=["id","onUpdate:modelValue"],sqn=["id","onUpdate:modelValue"],aqn=["id","onUpdate:modelValue"],lqn={key:4,class:"border rounded-md overflow-hidden"},cqn={class:"bg-gray-200 dark:bg-gray-900 p-2 text-sm"},uqn=["id","onUpdate:modelValue"],dqn=["id","onUpdate:modelValue"],Tqn=["value"],fqn={class:"mt-6 flex justify-end space-x-4"},pqn={key:0,class:"w-full flex flex-row items-center justify-center h-10 mx-auto"},hqn={key:0,class:"relative flex flex-col no-scrollbar shadow-lg w-1/2 bg-bg-light-tone dark:bg-bg-dark-tone h-full"},mqn={ref:"isolatedContent",class:"h-full"},gqn={role:"status",class:"fixed m-0 p-2 left-2 bottom-2 min-w-[24rem] max-w-[24rem] h-20 flex flex-col justify-center items-center pb-4 bg-blue-500 rounded-lg shadow-lg z-50 background-a"},_qn={class:"text-2xl animate-pulse mt-2 text-white"},Qqn={id:"app"},vqn=t=>{const e=t.replace("[","").replace("]","").split("::"),n=e[0];if(e.length===1)return{label:n,type:"text",fullText:t};const o=e[1],r={label:n,type:o,fullText:t};switch(o){case"int":case"float":case"multiline":break;case"code":r.language=e[2]||"plaintext";break;case"options":r.options=e[2]?e[2].split(",").map(i=>i.trim()):[];break;default:r.type="text"}return r},yqn={setup(){},data(){return{interestingFacts:["ParisNeo, the creator of LoLLMs, originally built his high-performance PC to play Cyberpunk 2077. However, his passion for AI took an unexpected turn, leading him to develop LoLLMs instead. Ironically, he never found the time to actually play the game that inspired his powerful setup!","Saïph, version 14 of LoLLMs, is named after a star in Orion's constellation (Kappa Orionis), representing bright guidance in AI!","At 12, ParisNeo coded 'Saif14' in BASIC on a Tandy 1000, an 'all-in-one' suite named with a friend. LoLLMs v14 'Saïph' - a star in Orion - echoes this BASIC creation's spirit and hints at OpenAI's future.",`The new AI Village app in LoLLMs, simulating AI agents believing they're human, mirrors "The Hitchhiker's Guide to the Galaxy" (ParisNeo's favorite) where Earth was a simulation to compute the Ultimate Question. Both explore the idea of unsuspecting inhabitants participating in a grand cosmic calculation!`,'Once upon a time, young ParisNeo dove so deep into "The Matrix" that he watched it 60 times in two months, practically becoming a human DVD player! Fast forward to today, and this same Matrix-obsessed kid grew up to create LoLLMs, where AI personas are like digital kung-fu masters, and users are the chosen ones. Talk about life imitating art - ParisNeo went from "I know kung fu" to "I code AI"! Who knew binge-watching could lead to bending the rules of AI reality?',"Did you know? The first computer programmer was a woman - Ada Lovelace!","Did you know? The term 'bug' in computing came from an actual moth trapped in a computer relay in 1947!","The first computer mouse was made of wood in the 1960s by Doug Engelbart!","The entire Apollo 11 mission that landed humans on the moon used less computing power than today's average smartphone!","Did you know? The first emoji was created in 1999 by Shigetaka Kurita in Japan!","The world's first website, created by Tim Berners-Lee, went live on August 6, 1991, and it's still online today!","Did you know? A neural network once learned to detect tanks in photos by accidentally learning to detect the time of day - all tank photos were taken during daytime!","The first computer virus was created in 1971 and was called 'Creeper'. It simply displayed the message 'I'm the creeper: catch me if you can!'","Did you know? The CAPTCHA system you use to prove you're human actually helps digitize books and improve AI training!","The word 'robot' comes from the Czech word 'robota', meaning forced labor or servitude!","Did you know? The first AI chatbot, ELIZA, was created in 1966 and could convince some people they were talking to a real therapist!","Large Language Models (LLMs) have evolved from having millions of parameters to hundreds of billions in just a few years.","LoLLMs (Lord of Large Language Multimodal Systems) is an open-source AI assistant platform created by ParisNeo.","Saïph (κ Orionis) is a blue-white supergiant star approximately 650 light-years away from Earth.","Neural networks were first proposed in 1943 by Warren McCulloch and Walter Pitts.","Modern LLMs like GPT-4 can understand and generate multiple languages, code, and even analyze images.","LoLLMs supports multiple AI models and can perform tasks like code interpretation, image analysis, and internet searches.","The term 'transformer' in AI, which powers most modern LLMs, was introduced in the 'Attention is All You Need' paper in 2017.","LoLLMs can generate various types of diagrams, including SVG, Graphviz, and Mermaid diagrams.","The Python programming language was named after Monty Python.","LoLLMs features a built-in code interpreter that can execute multiple programming languages.","Quantum computers can perform calculations in minutes that would take classical computers thousands of years.","LoLLMs supports multimodal interactions, allowing users to work with both text and images.","Did you know? Honeybees build their honeycombs in perfect hexagons, the most efficient shape for storing honey!","The ancient Egyptians used a simple rope with 12 knots to create perfect right angles for building pyramids!","Did you know? There's a shape called a 'mobius strip' that has only one side and one edge - try making one with a paper strip!","The sum of angles in any triangle is always 180 degrees, whether it's tiny or huge!","Did you know? A pizza slice demonstrates the mathematical concept of sectors and radians - math you can eat!","The ancient Greeks believed there were only 5 'perfect' 3D shapes, called Platonic solids!","Did you know? Fractals are shapes that repeat infinitely - they're found everywhere in nature, from snowflakes to broccoli!","A circle has an infinite number of lines of symmetry, more than any other shape!","Did you know? The Golden Ratio (approximately 1.618) appears in nature and is considered the most aesthetically pleasing proportion!","The shortest path between two points on a sphere isn't a straight line - it's called a 'great circle' route, used by airlines!","Did you know? The first computer virus wasn't created to cause harm - it was a game called 'Core War' where programs fought for control of the computer's memory!","A single Google search uses more computing power than the entire Apollo space mission!","Did you know? The world's first programmer, Ada Lovelace, wrote an algorithm in 1842 before computers even existed!","The average smartphone today is millions of times more powerful than all of NASA's combined computing power in 1969!","Did you know? The first computer 'bug' was literally a moth trapped in a relay of the Mark II computer in 1947!","Bitcoin's entire source code is shorter than Microsoft Word's printer drivers!","Did you know? The most expensive typing error in history occurred in 1962 when NASA's Mariner 1 spacecraft was destroyed due to a missing hyphen in its code!","The first computer mouse was made of wood and had two wheels instead of a ball or optical sensor!","Did you know? The entire internet weighs about as much as a strawberry - if you were to weigh all its electrons!","The popular programming language Python wasn't named after the snake - it was named after Monty Python's Flying Circus!","Did you know? The first 1GB hard drive released in 1980 weighed about 550 pounds and cost $40,000!","The QWERTY keyboard layout was designed to slow typists down to prevent mechanical typewriters from jamming!","The name Saïph in Arabic (سيف) means 'sword', symbolizing cutting-edge AI technology.",'
',"LoLLMs' version naming often contains clever easter eggs and references to AI advancements.","The 'Strawberry' version of LoLLMs was a playful nod to ChatGPT's internal codename for one of its versions.","The 'Saïph' version name was an intentional reference to Orion, anticipating OpenAI's rumored AGI-capable model codenamed 'Orion'.","LoLLMs' evolution can be traced through its version names: Warp, Starship, Robot, Brainwave, Strawberry, Feather, Saïph, Nexus, Pulsar.","Each LoLLMs version name reflects either technological advancement or pays homage to significant developments in AI.","'Warp' and 'Starship' versions symbolized the quantum leap in AI capabilities and speed improvements.","'Robot' represented the system's growing autonomy and ability to perform complex tasks.","'Brainwave' highlighted the neural network aspects and cognitive capabilities of the system.","LoLLMs' version naming shows ParisNeo's keen awareness of industry trends and playful approach to development.","LoLLMs can generate and visualize mathematical equations using LaTeX, making it a powerful tool for scientific documentation.","The system's multimodel capabilities allow it to analyze medical images, architectural blueprints, and technical diagrams.","LoLLMs includes a unique feature called 'personality system' that allows it to adapt its communication style and expertise.","Did you know? LoLLMs can process and generate music notation using ABC notation or LilyPond formats.","LoLLMs supports over 2000 different AI models, making it one of the most versatile open-source AI platforms.","The system can generate realistic 3D scenes descriptions that can be rendered using tools like Blender.","Did you know? One day on Venus is longer than its year - it takes 243 Earth days to rotate on its axis but only 225 days to orbit the Sun!","The footprints on the Moon will last for 100 million years because there is no wind to blow them away!","Did you know? If you could put Saturn in a giant bathtub, it would float - it's the only planet less dense than water!","The Great Red Spot on Jupiter is a storm that has been raging for at least 400 years!","Did you know? There's a planet made largely of diamonds, called 55 Cancri e - it's worth about $26.9 nonillion!","A day on the International Space Station has 16 sunrises and sunsets because it orbits Earth every 90 minutes!","Did you know? The largest known star, UY Scuti, is so big that it would take 1,700 years to walk around it at walking speed!","There's a cloud of alcohol in space - Sagittarius B2 contains billions of liters of ethyl alcohol!","Did you know? The sound of a black hole is actually a B-flat note, 57 octaves below middle C!","Space isn't completely silent - planets and stars emit electromagnetic vibrations that can be converted into sound!","Did you know? If you cry in space, your tears just stick to your face - they won't fall because there's no gravity!","The entire human race could fit inside a sugar cube if all the empty space in our atoms was removed!","Did you know? The green code in The Matrix isn't actually computer code - it's sushi recipes written in Japanese characters!","The Matrix used approximately 12,000 pounds of concrete to create the iconic lobby scene destruction!","Did you know? Keanu Reeves had to undergo spinal surgery before filming The Matrix Reloaded due to neck injuries from the first movie's stunts!","The famous 'bullet time' effect required 120 cameras shooting simultaneously and took months to create just a few seconds of footage!","Did you know? The actors had to train for 4 months in martial arts, wire work, and fight choreography before filming began!","The color green was deliberately used throughout the movie to create a connection to the old computer monitors of the 1980s!","Did you know? Will Smith turned down the role of Neo to star in Wild Wild West - a decision he later regretted!","The sunglasses worn in The Matrix were custom-made and cost over $2,000 per pair!","Did you know? The scene where Neo sees the cat twice was actually inspired by a programming concept called déjà vu in computer simulation!","The Matrix's original budget was $60 million, but the opening sequence alone cost $10 million to create!","Did you know? The red pill and blue pill were actually made of minted candy to ensure they looked perfect in every take!","The famous dojo fight scene between Neo and Morpheus took 6 days to film and both actors performed most of their own stunts!","LoLLMs features a unique 'model fusion' capability, combining strengths of different AI models for better results.","The platform includes specialized modules for scientific computing, allowing it to solve complex mathematical problems.","LoLLMs can analyze and generate code in over 20 programming languages, including rare ones like COBOL and Fortran.","The system includes advanced prompt engineering tools, helping users get better results from AI models.","LoLLMs can generate and interpret QR codes, making it useful for creating interactive marketing materials.","The platform supports real-time voice interaction through its advanced speech-to-text and text-to-speech capabilities.","LoLLMs can analyze satellite imagery for environmental monitoring and urban planning applications.","The system includes specialized modules for protein folding prediction and molecular visualization.","LoLLMs features a built-in 'ethical AI' framework that ensures responsible and bias-aware AI interactions.","The platform can generate realistic synthetic data while preserving privacy and maintaining statistical properties.","LoLLMs includes advanced natural language processing capabilities in over 100 languages.","The system can perform sentiment analysis on social media trends and customer feedback in real-time.","LoLLMs features a unique 'time-aware' context system that understands and reasons about temporal relationships.","The world's first computer programmer was a woman named Ada Lovelace.","There are more possible iterations of a game of chess than there are atoms in the known universe.","The first AI program was written in 1951 to play checkers.","The Internet was originally called ARPANET and was developed by the US Department of Defense.","The concept of zero as a number was developed in ancient India, with the earliest known text using it dating to 458 CE.","Light from the Sun takes about 8 minutes and 20 seconds to reach Earth.","The first mobile phone call was made in 1973 by Martin Cooper.","The human brain processes images 60,000 times faster than text.","The most powerful supercomputer today can perform about 442 quadrillion calculations per second.","The ancient Egyptians invented the 365-day calendar we still use today.","Mathematicians have calculated pi to over 62 trillion digits.","Quantum computers can theoretically solve certain problems in seconds that would take classical computers billions of years.","The first email was sent in 1971 by Ray Tomlinson.","The Hubble Space Telescope can see galaxies so far away, it's like looking back in time billions of years.","The largest known prime number has over 24 million digits.","AI can now generate realistic images, music, and even write stories.","The Great Wall of China is not visible from space with the naked eye, contrary to popular belief.","There are more possible ways to shuffle a deck of 52 cards than there are atoms on Earth.","The first computer virus was created in 1983 as an experiment.","The speed of light in a vacuum is exactly 299,792,458 meters per second.",`In version 18 (Matrix), the changelog contained a binary secret message from ParisNeo. Did you get it? -It meant THERE IS NO SPOON, the matirx's famous scene.`,"ParisNeo started coding at age 11 after an older programmer refused to teach him BASIC programming","ParisNeo learned BASIC by reverse engineering other people's games, even before he learned English","At age 12, ParisNeo co-created SAIF14, a suite of programs on a Tandy 1000 computer built by two kids","LoLLMs runs on a custom-built gaming PC that ParisNeo assembled and configured himself","The project started as a simple Chrome plugin called 'chatgpt personality selector'","ParisNeo's summer bet involved watching The Matrix 60 times in one month (twice daily) while his uncle gave up","The name LoLLMs was inspired by 'Lord of the Rings', positioning itself as 'one tool to rule them all'","LoLLMs has a 'Personalities Zoo' with over 500 different AI personas","The project evolved from handling just language models to becoming a multimodal system, hence the 'M' in LoLLMs","ParisNeo's difficulty with academic writing led him to develop AI solutions for writing assistance","LoLLMs' development was influenced by science fiction concepts from Wall-E, Terminator, and The Hitchhiker's Guide to the Galaxy","The project went from being 'GPT4All WebUI' to 'Lord of Large Language Models' before becoming 'Lord of Large Language & Multimodal Systems'","ParisNeo received early access to GPT-3 and used it to push the boundaries of what was possible with AI","The project maintains a philosophy of 'Don't panic, bring a towel, and trust in AI' - a reference to The Hitchhiker's Guide to the Galaxy","Despite having multiple patents in various fields, ParisNeo's interest in AI was sparked when he read about AlexNet in 2012","LoLLMs receives daily updates, similar to course corrections on a starship","Fun Fact: Neo's apartment number 101 in The Matrix is a brilliant multi-layered reference! In binary, 101 equals 5, representing someone who stands 'apart' from the zeros and ones of the Matrix. But there's more - Room 101 is also famous from Orwell's '1984' as the room containing 'the worst thing in the world.' For Neo, his apartment 101 was indeed where he faced his worst fear: discovering his entire reality was a lie. ParisNeo slyly references this in LoLLMs v18 by making '101' a special command that reveals the system's true capabilities!","ParisNeo's journey into programming shows his determination - he taught himself BASIC by reverse engineering games before he even knew English","Version 17 of LoLLMs, nicknamed 'Pulsar', draws inspiration from the most precise natural clocks in the universe - pulsating neutron stars. Just as pulsars emit precise, regular signals that help navigate spacecraft, LoLLMs Pulsar orchestrates precise communication between different AI systems. The version number 17 wasn't just sequential - pulsars rotate up to 1.7 thousand times per second, making '17' a cosmic nod to these incredible stellar lighthouses of space!","Version 18 'Matrix' of LoLLMs is a delightful nod to ParisNeo's teenage obsession with The Matrix movie - talk about coming full circle from watching the film 60 times to creating an AI system that lets users 'bend the rules' of reality!","Did you know? The '18' in LoLLMs v18 'Matrix' has a hidden meaning - the '1' represents The One (like Neo), while the '8' represents infinity (∞) when turned sideways. Just as Neo broke free from the infinite cycle of the Matrix, LoLLMs v18 breaks traditional AI limitations!","LoLLMs v18 Matrix introduces a groundbreaking feature called 'Digital Twins' - multiple AI personas that can interact with each other, much like the multiplying Agent Smith in The Matrix Reloaded. Life imitating art at its finest!","When ParisNeo announced version 18 'Matrix', he included a hidden binary message in the release notes that, when decoded, read 'There is no spoon' - a playful reference to both The Matrix and the flexible nature of AI reality.","The Matrix version introduced 'Morpheus Mode' - an advanced teaching capability that guides users through complex AI concepts, just like Morpheus guided Neo through the nature of the Matrix. 'Unfortunately, no one can be told what LoLLMs is. You have to experience it for yourself.'","In a cheeky nod to The Matrix's famous green code rain, LoLLMs v18 includes an easter egg where typing 'follow the white rabbit' triggers a special visualization mode for code generation.","While previous versions were inspired by celestial bodies (like Saïph and Pulsar), Matrix marks LoLLMs' first version named after a simulation concept - reflecting the growing capabilities of AI to create and manage virtual worlds.","The development of Matrix version started exactly 18 years after ParisNeo's infamous Matrix-watching marathon, making this version a personal milestone in his journey from movie fan to AI innovator.","In the Matrix version's documentation, ParisNeo included a special section titled 'What is the Matrix?' that explains complex AI concepts using analogies from the movie, making advanced technology accessible to everyone - just like Morpheus did for Neo!","Did you know? Chuck Norris counted to infinity... twice!","When Chuck Norris does pushups, he doesn't push himself up - he pushes the Earth down!","Did you know? Chuck Norris's tears can cure cancer... too bad he has never cried!","Chuck Norris has a grizzly bear carpet in his room. The bear isn't dead, it's just afraid to move!","Did you know? Chuck Norris was actually born in Ryan, Oklahoma, and his real name is Carlos Ray Norris!","When Chuck Norris enters a room, he doesn't turn the lights on - he turns the dark off!","Did you know? Chuck Norris is the only person who can slam a revolving door!","Chuck Norris doesn't wear a watch. He decides what time it is!","Did you know? Chuck Norris actually served in the United States Air Force as an Air Policeman in South Korea!","When the Boogeyman goes to sleep every night, he checks his closet for Chuck Norris!","Did you know? Chuck Norris holds the record for the most consecutive push-ups without rest at 5,000!","Time waits for no man. Unless that man is Chuck Norris!"],currentVersion:null,showChangelogPopup:!1,randomFact:"",showPlaceholderModal:!1,selectedPrompt:"",placeholders:[],placeholderValues:{},previewPrompt:"",uniquePlaceholders:new Map,bindingSearchQuery:"",modelSearchQuery:"",personalitySearchQuery:"",isSearching:!1,isPersonalitiesMenuVisible:!1,isSkillsLibraryMenuVisible:!1,isModelsMenuVisible:!1,isBindingsMenuVisible:!1,isMenuVisible:!1,isNavMenuVisible:!1,static_info:FBn,animated_info:UBn,normal_mode:GBn,fun_mode:qBn,is_first_connection:!0,discord:BBn,FastAPI:VBn,modelImgPlaceholder:Y1,personalityImgPlacehodler:Y1,customLanguage:"",rebooting_audio:new Audio("rebooting.wav"),connection_lost_audio:new Audio("connection_lost.wav"),connection_recovered_audio:new Audio("connection_recovered.wav"),database_selectorDialogVisible:!1,progress_visibility:!1,progress_value:0,codeBlockStylesheet:"",lastMessageHtml:"",defaultMessageHtml:` +It meant THERE IS NO SPOON, the matirx's famous scene.`,"ParisNeo started coding at age 11 after an older programmer refused to teach him BASIC programming","ParisNeo learned BASIC by reverse engineering other people's games, even before he learned English","At age 12, ParisNeo co-created SAIF14, a suite of programs on a Tandy 1000 computer built by two kids","LoLLMs runs on a custom-built gaming PC that ParisNeo assembled and configured himself","The project started as a simple Chrome plugin called 'chatgpt personality selector'","ParisNeo's summer bet involved watching The Matrix 60 times in one month (twice daily) while his uncle gave up","The name LoLLMs was inspired by 'Lord of the Rings', positioning itself as 'one tool to rule them all'","LoLLMs has a 'Personalities Zoo' with over 500 different AI personas","The project evolved from handling just language models to becoming a multimodal system, hence the 'M' in LoLLMs","ParisNeo's difficulty with academic writing led him to develop AI solutions for writing assistance","LoLLMs' development was influenced by science fiction concepts from Wall-E, Terminator, and The Hitchhiker's Guide to the Galaxy","The project went from being 'GPT4All WebUI' to 'Lord of Large Language Models' before becoming 'Lord of Large Language & Multimodal Systems'","ParisNeo received early access to GPT-3 and used it to push the boundaries of what was possible with AI","The project maintains a philosophy of 'Don't panic, bring a towel, and trust in AI' - a reference to The Hitchhiker's Guide to the Galaxy","Despite having multiple patents in various fields, ParisNeo's interest in AI was sparked when he read about AlexNet in 2012","LoLLMs receives daily updates, similar to course corrections on a starship","Fun Fact: Neo's apartment number 101 in The Matrix is a brilliant multi-layered reference! In binary, 101 equals 5, representing someone who stands 'apart' from the zeros and ones of the Matrix. But there's more - Room 101 is also famous from Orwell's '1984' as the room containing 'the worst thing in the world.' For Neo, his apartment 101 was indeed where he faced his worst fear: discovering his entire reality was a lie. ParisNeo slyly references this in LoLLMs v18 by making '101' a special command that reveals the system's true capabilities!","ParisNeo's journey into programming shows his determination - he taught himself BASIC by reverse engineering games before he even knew English","Version 17 of LoLLMs, nicknamed 'Pulsar', draws inspiration from the most precise natural clocks in the universe - pulsating neutron stars. Just as pulsars emit precise, regular signals that help navigate spacecraft, LoLLMs Pulsar orchestrates precise communication between different AI systems. The version number 17 wasn't just sequential - pulsars rotate up to 1.7 thousand times per second, making '17' a cosmic nod to these incredible stellar lighthouses of space!","Version 18 'Matrix' of LoLLMs is a delightful nod to ParisNeo's teenage obsession with The Matrix movie - talk about coming full circle from watching the film 60 times to creating an AI system that lets users 'bend the rules' of reality!","Did you know? The '18' in LoLLMs v18 'Matrix' has a hidden meaning - the '1' represents The One (like Neo), while the '8' represents infinity (∞) when turned sideways. Just as Neo broke free from the infinite cycle of the Matrix, LoLLMs v18 breaks traditional AI limitations!","LoLLMs v18 Matrix introduces a groundbreaking feature called 'Digital Twins' - multiple AI personas that can interact with each other, much like the multiplying Agent Smith in The Matrix Reloaded. Life imitating art at its finest!","When ParisNeo announced version 18 'Matrix', he included a hidden binary message in the release notes that, when decoded, read 'There is no spoon' - a playful reference to both The Matrix and the flexible nature of AI reality.","The Matrix version introduced 'Morpheus Mode' - an advanced teaching capability that guides users through complex AI concepts, just like Morpheus guided Neo through the nature of the Matrix. 'Unfortunately, no one can be told what LoLLMs is. You have to experience it for yourself.'","In a cheeky nod to The Matrix's famous green code rain, LoLLMs v18 includes an easter egg where typing 'follow the white rabbit' triggers a special visualization mode for code generation.","While previous versions were inspired by celestial bodies (like Saïph and Pulsar), Matrix marks LoLLMs' first version named after a simulation concept - reflecting the growing capabilities of AI to create and manage virtual worlds.","The development of Matrix version started exactly 18 years after ParisNeo's infamous Matrix-watching marathon, making this version a personal milestone in his journey from movie fan to AI innovator.","In the Matrix version's documentation, ParisNeo included a special section titled 'What is the Matrix?' that explains complex AI concepts using analogies from the movie, making advanced technology accessible to everyone - just like Morpheus did for Neo!","Did you know? Chuck Norris counted to infinity... twice!","When Chuck Norris does pushups, he doesn't push himself up - he pushes the Earth down!","Did you know? Chuck Norris's tears can cure cancer... too bad he has never cried!","Chuck Norris has a grizzly bear carpet in his room. The bear isn't dead, it's just afraid to move!","Did you know? Chuck Norris was actually born in Ryan, Oklahoma, and his real name is Carlos Ray Norris!","When Chuck Norris enters a room, he doesn't turn the lights on - he turns the dark off!","Did you know? Chuck Norris is the only person who can slam a revolving door!","Chuck Norris doesn't wear a watch. He decides what time it is!","Did you know? Chuck Norris actually served in the United States Air Force as an Air Policeman in South Korea!","When the Boogeyman goes to sleep every night, he checks his closet for Chuck Norris!","Did you know? Chuck Norris holds the record for the most consecutive push-ups without rest at 5,000!","Time waits for no man. Unless that man is Chuck Norris!"],currentVersion:null,showChangelogPopup:!1,randomFact:"",showPlaceholderModal:!1,selectedPrompt:"",placeholders:[],placeholderValues:{},previewPrompt:"",uniquePlaceholders:new Map,bindingSearchQuery:"",modelSearchQuery:"",personalitySearchQuery:"",isSearching:!1,isPersonalitiesMenuVisible:!1,isSkillsLibraryMenuVisible:!1,isModelsMenuVisible:!1,isBindingsMenuVisible:!1,isMenuVisible:!1,isNavMenuVisible:!1,static_info:UBn,animated_info:qBn,normal_mode:jBn,fun_mode:GBn,is_first_connection:!0,discord:FBn,FastAPI:BBn,modelImgPlaceholder:Y1,personalityImgPlacehodler:Y1,customLanguage:"",rebooting_audio:new Audio("rebooting.wav"),connection_lost_audio:new Audio("connection_lost.wav"),connection_recovered_audio:new Audio("connection_recovered.wav"),database_selectorDialogVisible:!1,progress_visibility:!1,progress_value:0,codeBlockStylesheet:"",lastMessageHtml:"",defaultMessageHtml:` @@ -331,7 +331,7 @@ It meant THERE IS NO SPOON, the matirx's famous scene.`,"ParisNeo started coding
- `,memory_icon:jBn,active_skills:zBn,inactive_skills:YBn,skillsRegistry:WBn,robot:KBn,posts_headers:{accept:"application/json","Content-Type":"application/json"},host:"",progress_visibility_val:!0,msgTypes:{MSG_TYPE_CONTENT:1,MSG_TYPE_CONTENT_INVISIBLE_TO_AI:2,MSG_TYPE_CONTENT_INVISIBLE_TO_USER:3},operationTypes:{MSG_OPERATION_TYPE_ADD_CHUNK:0,MSG_OPERATION_TYPE_SET_CONTENT:1,MSG_OPERATION_TYPE_SET_CONTENT_INVISIBLE_TO_AI:2,MSG_OPERATION_TYPE_SET_CONTENT_INVISIBLE_TO_USER:3,MSG_OPERATION_TYPE_EXCEPTION:4,MSG_OPERATION_TYPE_WARNING:5,MSG_OPERATION_TYPE_INFO:6,MSG_OPERATION_TYPE_STEP:7,MSG_OPERATION_TYPE_STEP_START:8,MSG_OPERATION_TYPE_STEP_PROGRESS:9,MSG_OPERATION_TYPE_STEP_END_SUCCESS:10,MSG_OPERATION_TYPE_STEP_END_FAILURE:11,MSG_OPERATION_TYPE_JSON_INFOS:12,MSG_OPERATION_TYPE_REF:13,MSG_OPERATION_TYPE_CODE:14,MSG_OPERATION_TYPE_UI:15,MSG_OPERATION_TYPE_NEW_MESSAGE:16,MSG_OPERATION_TYPE_FINISHED_MESSAGE:17},senderTypes:{SENDER_TYPES_USER:0,SENDER_TYPES_AI:1,SENDER_TYPES_SYSTEM:2},discussionsList:[],tempList:[],currentDiscussion:{},discussionArr:[],loading:!1,filterTitle:"",filterInProgress:!1,isCreated:!1,isCheckbox:!1,isSelectAll:!1,showSaveConfirmation:!1,showBrainConfirmation:!1,showConfirmation:!1,chime:new Audio("chime_aud.wav"),showToast:!1,isDiscussionBottom:!1,personalityAvatars:[],fileList:[],isDragOverDiscussion:!1,isDragOverChat:!1,isOpen:!1,discussion_id:0}},methods:{async getPersonailyAvatar(t){if(t.avatar){const e="/"+t.avatar;return console.log("Personality avatar"),console.log(e),e}else return Y1},updateRandomFact(){let t;do t=this.interestingFacts[Math.floor(Math.random()*this.interestingFacts.length)];while(t===this.randomFact&&this.interestingFacts.length>1);this.randomFact=t},async handleOnTalk(){const t=this.mountedPers;console.log("pers:",t),this.isGenerating=!0,this.setDiscussionLoading(this.currentDiscussion.id,this.isGenerating);let e=await ce.get("/get_generation_status",{});if(e)if(e.data.status)console.log("Already generating");else{const n=this.$store.state.config.personalities.findIndex(r=>r===t.full_path),o={client_id:this.$store.state.client_id,id:n};e=await ce.post("/select_personality",o),console.log("Generating message from ",e.data.status),Ze.emit("generate_msg_from",{id:-1})}},onShowPersListFun(){},onPersonalitiesReadyFun(){this.$store.state.personalities_ready=!0},async showBindingHoveredIn(t){this.bindingHoveredIndex=t},async showBindingHoveredOut(){this.bindingHoveredIndex=null},async showModelHoveredIn(t){this.modelHoveredIndex=t},async showModelHoveredOut(){this.modelHoveredIndex=null},async showPersonalityHoveredIn(t){this.personalityHoveredIndex=t},async showPersonalityHoveredOut(){this.personalityHoveredIndex=null},async onPersonalitySelected(t){if(console.log("Selected personality"),console.log(t),this.hidePersonalitiesMenu(),t){if(t.selected){this.$store.state.toast.showToast("Personality already selected",4,!0);return}const e=t.full_path;if(this.$store.state.config.personalities.includes(e)){const n=await this.select_personality(t);await this.$store.dispatch("refreshConfig"),await this.$store.dispatch("refreshBindings"),await this.$store.dispatch("refreshModelsZoo"),await this.$store.dispatch("refreshModels"),await this.$store.dispatch("refreshMountedPersonalities"),await this.$store.dispatch("refreshConfig"),await this.$store.dispatch("fetchLanguages"),await this.$store.dispatch("fetchLanguage"),await this.$store.dispatch("fetchisRTOn"),n&&n.status&&n.active_personality_id>-1?this.$store.state.toast.showToast(`Selected personality: + `,memory_icon:zBn,active_skills:YBn,inactive_skills:WBn,skillsRegistry:KBn,robot:ZBn,posts_headers:{accept:"application/json","Content-Type":"application/json"},host:"",progress_visibility_val:!0,msgTypes:{MSG_TYPE_CONTENT:1,MSG_TYPE_CONTENT_INVISIBLE_TO_AI:2,MSG_TYPE_CONTENT_INVISIBLE_TO_USER:3},operationTypes:{MSG_OPERATION_TYPE_ADD_CHUNK:0,MSG_OPERATION_TYPE_SET_CONTENT:1,MSG_OPERATION_TYPE_SET_CONTENT_INVISIBLE_TO_AI:2,MSG_OPERATION_TYPE_SET_CONTENT_INVISIBLE_TO_USER:3,MSG_OPERATION_TYPE_EXCEPTION:4,MSG_OPERATION_TYPE_WARNING:5,MSG_OPERATION_TYPE_INFO:6,MSG_OPERATION_TYPE_STEP:7,MSG_OPERATION_TYPE_STEP_START:8,MSG_OPERATION_TYPE_STEP_PROGRESS:9,MSG_OPERATION_TYPE_STEP_END_SUCCESS:10,MSG_OPERATION_TYPE_STEP_END_FAILURE:11,MSG_OPERATION_TYPE_JSON_INFOS:12,MSG_OPERATION_TYPE_REF:13,MSG_OPERATION_TYPE_CODE:14,MSG_OPERATION_TYPE_UI:15,MSG_OPERATION_TYPE_NEW_MESSAGE:16,MSG_OPERATION_TYPE_FINISHED_MESSAGE:17},senderTypes:{SENDER_TYPES_USER:0,SENDER_TYPES_AI:1,SENDER_TYPES_SYSTEM:2},discussionsList:[],tempList:[],currentDiscussion:{},discussionArr:[],loading:!1,filterTitle:"",filterInProgress:!1,isCreated:!1,isCheckbox:!1,isSelectAll:!1,showSaveConfirmation:!1,showBrainConfirmation:!1,showConfirmation:!1,chime:new Audio("chime_aud.wav"),showToast:!1,isDiscussionBottom:!1,personalityAvatars:[],fileList:[],isDragOverDiscussion:!1,isDragOverChat:!1,isOpen:!1,discussion_id:0}},methods:{async getPersonailyAvatar(t){if(t.avatar){const e="/"+t.avatar;return console.log("Personality avatar"),console.log(e),e}else return Y1},updateRandomFact(){let t;do t=this.interestingFacts[Math.floor(Math.random()*this.interestingFacts.length)];while(t===this.randomFact&&this.interestingFacts.length>1);this.randomFact=t},async handleOnTalk(){const t=this.mountedPers;console.log("pers:",t),this.isGenerating=!0,this.setDiscussionLoading(this.currentDiscussion.id,this.isGenerating);let e=await ce.get("/get_generation_status",{});if(e)if(e.data.status)console.log("Already generating");else{const n=this.$store.state.config.personalities.findIndex(r=>r===t.full_path),o={client_id:this.$store.state.client_id,id:n};e=await ce.post("/select_personality",o),console.log("Generating message from ",e.data.status),Ze.emit("generate_msg_from",{id:-1})}},onShowPersListFun(){},onPersonalitiesReadyFun(){this.$store.state.personalities_ready=!0},async showBindingHoveredIn(t){this.bindingHoveredIndex=t},async showBindingHoveredOut(){this.bindingHoveredIndex=null},async showModelHoveredIn(t){this.modelHoveredIndex=t},async showModelHoveredOut(){this.modelHoveredIndex=null},async showPersonalityHoveredIn(t){this.personalityHoveredIndex=t},async showPersonalityHoveredOut(){this.personalityHoveredIndex=null},async onPersonalitySelected(t){if(console.log("Selected personality"),console.log(t),this.hidePersonalitiesMenu(),t){if(t.selected){this.$store.state.toast.showToast("Personality already selected",4,!0);return}const e=t.full_path;if(this.$store.state.config.personalities.includes(e)){const n=await this.select_personality(t);await this.$store.dispatch("refreshConfig"),await this.$store.dispatch("refreshBindings"),await this.$store.dispatch("refreshModelsZoo"),await this.$store.dispatch("refreshModels"),await this.$store.dispatch("refreshMountedPersonalities"),await this.$store.dispatch("refreshConfig"),await this.$store.dispatch("fetchLanguages"),await this.$store.dispatch("fetchLanguage"),await this.$store.dispatch("fetchisRTOn"),n&&n.status&&n.active_personality_id>-1?this.$store.state.toast.showToast(`Selected personality: `+t.name,4,!0):this.$store.state.toast.showToast(`Error on select personality: `+t.name,4,!1)}this.$emit("personalitySelected"),Se(()=>{Ce.replace()})}},async select_personality(t){if(!t)return{status:!1,error:"no personality - select_personality"};const e=t.full_path,n=this.$store.state.config.personalities.findIndex(r=>r===e),o={client_id:this.$store.state.client_id,id:n};try{const r=await ce.post("/select_personality",o);if(r)return this.$store.dispatch("refreshConfig").then(()=>{this.$store.dispatch("refreshPersonalitiesZoo").then(()=>{this.$store.dispatch("refreshMountedPersonalities")})}),r.data}catch(r){console.log(r.message,"select_personality - settings");return}},showPersonalitiesMenu(){clearTimeout(this.hideMenuTimeout),this.isPersonalitiesMenuVisible=!0},showSkillsLibraryMenu(){clearTimeout(this.hideSkillsLibraryMenuTimeout),this.isSkillsLibraryMenuVisible=!0},hideSkillsLibraryMenu(){this.hideMenuTimeout=setTimeout(()=>{this.isSkillsLibraryMenuVisible=!1},300)},hidePersonalitiesMenu(){this.hideMenuTimeout=setTimeout(()=>{this.isPersonalitiesMenuVisible=!1},300)},copyModelName(){navigator.clipboard.writeText(this.binding_name+"::"+this.model_name),this.$store.state.toast.showToast("Model name copyed to clipboard: "+this.binding_name+"::"+this.model_name,4,!0)},copyModelNameFrom(t){navigator.clipboard.writeText(this.binding_name+"::"+t),this.$store.state.toast.showToast("Model name copyed to clipboard: "+this.binding_name+"::"+this.model_name,4,!0)},showBindingsMenu(){clearTimeout(this.hideBindingsMenuTimeout),this.isBindingsMenuVisible=!0},hideBindingsMenu(){this.hideBindingsMenuTimeout=setTimeout(()=>{this.isBindingsMenuVisible=!1},300)},setBinding(t){this.selecting_binding=!0,this.selectedBinding=t,this.$store.state.messageBox.showBlockingMessage("Loading binding"),ce.post("/update_setting",{client_id:this.$store.state.client_id,setting_name:"binding_name",setting_value:t.name}).then(async e=>{this.$store.state.messageBox.hideMessage(),await this.$store.dispatch("refreshConfig"),await this.$store.dispatch("refreshBindings"),await this.$store.dispatch("refreshModelsZoo"),await this.$store.dispatch("refreshModels"),this.$store.state.toast.showToast(`Binding changed to ${this.currentBinding.name}`,4,!0),this.selecting_binding=!1}).catch(e=>{this.$store.state.messageBox.hideMessage(),this.$store.state.toast.showToast(`Error ${e}`,4,!0),this.selecting_binding=!1})},showModelsMenu(){clearTimeout(this.hideModelsMenuTimeout),this.isModelsMenuVisible=!0},hideModelsMenu(){this.hideModelsMenuTimeout=setTimeout(()=>{this.isModelsMenuVisible=!1},300)},setModel(t){this.selecting_model=!0,this.selectedModel=t,this.$store.state.messageBox.showBlockingMessage("Loading model"),ce.post("/update_setting",{client_id:this.$store.state.client_id,setting_name:"model_name",setting_value:t.name}).then(async e=>{this.$store.state.messageBox.hideMessage(),await this.$store.dispatch("refreshConfig"),await this.$store.dispatch("refreshModels"),this.$store.state.toast.showToast(`Model changed to ${this.currentModel.name}`,4,!0),this.selecting_model=!1}).catch(e=>{this.$store.state.messageBox.hideMessage(),this.$store.state.toast.showToast(`Error ${e}`,4,!0),this.selecting_model=!1})},showModelConfig(){try{this.isLoading=!0,ce.post("/get_active_binding_settings",{client_id:this.$store.state.client_id}).then(t=>{this.isLoading=!1,t&&(t.data&&Object.keys(t.data).length>0?this.$store.state.universalForm.showForm(t.data,"Binding settings ","Save changes","Cancel").then(e=>{try{ce.post("/set_active_binding_settings",{client_id:this.$store.state.client_id,settings:e}).then(n=>{n&&n.data?this.$store.state.toast.showToast("Binding settings updated successfully!",4,!0):(this.$store.state.toast.showToast(`Did not get binding settings responses. `+n,4,!1),this.isLoading=!1)})}catch(n){this.$store.state.toast.showToast(`Did not get binding settings responses. @@ -350,12 +350,12 @@ ${e} ${l}`;navigator.clipboard.writeText(c)}else navigator.clipboard.writeText(e);this.$store.state.toast.showToast("Copied to clipboard successfully",4,!0),Se(()=>{Ce.replace()})},closeToast(){this.showToast=!1},saveJSONtoFile(t,e){e=e||"data.json";const n=document.createElement("a");n.href=URL.createObjectURL(new Blob([JSON.stringify(t,null,2)],{type:"text/plain"})),n.setAttribute("download",e),document.body.appendChild(n),n.click(),document.body.removeChild(n)},saveMarkdowntoFile(t,e){e=e||"data.md";const n=document.createElement("a");n.href=URL.createObjectURL(new Blob([t],{type:"text/plain"})),n.setAttribute("download",e),document.body.appendChild(n),n.click(),document.body.removeChild(n)},parseJsonObj(t){try{return JSON.parse(t)}catch(e){return this.$store.state.toast.showToast(`Could not parse JSON. `+e.message,4,!1),null}},async parseJsonFile(t){return new Promise((e,n)=>{const o=new FileReader;o.onload=r=>e(this.parseJsonObj(r.target.result)),o.onerror=r=>n(r),o.readAsText(t)})},async exportDiscussionsAsMarkdown(){const t=this.discussionsList.filter(e=>e.checkBoxValue==!0).map(e=>e.id);if(t.length>0){let e=new Date;const n=e.getFullYear(),o=(e.getMonth()+1).toString().padStart(2,"0"),r=e.getDate().toString().padStart(2,"0"),i=e.getHours().toString().padStart(2,"0"),s=e.getMinutes().toString().padStart(2,"0"),a=e.getSeconds().toString().padStart(2,"0"),c="discussions_export_"+(n+"."+o+"."+r+"."+i+s+a)+".md";this.loading=!0;const u=await this.export_multiple_discussions(t,"markdown");u?(this.saveMarkdowntoFile(u,c),this.$store.state.toast.showToast("Successfully exported",4,!0),this.isCheckbox=!1):this.$store.state.toast.showToast("Failed to export discussions",4,!1),this.loading=!1}},async exportDiscussions(){},async exportDiscussionsAsJson(){const t=this.discussionsList.filter(e=>e.checkBoxValue==!0).map(e=>e.id);if(t.length>0){let e=new Date;const n=e.getFullYear(),o=(e.getMonth()+1).toString().padStart(2,"0"),r=e.getDate().toString().padStart(2,"0"),i=e.getHours().toString().padStart(2,"0"),s=e.getMinutes().toString().padStart(2,"0"),a=e.getSeconds().toString().padStart(2,"0"),c="discussions_export_"+(n+"."+o+"."+r+"."+i+s+a)+".json";this.loading=!0;const u=await this.export_multiple_discussions(t,"json");u?(this.saveJSONtoFile(u,c),this.$store.state.toast.showToast("Successfully exported",4,!0),this.isCheckbox=!1):this.$store.state.toast.showToast("Failed to export discussions",4,!1),this.loading=!1}},async importDiscussionsBundle(t){},async importDiscussions(t){const e=await this.parseJsonFile(t.target.files[0]);await this.import_multiple_discussions(e)?(this.$store.state.toast.showToast("Successfully imported ("+e.length+")",4,!0),await this.list_discussions()):this.$store.state.toast.showToast("Failed to import discussions",4,!1)},async getPersonalityAvatars(){for(;this.$store.state.personalities===null;)await new Promise(e=>setTimeout(e,100));let t=this.$store.state.personalities;this.personalityAvatars=t.map(e=>({name:e.name,avatar:e.avatar}))},getAvatar(t){if(t.toLowerCase().trim()==this.$store.state.config.user_name.toLowerCase().trim())return"user_infos/"+this.$store.state.config.user_avatar;const e=this.personalityAvatars.findIndex(o=>o.name===t),n=this.personalityAvatars[e];if(n)return n.avatar},setFileListChat(t){try{this.$refs.chatBox.fileList=this.$refs.chatBox.fileList.concat(t)}catch(e){this.$store.state.toast.showToast(`Failed to set filelist in chatbox -`+e.message,4,!1)}this.isDragOverChat=!1},async setFileListDiscussion(t){if(t.length>1){this.$store.state.toast.showToast("Failed to import discussions. Too many files",4,!1);return}const e=await this.parseJsonFile(t[0]);await this.import_multiple_discussions(e)?(this.$store.state.toast.showToast("Successfully imported ("+e.length+")",4,!0),await this.list_discussions()):this.$store.state.toast.showToast("Failed to import discussions",4,!1),this.isDragOverDiscussion=!1}},async created(){this.randomFact=this.interestingFacts[Math.floor(Math.random()*this.interestingFacts.length)];const e=(await ce.get("/get_versionID")).data.versionId;Ze.onopen=()=>{this.currentDiscussion!=null&&(this.setPageTitle(this.currentDiscussion.title),localStorage.setItem("selected_discussion",this.currentDiscussion.id),this.load_discussion(this.currentDiscussion.id,()=>{this.discussionArr.length>1&&(this.currentDiscussion.title===""||this.currentDiscussion.title===null)&&this.changeTitleUsingUserMSG(this.currentDiscussion.id,this.discussionArr[1].content)}))},this.versionId!==e&&(this.$store.commit("updateVersionId",e),window.location.reload(!0)),this.$nextTick(()=>{Ce.replace()});try{this.$store.state.loading_infos="Getting version",this.$store.state.loading_progress=30,await this.$store.dispatch("getVersion")}catch(n){console.log("Error cought:",n)}try{for(this.$store.state.loading_infos="Loading Configuration";Ze.id===void 0;)await new Promise(n=>setTimeout(n,100));this.$store.state.client_id=Ze.id,await this.$store.dispatch("refreshConfig")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Loading Database",this.$store.state.loading_progress=20,await this.$store.dispatch("refreshDatabase")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Getting Bindings list",this.$store.state.loading_progress=40,await this.$store.dispatch("refreshBindings")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Getting personalities zoo",this.$store.state.loading_progress=70,await this.$store.dispatch("refreshPersonalitiesZoo")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Getting mounted personalities",this.$store.state.loading_progress=80,await this.$store.dispatch("refreshMountedPersonalities")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Getting models zoo",this.$store.state.loading_progress=90,await this.$store.dispatch("refreshModelsZoo")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Getting active models",this.$store.state.loading_progress=100,await this.$store.dispatch("refreshModels"),await this.$store.dispatch("refreshModelStatus")}catch(n){console.log("Error cought:",n)}try{await this.$store.dispatch("fetchLanguages"),await this.$store.dispatch("fetchLanguage")}catch(n){console.log("Error cought:",n)}try{await this.$store.dispatch("fetchisRTOn")}catch(n){console.log("Error cought:",n)}this.$store.state.isConnected=!0,this.$store.state.client_id=Ze.id,this.setPageTitle(),await this.list_discussions(),this.loadLastUsedDiscussion(),this.isCreated=!0,this.$store.state.ready=!0,Ze.on("connected",this.socketIOConnected),Ze.on("disconnected",this.socketIODisconnected),Ze.on("show_progress",this.show_progress),Ze.on("hide_progress",this.hide_progress),Ze.on("update_progress",this.update_progress),Ze.on("notification",this.notify),Ze.on("new_message",this.new_message),Ze.on("update_message",this.update_message),Ze.on("close_message",this.finalMsgEvent),Ze.on("disucssion_renamed",n=>{const o=this.discussionsList.findIndex(i=>i.id==n.discussion_id),r=this.discussionsList[o];r.title=n.title}),Ze.onclose=n=>{this.socketIODisconnected()},Ze.on("connect_error",n=>{n.message==="ERR_CONNECTION_REFUSED"?console.error("Connection refused. The server is not available."):console.error("Connection error:",n),this.$store.state.isConnected=!1}),Ze.onerror=n=>{console.log("WebSocket connection error:",n.code,n.reason),this.socketIODisconnected(),Ze.disconnect()}},beforeUnmount(){window.removeEventListener("resize",this.adjustMenuPosition)},async mounted(){window.addEventListener("keydown",this.handleShortcut),this.$store.state.news=this.$refs.news,this.$store.state.personality_editor=this.$refs.personality_editor,window.addEventListener("resize",this.adjustMenuPosition),Ze.on("refresh_files",()=>{this.recoverFiles()})},async activated(){for(;this.isReady===!1;)await new Promise(t=>setTimeout(t,100));await this.getPersonalityAvatars(),console.log("Avatars found:",this.personalityAvatars),this.isCreated&&Se(()=>{const t=document.getElementById("messages-list");this.scrollBottom(t)}),this.$store.state.config.show_news_panel&&this.$store.state.news.show()},components:{Discussion:Ch,Message:kk,ChatBox:Hk,WelcomeComponent:Pk,ChoiceDialog:Lh,ProgressBar:lh,SkillsLibraryViewer:Dk,PersonalityEditor:Kk,PopupViewer:Zk,ActionButton:LN,SocialIcon:CN,MountedPersonalities:Xk,ChatBarButton:b0,ChangelogPopup:Jk},watch:{installedModels:{immediate:!0,handler(t){this.$nextTick(()=>{this.installedModels=t})}},"$store.state.config.fun_mode":function(t,e){},"$store.state.isConnected":function(t,e){this.isConnected?this.is_first_connection||(this.$store.state.messageBox.hideMessage(),this.$store.state.messageBox.showMessage("Server connected."),this.$store.state.config.activate_audio_infos&&this.connection_recovered_audio.play()):(this.$store.state.messageBox.showBlockingMessage("Server suddenly disconnected. Please reboot the server to recover the connection"),this.is_first_connection=!1,this.$store.state.config.activate_audio_infos&&this.connection_lost_audio.play()),Se(()=>{Ce.replace()})},messages:{handler:"extractHtml",deep:!0},progress_visibility_val(t){console.log("progress_visibility changed to "+t)},filterTitle(t){t==""&&(this.filterInProgress=!0,this.discussionsList=this.tempList,this.filterInProgress=!1)},isCheckbox(t){Se(()=>{Ce.replace()}),t||(this.isSelectAll=!1)},socketConnected(t){console.log("Websocket connected (watch)",t)},showConfirmation(){Se(()=>{Ce.replace()})}},computed:{shouldShowLollmsParagraphs(){return!(this.$store.state.config&&this.$store.state.config.app_custom_name&&this.$store.state.config.app_custom_name!="")},shouldShowLollmsFunFacts(){return this.$store.state.config&&this.$store.state.config.app_show_fun_facts},parsedPlaceholders(){const t=new Map;return this.placeholders.forEach(e=>{const n=Qqn(e);t.set(n.fullText,n)}),Array.from(t.values())},filteredBindings(){return this.installedBindings.filter(t=>t.name.toLowerCase().includes(this.bindingSearchQuery.toLowerCase()))},filteredModels(){return this.installedModels.filter(t=>t.name.toLowerCase().includes(this.modelSearchQuery.toLowerCase()))},filteredPersonalities(){return this.mountedPersonalities.filter(t=>t.name.toLowerCase().includes(this.personalitySearchQuery.toLowerCase()))},currentModel(){return this.$store.state.currentModel||{}},currentModelIcon(){return this.currentModel.icon||this.modelImgPlaceholder},binding_name(){return this.$store.state.config.binding_name},installedModels(){return this.$store.state.installedModels},model_name(){return this.$store.state.config.model_name},mountedPersonalities(){return this.$store.state.mountedPersArr},personality_name(){return this.$store.state.config.active_personality_id},config(){return this.$store.state.config},mountedPers(){return this.$store.state.mountedPers},installedBindings(){return this.$store.state.installedBindings},currentBindingIcon(){return this.currentBinding.icon||this.modelImgPlaceholder},currentBinding(){return this.$store.state.currentBinding||{}},isFullMode(){return this.$store.state.view_mode==="full"},storeLogo(){return this.$store.state.config?Wi:this.$store.state.config.app_custom_logo!=""?"/user_infos/"+this.$store.state.config.app_custom_logo:Wi},currentPersonConfig(){try{return this.$store.state.currentPersonConfig}catch{console.log("Error finding current personality configuration");return}},selectedPersonality(){try{return this.$store.state.selectedPersonality}catch{console.log("Error finding current personality configuration");return}},loading_infos(){return this.$store.state.loading_infos},is_fun_mode(){try{return this.$store.state.config?this.$store.state.config.fun_mode:!1}catch(t){return console.error("Oopsie! Looks like we hit a snag: ",t),!1}},isModelOK(){return this.$store.state.isModelOk},isGenerating(){return this.$store.state.isGenerating},isConnected(){return this.$store.state.isConnected},...FR({versionId:t=>t.versionId}),progress_visibility:{get(){return self.progress_visibility_val}},version_info:{get(){return this.$store.state.version!=null&&this.$store.state.version!="unknown"?this.$store.state.version:"..."}},loading_infos:{get(){return this.$store.state.loading_infos}},loading_progress:{get(){return this.$store.state.loading_progress}},isModelOk:{get(){return this.$store.state.isModelOk},set(t){this.$store.state.isModelOk=t}},isGenerating:{get(){return this.$store.state.isGenerating},set(t){this.$store.state.isGenerating=t}},personality(){const t=this.$store.state.config.personalities[this.$store.state.config.active_personality_id].split(":")[0];return this.$store.state.personalities.find(n=>n.full_path===t)},prompts_list(){return this.personality.prompts_list},formatted_database_name(){return this.$store.state.config.discussion_db_name},UseDiscussionHistory(){return this.$store.state.config.activate_skills_lib},isReady(){return this.$store.state.ready},databases(){return this.$store.state.databases},client_id(){return Ze.id},showLeftPanel(){return console.log("showLeftPanel"),console.log(this.$store.state.leftPanelCollapsed),this.$store.state.ready&&!this.$store.state.leftPanelCollapsed},showRightPanel(){return console.log("showRightPanel"),console.log(this.$store.state.rightPanelCollapsed),this.$store.state.ready&&!this.$store.state.rightPanelCollapsed},socketConnected(){return console.log(" --- > Websocket connected"),this.$store.commit("setIsConnected",!0),!0},socketDisconnected(){return this.$store.commit("setIsConnected",!1),console.log(" --- > Websocket disconnected"),!0},selectedDiscussions(){return Se(()=>{Ce.replace()}),this.discussionsList.filter(t=>t.checkBoxValue==!0)}}},yqn=Object.assign(vqn,{__name:"DiscussionsView",setup(t){return Hr(()=>{Wk()}),ce.defaults.baseURL="/",(e,n)=>(N(),H(xe,null,[ne(Nr,{name:"fade-smooth"},{default:Ge(()=>{var o,r;return[e.isReady?Z("",!0):(N(),H("div",dFn,[e.$store.state.theme_vars.activate_dropping_animation?(N(),H("div",TFn,[(N(),H(xe,null,Pe(60,i=>S("div",{key:i,class:"absolute animate-fall text-xs theme-falling-object-color",style:an({left:`${Math.random()*100}%`,top:"-30px",animationDuration:`${4+Math.random()*8}s`,animationDelay:`${Math.random()*6}s`,opacity:`${.3+Math.random()*.5}`})},J(e.$store.state.theme_vars.falling_object||"·"),5)),64))])):Z("",!0),S("div",fFn,[S("div",pFn,[S("h1",hFn,J(((o=e.$store.state.config)==null?void 0:o.app_custom_name)||e.$store.state.theme_vars.lollms_title||"LoLLMs"),1),S("p",mFn,J(((r=e.$store.state.config)==null?void 0:r.app_custom_slogan)||"One tool to rule them all"),1),e.shouldShowLollmsParagraphs?(N(),H("p",gFn," by ParisNeo ")):Z("",!0),S("p",_Fn,J(e.version_info),1)]),e.shouldShowLollmsFunFacts&&e.randomFact?(N(),H("div",{key:0,class:"mb-8 w-full max-w-xl cursor-pointer rounded-lg border p-4 shadow-lg backdrop-blur-sm transition-all duration-300 theme-card-bg theme-card-border hover:theme-card-bg-hover hover:theme-card-border-hover",onClick:n[0]||(n[0]=(...i)=>e.updateRandomFact&&e.updateRandomFact(...i))},[S("p",QFn,[n[57]||(n[57]=S("span",{class:"font-semibold theme-text-highlight"},"🤔 Fun Fact: ",-1)),S("span",{innerHTML:e.randomFact,class:"italic"},null,8,vFn)])])):Z("",!0),S("div",yFn,[S("div",bFn,[S("div",{class:"h-full rounded-full shadow-md transition-all duration-500 ease-out animated-progressbar-fg",style:an({width:`${e.loading_progress}%`})},null,4)]),S("div",EFn,[(N(),H("p",{class:"mb-1 text-lg transition-opacity duration-300 theme-text-secondary",key:e.loading_infos},J(e.loading_infos)+"... ",1)),S("p",SFn,J(Math.round(e.loading_progress))+"% ",1)])])])]))]}),_:1}),ne(Nr,{name:"slide-right"},{default:Ge(()=>[e.showLeftPanel?(N(),H("div",xFn,[ne(gt(Q5),{to:{name:"discussions"},class:"flex items-center space-x-2"},{default:Ge(()=>[S("div",LFn,[S("img",{class:"w-12 h-12 rounded-full object-cover logo-image",src:e.$store.state.config==null?gt(Wi):e.$store.state.config.app_custom_logo!=null&&e.$store.state.config.app_custom_logo!=""?"/user_infos/"+e.$store.state.config.app_custom_logo:gt(Wi),alt:"Logo",title:e.$store.state.config&&e.$store.state.config.app_custom_name&&e.$store.state.config.app_custom_name!=""?e.$store.state.config.app_custom_logo:"LoLLMS WebUI"},null,8,CFn)]),S("div",AFn,[S("div",wFn,[S("div",OFn,[S("span",MFn,J(e.$store.state.config&&e.$store.state.config.app_custom_name&&e.$store.state.config.app_custom_name!=""?e.$store.state.config.app_custom_name:"LoLLMS WebUI"),1),n[58]||(n[58]=S("div",{class:"absolute -bottom-0.5 left-0 w-full h-0.5 bg-black dark:bg-white transform origin-left transition-transform duration-300 hover:scale-x-100 scale-x-0"},null,-1))])]),S("p",RFn,J(e.$store.state.config&&e.$store.state.config.app_custom_slogan&&e.$store.state.config.app_custom_slogan!=""?e.$store.state.config.app_custom_slogan:"One tool to rule them all"),1)])]),_:1}),S("div",NFn,[S("div",DFn,[S("button",{class:"toolbar-button",title:"Create new discussion",onClick:n[1]||(n[1]=(...o)=>e.createNewDiscussion&&e.createNewDiscussion(...o))},n[59]||(n[59]=[S("i",{"data-feather":"plus"},null,-1)])),e.loading?Z("",!0):(N(),H("div",{key:0,class:"toolbar-button",onMouseleave:n[8]||(n[8]=(...o)=>e.hideSkillsLibraryMenu&&e.hideSkillsLibraryMenu(...o))},[Le(S("div",{onMouseenter:n[6]||(n[6]=(...o)=>e.showSkillsLibraryMenu&&e.showSkillsLibraryMenu(...o)),class:"absolute m-0 p-0 z-50 top-full left-0 transform bg-white dark:bg-bg-dark rounded-lg shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",IFn,[e.loading?Z("",!0):(N(),H("button",{key:0,type:"button",onClick:n[2]||(n[2]=oe((...o)=>e.addDiscussion2SkillsLibrary&&e.addDiscussion2SkillsLibrary(...o),["stop"])),title:"Add this discussion content to skills database",class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95"},n[60]||(n[60]=[S("i",{"data-feather":"plus"},null,-1)]))),!e.loading&&e.$store.state.config.activate_skills_lib?(N(),H("button",{key:1,type:"button",onClick:n[3]||(n[3]=oe((...o)=>e.toggleSkillsLib&&e.toggleSkillsLib(...o),["stop"])),title:"Skills database is activated",class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95"},n[61]||(n[61]=[S("i",{"data-feather":"check-circle"},null,-1)]))):Z("",!0),!e.loading&&!e.$store.state.config.activate_skills_lib?(N(),H("button",{key:2,type:"button",onClick:n[4]||(n[4]=oe((...o)=>e.toggleSkillsLib&&e.toggleSkillsLib(...o),["stop"])),title:"Skills database is deactivated",class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95"},n[62]||(n[62]=[S("i",{"data-feather":"x-octagon"},null,-1)]))):Z("",!0),e.loading?Z("",!0):(N(),H("button",{key:3,type:"button",onClick:n[5]||(n[5]=oe((...o)=>e.showSkillsLib&&e.showSkillsLib(...o),["stop"])),title:"Show Skills database",class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95"},n[63]||(n[63]=[S("i",{"data-feather":"book"},null,-1)])))])],544),[[An,e.isSkillsLibraryMenuVisible]]),S("div",{onMouseenter:n[7]||(n[7]=(...o)=>e.showSkillsLibraryMenu&&e.showSkillsLibraryMenu(...o)),class:"menu-hover-area"},n[64]||(n[64]=[S("button",{class:"w-8 h-8",title:"Toggle Skills library menu"},[S("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M4 4v16h16V4H4zm2 2h12v12H6V6zm2 2h2v8H8V8zm3 0h2v8h-2V8zm3 0h2v8h-2V8z",fill:"currentColor"})])],-1)]),32)],32)),e.loading?Z("",!0):(N(),H("div",{key:1,class:"toolbar-button",onMouseleave:n[22]||(n[22]=(...o)=>e.hideMenu&&e.hideMenu(...o))},[Le(S("div",{onMouseenter:n[20]||(n[20]=(...o)=>e.showMenu&&e.showMenu(...o)),class:"absolute m-0 p-0 z-50 top-full left-0 transform bg-white dark:bg-bg-dark rounded-lg shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",kFn,[S("button",{class:Ee(["text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95",e.isCheckbox?"text-secondary dark:text-secondary-light":"text-gray-700 dark:text-gray-300"]),title:"Edit discussion list",type:"button",onClick:n[9]||(n[9]=o=>e.isCheckbox=!e.isCheckbox)},n[65]||(n[65]=[S("i",{"data-feather":"check-square"},null,-1)]),2),S("button",{class:"text-3xl hover:text-red-500 dark:hover:text-red-400 duration-150 active:scale-95",title:"Reset database, remove all discussions",onClick:n[10]||(n[10]=oe(()=>{},["stop"]))},n[66]||(n[66]=[S("i",{"data-feather":"trash-2"},null,-1)])),S("button",{class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95",title:"Export database",type:"button",onClick:n[11]||(n[11]=oe(o=>e.database_selectorDialogVisible=!0,["stop"]))},n[67]||(n[67]=[S("i",{"data-feather":"database"},null,-1)])),S("div",HFn,[S("input",{type:"file",ref:"fileDialog",class:"hidden",onChange:n[12]||(n[12]=(...o)=>e.importDiscussions&&e.importDiscussions(...o))},null,544),S("button",{class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95 rotate-90",title:"Import discussions",type:"button",onClick:n[13]||(n[13]=oe(o=>e.$refs.fileDialog.click(),["stop"]))},n[68]||(n[68]=[S("i",{"data-feather":"log-in"},null,-1)]))]),S("div",PFn,[S("input",{type:"file",ref:"bundleLoadingDialog",class:"hidden",onChange:n[14]||(n[14]=(...o)=>e.importDiscussionsBundle&&e.importDiscussionsBundle(...o))},null,544),e.showSaveConfirmation?Z("",!0):(N(),H("button",{key:0,title:"Import discussion bundle",onClick:n[15]||(n[15]=oe(o=>e.$refs.bundleLoadingDialog.click(),["stop"])),class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95"},n[69]||(n[69]=[S("i",{"data-feather":"folder"},null,-1)])))]),e.loading?(N(),H("div",$Fn,n[70]||(n[70]=[S("div",{role:"status"},[S("svg",{"aria-hidden":"true",class:"w-8 h-8 animate-spin fill-secondary dark:fill-secondary-light",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})]),S("span",{class:"sr-only"},"Loading...")],-1)]))):Z("",!0),e.showSaveConfirmation?(N(),H("div",VFn,[S("button",{class:"text-3xl hover:text-red-500 dark:hover:text-red-400 duration-150 active:scale-95",title:"Cancel",type:"button",onClick:n[16]||(n[16]=oe(o=>e.showSaveConfirmation=!1,["stop"]))},n[71]||(n[71]=[S("i",{"data-feather":"x"},null,-1)])),S("button",{class:"text-3xl hover:text-green-500 dark:hover:text-green-400 duration-150 active:scale-95",title:"Confirm save changes",type:"button",onClick:n[17]||(n[17]=oe(o=>e.save_configuration(),["stop"]))},n[72]||(n[72]=[S("i",{"data-feather":"check"},null,-1)]))])):Z("",!0),e.isOpen?(N(),H("div",BFn,[S("button",{onClick:n[18]||(n[18]=(...o)=>e.importDiscussions&&e.importDiscussions(...o)),class:"text-sm hover:text-secondary dark:hover:text-secondary-light"},"LOLLMS"),S("button",{onClick:n[19]||(n[19]=(...o)=>e.importChatGPT&&e.importChatGPT(...o)),class:"text-sm hover:text-secondary dark:hover:text-secondary-light"},"ChatGPT")])):Z("",!0)])],544),[[An,e.isMenuVisible]]),S("div",{onMouseenter:n[21]||(n[21]=(...o)=>e.showMenu&&e.showMenu(...o)),class:"menu-hover-area"},n[73]||(n[73]=[S("button",{class:"w-8 h-8",title:"Toggle menu"},[S("i",{"data-feather":"menu"})],-1)]),32)],32)),e.loading?Z("",!0):(N(),H("div",{key:2,class:"toolbar-button",onMouseleave:n[27]||(n[27]=(...o)=>e.hideBindingsMenu&&e.hideBindingsMenu(...o))},[S("div",FFn,[Le(S("div",{onMouseenter:n[24]||(n[24]=(...o)=>e.showBindingsMenu&&e.showBindingsMenu(...o)),class:"absolute m-0 p-0 z-10 top-full left-0 transform w-80 bg-white dark:bg-gray-900 rounded-md shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",UFn,[Le(S("input",{type:"text","onUpdate:modelValue":n[23]||(n[23]=o=>e.bindingSearchQuery=o),placeholder:"Search bindings...",class:"w-full px-3 py-2 rounded-md border border-gray-300 dark:border-gray-600 dark:bg-gray-800 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500"},null,512),[[Je,e.bindingSearchQuery]])]),S("div",qFn,[(N(!0),H(xe,null,Pe(e.filteredBindings,(o,r)=>(N(),H("div",{key:r,class:"relative group/item flex flex-col items-center"},[S("div",GFn,[S("button",{onClick:oe(i=>e.setBinding(o),["prevent"]),title:o.name,class:"w-12 h-12 rounded-md overflow-hidden transition-transform duration-200 transform group-hover/item:scale-105 focus:outline-none"},[S("img",{src:o.icon?o.icon:gt(Y1),alt:o.name,class:Ee(["w-full h-full object-cover",{"border-2 border-secondary":o.name==e.binding_name}])},null,10,zFn)],8,jFn),S("span",{class:"mt-1 text-xs text-center w-full truncate",title:o.name},J(o.name),9,YFn)]),S("div",WFn,[S("span",{class:"text-xs font-medium mb-2 text-center",onClick:oe(i=>e.setBinding(o),["prevent"])},J(o.name),9,KFn),S("div",ZFn,[S("button",{onClick:oe(i=>e.showModelConfig(o),["prevent"]),class:"p-1 bg-blue-500 rounded-full text-white hover:bg-blue-600 focus:outline-none",title:"Configure Binding"},n[74]||(n[74]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z"}),S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z"})],-1)]),8,XFn)])])]))),128))])],544),[[An,e.isBindingsMenuVisible]]),S("div",{onMouseenter:n[26]||(n[26]=(...o)=>e.showBindingsMenu&&e.showBindingsMenu(...o)),class:"bindings-hover-area"},[S("button",{onClick:n[25]||(n[25]=oe(o=>e.showModelConfig(),["prevent"])),class:"w-6 h-6"},[S("img",{src:e.currentBindingIcon,class:"w-6 h-6 rounded-full object-fill text-red-700 border-2 active:scale-90 hover:border-secondary hover:scale-110 hover:-translate-y-1 duration-200",title:e.currentBinding?e.currentBinding.name:"unknown"},null,8,JFn)])],32)])],32)),e.loading?Z("",!0):(N(),H("div",{key:3,class:"toolbar-button",onMouseleave:n[32]||(n[32]=(...o)=>e.hideModelsMenu&&e.hideModelsMenu(...o))},[S("div",eUn,[Le(S("div",{onMouseenter:n[29]||(n[29]=(...o)=>e.showModelsMenu&&e.showModelsMenu(...o)),class:"absolute m-0 p-0 z-10 top-full left-0 transform w-80 bg-white dark:bg-gray-900 rounded-md shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",tUn,[Le(S("input",{type:"text","onUpdate:modelValue":n[28]||(n[28]=o=>e.modelSearchQuery=o),placeholder:"Search models...",class:"w-full px-3 py-2 rounded-md border border-gray-300 dark:border-gray-600 dark:bg-gray-800 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500"},null,512),[[Je,e.modelSearchQuery]])]),S("div",nUn,[(N(!0),H(xe,null,Pe(e.filteredModels,(o,r)=>(N(),H("div",{key:r,class:"relative group/item flex flex-col items-center"},[S("div",rUn,[S("button",{onClick:oe(i=>e.setModel(o),["prevent"]),title:o.name,class:"w-12 h-12 rounded-md overflow-hidden transition-transform duration-200 transform group-hover/item:scale-105 focus:outline-none"},[S("img",{src:o.icon?o.icon:gt(Y1),alt:o.name,class:Ee(["w-full h-full object-cover",{"border-2 border-secondary":o.name==e.model_name}])},null,10,oUn)],8,iUn),S("span",{class:"mt-1 text-xs text-center w-full truncate",title:o.name},J(o.name),9,sUn)]),S("div",aUn,[S("span",{class:"text-xs font-medium mb-2 text-center",onClick:oe(i=>e.setModel(o),["prevent"])},J(o.name),9,lUn),S("div",cUn,[S("button",{onClick:oe(i=>e.copyModelNameFrom(o.name),["prevent"]),class:"p-1 bg-blue-500 rounded-full text-white hover:bg-blue-600 focus:outline-none",title:"Copy Model Name"},n[75]||(n[75]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})],-1)]),8,uUn)])])]))),128))])],544),[[An,e.isModelsMenuVisible]]),S("div",{onMouseenter:n[31]||(n[31]=(...o)=>e.showModelsMenu&&e.showModelsMenu(...o)),class:"models-hover-area"},[S("button",{onClick:n[30]||(n[30]=oe(o=>e.copyModelName(),["prevent"])),class:"w-6 h-6"},[S("img",{src:e.currentModelIcon,class:"w-6 h-6 rounded-full object-fill text-red-700 border-2 active:scale-90 hover:border-secondary hover:scale-110 hover:-translate-y-1 duration-400",title:e.currentModel?e.currentModel.name:"unknown"},null,8,dUn)])],32)])],32)),e.loading?Z("",!0):(N(),H("div",{key:4,class:"toolbar-button",onMouseleave:n[36]||(n[36]=(...o)=>e.hidePersonalitiesMenu&&e.hidePersonalitiesMenu(...o))},[S("div",TUn,[Le(S("div",{onMouseenter:n[34]||(n[34]=(...o)=>e.showPersonalitiesMenu&&e.showPersonalitiesMenu(...o)),class:"absolute m-0 p-0 z-10 top-full left-0 transform w-80 bg-white dark:bg-gray-900 rounded-md shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",fUn,[Le(S("input",{type:"text","onUpdate:modelValue":n[33]||(n[33]=o=>e.personalitySearchQuery=o),placeholder:"Search personalities...",class:"w-full px-3 py-2 rounded-md border border-gray-300 dark:border-gray-600 dark:bg-gray-800 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500"},null,512),[[Je,e.personalitySearchQuery]])]),S("div",pUn,[(N(!0),H(xe,null,Pe(e.filteredPersonalities,(o,r)=>(N(),H("div",{key:r,class:"relative group/item flex flex-col items-center"},[S("div",hUn,[S("button",{onClick:oe(i=>e.onPersonalitySelected(o),["prevent"]),title:o.name,class:"w-12 h-12 rounded-md overflow-hidden transition-transform duration-200 transform group-hover/item:scale-105 focus:outline-none"},[S("img",{src:o.avatar,alt:o.name,class:Ee(["w-full h-full object-cover",{"border-2 border-secondary":e.$store.state.active_personality_id==e.$store.state.personalities.indexOf(o.full_path)}])},null,10,gUn)],8,mUn),S("span",{class:"mt-1 text-xs text-center w-full truncate",title:o.name},J(o.name),9,_Un)]),S("div",QUn,[S("span",{class:"text-xs font-medium mb-2 text-center",onClick:oe(i=>e.onPersonalitySelected(o),["prevent"])},J(o.name),9,vUn),S("div",yUn,[S("button",{onClick:oe(i=>e.unmountPersonality(o),["prevent"]),class:"p-1 bg-red-500 rounded-full text-white hover:bg-red-600 focus:outline-none",title:"Unmount"},n[76]||(n[76]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)]),8,bUn),S("button",{onClick:oe(i=>e.remount_personality(o),["prevent"]),class:"p-1 bg-blue-500 rounded-full text-white hover:bg-blue-600 focus:outline-none",title:"Remount"},n[77]||(n[77]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1)]),8,EUn),S("button",{onClick:oe(i=>e.handleOnTalk(o),["prevent"]),class:"p-1 bg-green-500 rounded-full text-white hover:bg-green-600 focus:outline-none",title:"Talk"},n[78]||(n[78]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 10h.01M12 10h.01M16 10h.01M9 16H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-5l-5 5v-5z"})],-1)]),8,SUn)])])]))),128))])],544),[[An,e.isPersonalitiesMenuVisible]]),S("div",xUn,[S("div",{onMouseenter:n[35]||(n[35]=(...o)=>e.showPersonalitiesMenu&&e.showPersonalitiesMenu(...o)),class:"personalities-hover-area"},[ne(Xk,{ref:"mountedPers",onShowPersList:e.onShowPersListFun,onReady:e.onPersonalitiesReadyFun},null,8,["onShowPersList","onReady"])],32)])])],32))])]),S("div",LUn,[S("form",{onSubmit:n[39]||(n[39]=oe((...o)=>e.handleSearch&&e.handleSearch(...o),["prevent"])),class:"relative"},[S("div",CUn,[S("div",AUn,[Le(S("input",{type:"search",id:"default-search",class:"block w-full h-8 px-8 text-sm border border-gray-300 rounded-md bg-bg-light focus:ring-1 focus:ring-secondary focus:border-secondary dark:bg-bg-dark dark:border-gray-600 dark:placeholder-gray-400 dark:focus:ring-secondary dark:focus:border-secondary transition-all duration-200",placeholder:"Search discussions...",title:"Filter discussions by title","onUpdate:modelValue":n[37]||(n[37]=o=>e.filterTitle=o),onKeyup:n[38]||(n[38]=Qn((...o)=>e.handleSearch&&e.handleSearch(...o),["enter"]))},null,544),[[Je,e.filterTitle]]),n[79]||(n[79]=S("div",{class:"absolute left-2 top-1/2 -translate-y-1/2"},[S("i",{"data-feather":"search",class:"w-4 h-4 text-gray-400"})],-1)),n[80]||(n[80]=S("button",{type:"submit",class:"absolute right-2 top-1/2 -translate-y-1/2 text-gray-600 hover:text-secondary rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 focus:ring-1 focus:ring-secondary transition-all duration-150 active:scale-98",title:"Search"},[S("i",{"data-feather":"arrow-right",class:"w-4 h-4"})],-1))])])],32)]),e.isCheckbox?(N(),H("div",wUn,[S("div",OUn,[e.selectedDiscussions.length>0?(N(),H("p",MUn,"Selected: "+J(e.selectedDiscussions.length),1)):Z("",!0),e.selectedDiscussions.length>0?(N(),H("div",RUn,[e.showConfirmation?Z("",!0):(N(),H("button",{key:0,class:"text-2xl hover:text-red-600 duration-75 active:scale-90",title:"Remove selected",type:"button",onClick:n[40]||(n[40]=oe(o=>e.showConfirmation=!0,["stop"]))},n[81]||(n[81]=[S("i",{"data-feather":"trash"},null,-1)]))),e.showConfirmation?(N(),H("div",NUn,[S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Confirm removal",type:"button",onClick:n[41]||(n[41]=oe((...o)=>e.deleteDiscussionMulti&&e.deleteDiscussionMulti(...o),["stop"]))},n[82]||(n[82]=[S("i",{"data-feather":"check"},null,-1)])),S("button",{class:"text-2xl hover:text-red-600 duration-75 active:scale-90",title:"Cancel removal",type:"button",onClick:n[42]||(n[42]=oe(o=>e.showConfirmation=!1,["stop"]))},n[83]||(n[83]=[S("i",{"data-feather":"x"},null,-1)]))])):Z("",!0)])):Z("",!0),S("div",DUn,[S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90 rotate-90",title:"Export selected to a json file",type:"button",onClick:n[43]||(n[43]=oe((...o)=>e.exportDiscussionsAsJson&&e.exportDiscussionsAsJson(...o),["stop"]))},n[84]||(n[84]=[S("i",{"data-feather":"codepen"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90 rotate-90",title:"Export selected to a markdown file",type:"button",onClick:n[44]||(n[44]=oe((...o)=>e.exportDiscussions&&e.exportDiscussions(...o),["stop"]))},n[85]||(n[85]=[S("i",{"data-feather":"folder"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90 rotate-90",title:"Export selected to a markdown file",type:"button",onClick:n[45]||(n[45]=oe((...o)=>e.exportDiscussionsAsMarkdown&&e.exportDiscussionsAsMarkdown(...o),["stop"]))},n[86]||(n[86]=[S("i",{"data-feather":"bookmark"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Select All",type:"button",onClick:n[46]||(n[46]=oe((...o)=>e.selectAllDiscussions&&e.selectAllDiscussions(...o),["stop"]))},n[87]||(n[87]=[S("i",{"data-feather":"list"},null,-1)]))])])])):Z("",!0),S("div",{id:"leftPanel",class:"flex flex-col flex-grow overflow-y-scroll overflow-x-hidden custom-scrollbar",onDragover:n[47]||(n[47]=oe(o=>e.setDropZoneDiscussion(),["stop","prevent"]))},[S("div",IUn,[S("div",{class:Ee(["mx-0 flex flex-col flex-grow w-full",e.isDragOverDiscussion?"pointer-events-none":""])},[S("div",{id:"dis-list",class:Ee([e.filterInProgress?"opacity-20 pointer-events-none":"","flex flex-col flex-grow w-full pb-80"])},[e.discussionsList.length>0?(N(),ot(w2,{key:0,name:"discussionsList"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(e.discussionsList,(o,r)=>(N(),ot(Ch,{key:o.id,id:o.id,title:o.title,selected:e.currentDiscussion.id==o.id,loading:o.loading,isCheckbox:e.isCheckbox,checkBoxValue:o.checkBoxValue,openfolder_enabled:!0,onSelect:i=>e.selectDiscussion(o),onDelete:i=>e.deleteDiscussion(o.id),onOpenFolder:e.openFolder,onEditTitle:e.editTitle,onMakeTitle:e.makeTitle,onChecked:e.checkUncheckDiscussion},null,8,["id","title","selected","loading","isCheckbox","checkBoxValue","onSelect","onDelete","onOpenFolder","onEditTitle","onMakeTitle","onChecked"]))),128))]),_:1})):Z("",!0),e.discussionsList.length<1?(N(),H("div",kUn,n[88]||(n[88]=[S("p",{class:"px-3"},"No discussions are found",-1)]))):Z("",!0)],2)],2)])],32),S("div",HUn,[S("div",{class:"chat-bar text-center flex items-center",onClick:n[48]||(n[48]=(...o)=>e.showDatabaseSelector&&e.showDatabaseSelector(...o))},[ne(b0,null,{default:Ge(()=>n[89]||(n[89]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"mr-2"},[S("ellipse",{cx:"12",cy:"5",rx:"9",ry:"3"}),S("path",{d:"M21 12c0 1.66-4 3-9 3s-9-1.34-9-3"}),S("path",{d:"M3 5v14c0 1.66 4 3 9 3s9-1.34 9-3V5"})],-1)])),_:1}),S("p",PUn,J(e.formatted_database_name.replace("_"," ")),1)])])])):Z("",!0)]),_:1}),e.isReady?(N(),H("div",$Un,[S("div",{id:"messages-list",class:Ee(["w-full z-0 flex flex-col flex-grow overflow-y-auto scrollbar",e.isDragOverChat?"pointer-events-none":""])},[S("div",VUn,[e.discussionArr.length>0?(N(),ot(w2,{key:0,name:"list"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(e.discussionArr,(o,r)=>(N(),ot(kk,{key:o.id,message:o,id:"msg-"+o.id,ref_for:!0,ref:"msg-"+o.id,host:e.host,onCopy:e.copyToClipBoard,onDelete:e.deleteMessage,onRankUp:e.rankUpMessage,onRankDown:e.rankDownMessage,onUpdateMessage:e.updateMessage,onResendMessage:e.resendMessage,onContinueMessage:e.continueMessage,avatar:e.getAvatar(o.sender)},null,8,["message","id","host","onCopy","onDelete","onRankUp","onRankDown","onUpdateMessage","onResendMessage","onContinueMessage","avatar"]))),128)),e.discussionArr.length<2&&e.personality.prompts_list.length>0?(N(),H("div",BUn,[n[94]||(n[94]=S("h2",{class:"text-2xl font-bold mb-6 text-gray-800 dark:text-gray-200"},"Prompt Examples",-1)),S("div",FUn,[S("div",UUn,[(N(!0),H(xe,null,Pe(e.personality.prompts_list,(o,r)=>(N(),H("div",{title:e.extractTitle(o),key:r,onClick:i=>e.handlePromptSelection(o),class:"flex-shrink-0 w-[300px] bg-white dark:bg-gray-800 border border-gray-300 dark:border-gray-600 rounded-lg p-6 cursor-pointer hover:shadow-xl transition-all duration-300 ease-in-out transform hover:scale-105 flex flex-col justify-between min-h-[220px] group"},[S("div",GUn,[S("h3",{class:"font-bold text-lg text-gray-900 dark:text-gray-100 mb-2 truncate",title:e.extractTitle(o)},J(e.extractTitle(o)),9,jUn),S("div",{title:o,class:"text-base text-gray-700 dark:text-gray-300 overflow-hidden line-clamp-4"},J(e.getPromptContent(o)),9,zUn)]),n[90]||(n[90]=S("div",{class:"mt-4 text-sm font-medium text-blue-600 dark:text-blue-400 opacity-0 group-hover:opacity-100 transition-opacity duration-300"}," Click to select ",-1))],8,qUn))),128))])]),e.showPlaceholderModal?(N(),H("div",YUn,[S("div",WUn,[n[93]||(n[93]=S("h3",{class:"text-lg font-semibold mb-4"},"Fill in the placeholders",-1)),S("div",KUn,[S("div",ZUn,[n[91]||(n[91]=S("h4",{class:"text-sm font-medium mb-2 text-gray-600 dark:text-gray-400"},"Live Preview:",-1)),S("div",XUn,[S("span",JUn,J(e.getPromptContent(e.previewPrompt)),1)])]),S("div",eqn,[S("div",tqn,[(N(!0),H(xe,null,Pe(e.parsedPlaceholders,(o,r)=>(N(),H("div",{key:o.fullText,class:"flex flex-col"},[S("label",{for:"placeholder-"+r,class:"text-sm font-medium mb-1"},J(o.label),9,nqn),o.type==="text"?Le((N(),H("input",{key:0,id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,type:"text",class:"border rounded-md p-2 dark:bg-gray-700 dark:border-gray-600",placeholder:o.label,onInput:n[49]||(n[49]=(...i)=>e.updatePreview&&e.updatePreview(...i))},null,40,rqn)),[[Je,e.placeholderValues[r]]]):Z("",!0),o.type==="int"?Le((N(),H("input",{key:1,id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,type:"number",step:"1",class:"border rounded-md p-2 dark:bg-gray-700 dark:border-gray-600",onInput:n[50]||(n[50]=(...i)=>e.updatePreview&&e.updatePreview(...i))},null,40,iqn)),[[Je,e.placeholderValues[r],void 0,{number:!0}]]):Z("",!0),o.type==="float"?Le((N(),H("input",{key:2,id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,type:"number",step:"0.01",class:"border rounded-md p-2 dark:bg-gray-700 dark:border-gray-600",onInput:n[51]||(n[51]=(...i)=>e.updatePreview&&e.updatePreview(...i))},null,40,oqn)),[[Je,e.placeholderValues[r],void 0,{number:!0}]]):Z("",!0),o.type==="multiline"?Le((N(),H("textarea",{key:3,id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,rows:"4",class:"border rounded-md p-2 dark:bg-gray-700 dark:border-gray-600",onInput:n[52]||(n[52]=(...i)=>e.updatePreview&&e.updatePreview(...i))},null,40,sqn)),[[Je,e.placeholderValues[r]]]):Z("",!0),o.type==="code"?(N(),H("div",aqn,[S("div",lqn,J(o.language||"Plain text"),1),Le(S("textarea",{id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,rows:"8",class:"w-full p-2 font-mono bg-gray-100 dark:bg-gray-900 border-t",onInput:n[53]||(n[53]=(...i)=>e.updatePreview&&e.updatePreview(...i))},null,40,cqn),[[Je,e.placeholderValues[r]]])])):Z("",!0),o.type==="options"?Le((N(),H("select",{key:5,id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,class:"border rounded-md p-2 dark:bg-gray-700 dark:border-gray-600",onChange:n[54]||(n[54]=(...i)=>e.updatePreview&&e.updatePreview(...i))},[n[92]||(n[92]=S("option",{value:"",disabled:""},"Select an option",-1)),(N(!0),H(xe,null,Pe(o.options,i=>(N(),H("option",{key:i,value:i},J(i),9,dqn))),128))],40,uqn)),[[Dr,e.placeholderValues[r]]]):Z("",!0)]))),128))])])]),S("div",Tqn,[S("button",{onClick:n[55]||(n[55]=(...o)=>e.cancelPlaceholders&&e.cancelPlaceholders(...o)),class:"px-4 py-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200"}," Cancel "),S("button",{onClick:n[56]||(n[56]=(...o)=>e.applyPlaceholders&&e.applyPlaceholders(...o)),class:"px-4 py-2 bg-blue-500 text-white rounded-md hover:bg-blue-600"}," Apply ")])])])):Z("",!0)])):Z("",!0)]),_:1})):Z("",!0),e.currentDiscussion.id?Z("",!0):(N(),ot(Pk,{key:1})),n[95]||(n[95]=S("div",null,[S("br"),S("br"),S("br"),S("br"),S("br"),S("br"),S("br")],-1))]),n[96]||(n[96]=S("div",{class:"absolute w-full bottom-0 bg-transparent p-10 pt-16 bg-gradient-to-t from-bg-light dark:from-bg-dark from-5% via-bg-light dark:via-bg-dark via-10% to-transparent to-100%"},null,-1))],2),e.currentDiscussion.id?(N(),H("div",fqn,[ne(Hk,{ref:"chatBox",loading:e.isGenerating,discussionList:e.discussionArr,"on-show-toast-message":e.showToastMessage,"on-talk":e.talk,onPersonalitySelected:e.recoverFiles,onMessageSentEvent:e.sendMsg,onSendCMDEvent:e.sendCmd,onAddWebLink:e.add_webpage,onCreateEmptyUserMessage:e.createEmptyUserMessage,onCreateEmptyAIMessage:e.createEmptyAIMessage,onStopGenerating:e.stopGenerating,onLoaded:e.recoverFiles},null,8,["loading","discussionList","on-show-toast-message","on-talk","onPersonalitySelected","onMessageSentEvent","onSendCMDEvent","onAddWebLink","onCreateEmptyUserMessage","onCreateEmptyAIMessage","onStopGenerating","onLoaded"])])):Z("",!0)])):Z("",!0),ne(Nr,{name:"slide-left"},{default:Ge(()=>[e.showRightPanel?(N(),H("div",pqn,[S("div",hqn,null,512)])):Z("",!0)]),_:1}),ne(Lh,{reference:"database_selector",class:"z-20",show:e.database_selectorDialogVisible,choices:e.databases,"can-remove":!0,onChoiceRemoved:e.ondatabase_selectorDialogRemoved,onChoiceSelected:e.ondatabase_selectorDialogSelected,onCloseDialog:e.onclosedatabase_selectorDialog,onChoiceValidated:e.onvalidatedatabase_selectorChoice},null,8,["show","choices","onChoiceRemoved","onChoiceSelected","onCloseDialog","onChoiceValidated"]),Le(S("div",mqn,[ne(lh,{ref:"progress",progress:e.progress_value,class:"w-full h-4"},null,8,["progress"]),S("p",gqn,J(e.loading_infos)+" ...",1)],512),[[An,e.progress_visibility]]),ne(Kk,{ref:"personality_editor",config:e.currentPersonConfig,personality:e.selectedPersonality},null,8,["config","personality"]),S("div",_qn,[ne(Zk,{ref:"news"},null,512)]),ne(Dk,{ref:"skills_lib"},null,512),ne(Jk)],64))}}),bqn=Ye(yqn,[["__scopeId","data-v-0b856c53"]]);let P6;const Eqn=new Uint8Array(16);function Sqn(){if(!P6&&(P6=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!P6))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return P6(Eqn)}const Jn=[];for(let t=0;t<256;++t)Jn.push((t+256).toString(16).slice(1));function xqn(t,e=0){return Jn[t[e+0]]+Jn[t[e+1]]+Jn[t[e+2]]+Jn[t[e+3]]+"-"+Jn[t[e+4]]+Jn[t[e+5]]+"-"+Jn[t[e+6]]+Jn[t[e+7]]+"-"+Jn[t[e+8]]+Jn[t[e+9]]+"-"+Jn[t[e+10]]+Jn[t[e+11]]+Jn[t[e+12]]+Jn[t[e+13]]+Jn[t[e+14]]+Jn[t[e+15]]}const Lqn=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),jO={randomUUID:Lqn};function Q1(t,e,n){if(jO.randomUUID&&!t)return jO.randomUUID();t=t||{};const o=t.random||(t.rng||Sqn)();return o[6]=o[6]&15|64,o[8]=o[8]&63|128,xqn(o)}class C2{constructor(){this.listenerMap=new Map,this._listeners=[],this.proxyMap=new Map,this.proxies=[]}get listeners(){return this._listeners.concat(this.proxies.flatMap(e=>e()))}subscribe(e,n){this.listenerMap.has(e)&&(console.warn(`Already subscribed. Unsubscribing for you. +`+e.message,4,!1)}this.isDragOverChat=!1},async setFileListDiscussion(t){if(t.length>1){this.$store.state.toast.showToast("Failed to import discussions. Too many files",4,!1);return}const e=await this.parseJsonFile(t[0]);await this.import_multiple_discussions(e)?(this.$store.state.toast.showToast("Successfully imported ("+e.length+")",4,!0),await this.list_discussions()):this.$store.state.toast.showToast("Failed to import discussions",4,!1),this.isDragOverDiscussion=!1}},async created(){this.randomFact=this.interestingFacts[Math.floor(Math.random()*this.interestingFacts.length)];const e=(await ce.get("/get_versionID")).data.versionId;Ze.onopen=()=>{this.currentDiscussion!=null&&(this.setPageTitle(this.currentDiscussion.title),localStorage.setItem("selected_discussion",this.currentDiscussion.id),this.load_discussion(this.currentDiscussion.id,()=>{this.discussionArr.length>1&&(this.currentDiscussion.title===""||this.currentDiscussion.title===null)&&this.changeTitleUsingUserMSG(this.currentDiscussion.id,this.discussionArr[1].content)}))},this.versionId!==e&&(this.$store.commit("updateVersionId",e),window.location.reload(!0)),this.$nextTick(()=>{Ce.replace()});try{this.$store.state.loading_infos="Getting version",this.$store.state.loading_progress=30,await this.$store.dispatch("getVersion")}catch(n){console.log("Error cought:",n)}try{for(this.$store.state.loading_infos="Loading Configuration";Ze.id===void 0;)await new Promise(n=>setTimeout(n,100));this.$store.state.client_id=Ze.id,await this.$store.dispatch("refreshConfig")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Loading Database",this.$store.state.loading_progress=20,await this.$store.dispatch("refreshDatabase")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Getting Bindings list",this.$store.state.loading_progress=40,await this.$store.dispatch("refreshBindings")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Getting personalities zoo",this.$store.state.loading_progress=70,await this.$store.dispatch("refreshPersonalitiesZoo")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Getting mounted personalities",this.$store.state.loading_progress=80,await this.$store.dispatch("refreshMountedPersonalities")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Getting models zoo",this.$store.state.loading_progress=90,await this.$store.dispatch("refreshModelsZoo")}catch(n){console.log("Error cought:",n)}try{this.$store.state.loading_infos="Getting active models",this.$store.state.loading_progress=100,await this.$store.dispatch("refreshModels"),await this.$store.dispatch("refreshModelStatus")}catch(n){console.log("Error cought:",n)}try{await this.$store.dispatch("fetchLanguages"),await this.$store.dispatch("fetchLanguage")}catch(n){console.log("Error cought:",n)}try{await this.$store.dispatch("fetchisRTOn")}catch(n){console.log("Error cought:",n)}this.$store.state.isConnected=!0,this.$store.state.client_id=Ze.id,this.setPageTitle(),await this.list_discussions(),this.loadLastUsedDiscussion(),this.isCreated=!0,this.$store.state.ready=!0,Ze.on("connected",this.socketIOConnected),Ze.on("disconnected",this.socketIODisconnected),Ze.on("show_progress",this.show_progress),Ze.on("hide_progress",this.hide_progress),Ze.on("update_progress",this.update_progress),Ze.on("notification",this.notify),Ze.on("new_message",this.new_message),Ze.on("update_message",this.update_message),Ze.on("close_message",this.finalMsgEvent),Ze.on("disucssion_renamed",n=>{const o=this.discussionsList.findIndex(i=>i.id==n.discussion_id),r=this.discussionsList[o];r.title=n.title}),Ze.onclose=n=>{this.socketIODisconnected()},Ze.on("connect_error",n=>{n.message==="ERR_CONNECTION_REFUSED"?console.error("Connection refused. The server is not available."):console.error("Connection error:",n),this.$store.state.isConnected=!1}),Ze.onerror=n=>{console.log("WebSocket connection error:",n.code,n.reason),this.socketIODisconnected(),Ze.disconnect()}},beforeUnmount(){window.removeEventListener("resize",this.adjustMenuPosition)},async mounted(){window.addEventListener("keydown",this.handleShortcut),this.$store.state.news=this.$refs.news,this.$store.state.personality_editor=this.$refs.personality_editor,window.addEventListener("resize",this.adjustMenuPosition),Ze.on("refresh_files",()=>{this.recoverFiles()})},async activated(){for(;this.isReady===!1;)await new Promise(t=>setTimeout(t,100));await this.getPersonalityAvatars(),console.log("Avatars found:",this.personalityAvatars),this.isCreated&&Se(()=>{const t=document.getElementById("messages-list");this.scrollBottom(t)}),this.$store.state.config.show_news_panel&&this.$store.state.news.show()},components:{Discussion:Ch,Message:kk,ChatBox:Hk,WelcomeComponent:Pk,ChoiceDialog:Lh,ProgressBar:lh,SkillsLibraryViewer:Dk,PersonalityEditor:Kk,PopupViewer:Zk,ActionButton:LN,SocialIcon:CN,MountedPersonalities:Xk,ChatBarButton:b0,ChangelogPopup:Jk},watch:{installedModels:{immediate:!0,handler(t){this.$nextTick(()=>{this.installedModels=t})}},"$store.state.config.fun_mode":function(t,e){},"$store.state.isConnected":function(t,e){this.isConnected?this.is_first_connection||(this.$store.state.messageBox.hideMessage(),this.$store.state.messageBox.showMessage("Server connected."),this.$store.state.config.activate_audio_infos&&this.connection_recovered_audio.play()):(this.$store.state.messageBox.showBlockingMessage("Server suddenly disconnected. Please reboot the server to recover the connection"),this.is_first_connection=!1,this.$store.state.config.activate_audio_infos&&this.connection_lost_audio.play()),Se(()=>{Ce.replace()})},messages:{handler:"extractHtml",deep:!0},progress_visibility_val(t){console.log("progress_visibility changed to "+t)},filterTitle(t){t==""&&(this.filterInProgress=!0,this.discussionsList=this.tempList,this.filterInProgress=!1)},isCheckbox(t){Se(()=>{Ce.replace()}),t||(this.isSelectAll=!1)},socketConnected(t){console.log("Websocket connected (watch)",t)},showConfirmation(){Se(()=>{Ce.replace()})}},computed:{shouldShowLollmsParagraphs(){return!(this.$store.state.config&&this.$store.state.config.app_custom_name&&this.$store.state.config.app_custom_name!="")},shouldShowLollmsFunFacts(){return this.$store.state.config&&this.$store.state.config.app_show_fun_facts},parsedPlaceholders(){const t=new Map;return this.placeholders.forEach(e=>{const n=vqn(e);t.set(n.fullText,n)}),Array.from(t.values())},filteredBindings(){return this.installedBindings.filter(t=>t.name.toLowerCase().includes(this.bindingSearchQuery.toLowerCase()))},filteredModels(){return this.installedModels.filter(t=>t.name.toLowerCase().includes(this.modelSearchQuery.toLowerCase()))},filteredPersonalities(){return this.mountedPersonalities.filter(t=>t.name.toLowerCase().includes(this.personalitySearchQuery.toLowerCase()))},currentModel(){return this.$store.state.currentModel||{}},currentModelIcon(){return this.currentModel.icon||this.modelImgPlaceholder},binding_name(){return this.$store.state.config.binding_name},installedModels(){return this.$store.state.installedModels},model_name(){return this.$store.state.config.model_name},mountedPersonalities(){return this.$store.state.mountedPersArr},personality_name(){return this.$store.state.config.active_personality_id},config(){return this.$store.state.config},mountedPers(){return this.$store.state.mountedPers},installedBindings(){return this.$store.state.installedBindings},currentBindingIcon(){return this.currentBinding.icon||this.modelImgPlaceholder},currentBinding(){return this.$store.state.currentBinding||{}},isFullMode(){return this.$store.state.view_mode==="full"},storeLogo(){return this.$store.state.config?Wi:this.$store.state.config.app_custom_logo!=""?"/user_infos/"+this.$store.state.config.app_custom_logo:Wi},currentPersonConfig(){try{return this.$store.state.currentPersonConfig}catch{console.log("Error finding current personality configuration");return}},selectedPersonality(){try{return this.$store.state.selectedPersonality}catch{console.log("Error finding current personality configuration");return}},loading_infos(){return this.$store.state.loading_infos},is_fun_mode(){try{return this.$store.state.config?this.$store.state.config.fun_mode:!1}catch(t){return console.error("Oopsie! Looks like we hit a snag: ",t),!1}},isModelOK(){return this.$store.state.isModelOk},isGenerating(){return this.$store.state.isGenerating},isConnected(){return this.$store.state.isConnected},...FR({versionId:t=>t.versionId}),progress_visibility:{get(){return self.progress_visibility_val}},version_info:{get(){return this.$store.state.version!=null&&this.$store.state.version!="unknown"?this.$store.state.version:"..."}},loading_infos:{get(){return this.$store.state.loading_infos}},loading_progress:{get(){return this.$store.state.loading_progress}},isModelOk:{get(){return this.$store.state.isModelOk},set(t){this.$store.state.isModelOk=t}},isGenerating:{get(){return this.$store.state.isGenerating},set(t){this.$store.state.isGenerating=t}},personality(){const t=this.$store.state.config.personalities[this.$store.state.config.active_personality_id].split(":")[0];return this.$store.state.personalities.find(n=>n.full_path===t)},prompts_list(){return this.personality.prompts_list},formatted_database_name(){return this.$store.state.config.discussion_db_name},UseDiscussionHistory(){return this.$store.state.config.activate_skills_lib},isReady(){return this.$store.state.ready},databases(){return this.$store.state.databases},client_id(){return Ze.id},showLeftPanel(){return console.log("showLeftPanel"),console.log(this.$store.state.leftPanelCollapsed),this.$store.state.ready&&!this.$store.state.leftPanelCollapsed},showRightPanel(){return console.log("showRightPanel"),console.log(this.$store.state.rightPanelCollapsed),this.$store.state.ready&&!this.$store.state.rightPanelCollapsed},socketConnected(){return console.log(" --- > Websocket connected"),this.$store.commit("setIsConnected",!0),!0},socketDisconnected(){return this.$store.commit("setIsConnected",!1),console.log(" --- > Websocket disconnected"),!0},selectedDiscussions(){return Se(()=>{Ce.replace()}),this.discussionsList.filter(t=>t.checkBoxValue==!0)}}},bqn=Object.assign(yqn,{__name:"DiscussionsView",setup(t){return Hr(()=>{Wk()}),ce.defaults.baseURL="/",(e,n)=>(N(),H(xe,null,[ne(Nr,{name:"fade-smooth"},{default:Ge(()=>{var o,r;return[e.isReady?Z("",!0):(N(),H("div",TFn,[e.$store.state.theme_vars.activate_dropping_animation?(N(),H("div",fFn,[(N(),H(xe,null,Pe(60,i=>S("div",{key:i,class:"absolute animate-fall text-xs theme-falling-object-color",style:an({left:`${Math.random()*100}%`,top:"-30px",animationDuration:`${4+Math.random()*8}s`,animationDelay:`${Math.random()*6}s`,opacity:`${.3+Math.random()*.5}`})},J(e.$store.state.theme_vars.falling_object||"·"),5)),64))])):Z("",!0),S("div",pFn,[S("div",hFn,[S("h1",mFn,J(((o=e.$store.state.config)==null?void 0:o.app_custom_name)||e.$store.state.theme_vars.lollms_title||"LoLLMs"),1),S("p",gFn,J(((r=e.$store.state.config)==null?void 0:r.app_custom_slogan)||"One tool to rule them all"),1),e.shouldShowLollmsParagraphs?(N(),H("p",_Fn," by ParisNeo ")):Z("",!0),S("p",QFn,J(e.version_info),1)]),e.shouldShowLollmsFunFacts&&e.randomFact?(N(),H("div",{key:0,class:"mb-8 w-full max-w-xl cursor-pointer rounded-lg border p-4 shadow-lg backdrop-blur-sm transition-all duration-300 theme-card-bg theme-card-border hover:theme-card-bg-hover hover:theme-card-border-hover",onClick:n[0]||(n[0]=(...i)=>e.updateRandomFact&&e.updateRandomFact(...i))},[S("p",vFn,[n[57]||(n[57]=S("span",{class:"font-semibold theme-text-highlight"},"🤔 Fun Fact: ",-1)),S("span",{innerHTML:e.randomFact,class:"italic"},null,8,yFn)])])):Z("",!0),S("div",bFn,[S("div",EFn,[S("div",{class:"h-full rounded-full shadow-md transition-all duration-500 ease-out animated-progressbar-fg",style:an({width:`${e.loading_progress}%`})},null,4)]),S("div",SFn,[(N(),H("p",{class:"mb-1 text-lg transition-opacity duration-300 theme-text-secondary",key:e.loading_infos},J(e.loading_infos)+"... ",1)),S("p",xFn,J(Math.round(e.loading_progress))+"% ",1)])])])]))]}),_:1}),ne(Nr,{name:"slide-right"},{default:Ge(()=>[e.showLeftPanel?(N(),H("div",LFn,[ne(gt(Q5),{to:{name:"discussions"},class:"flex items-center space-x-2"},{default:Ge(()=>[S("div",CFn,[S("img",{class:"w-12 h-12 rounded-full object-cover logo-image",src:e.$store.state.config==null?gt(Wi):e.$store.state.config.app_custom_logo!=null&&e.$store.state.config.app_custom_logo!=""?"/user_infos/"+e.$store.state.config.app_custom_logo:gt(Wi),alt:"Logo",title:e.$store.state.config&&e.$store.state.config.app_custom_name&&e.$store.state.config.app_custom_name!=""?e.$store.state.config.app_custom_logo:"LoLLMS WebUI"},null,8,AFn)]),S("div",wFn,[S("div",OFn,[S("div",MFn,[S("span",RFn,J(e.$store.state.config&&e.$store.state.config.app_custom_name&&e.$store.state.config.app_custom_name!=""?e.$store.state.config.app_custom_name:"LoLLMS WebUI"),1),n[58]||(n[58]=S("div",{class:"absolute -bottom-0.5 left-0 w-full h-0.5 bg-black dark:bg-white transform origin-left transition-transform duration-300 hover:scale-x-100 scale-x-0"},null,-1))])]),S("p",NFn,J(e.$store.state.config&&e.$store.state.config.app_custom_slogan&&e.$store.state.config.app_custom_slogan!=""?e.$store.state.config.app_custom_slogan:"One tool to rule them all"),1)])]),_:1}),S("div",DFn,[S("div",IFn,[S("button",{class:"toolbar-button",title:"Create new discussion",onClick:n[1]||(n[1]=(...o)=>e.createNewDiscussion&&e.createNewDiscussion(...o))},n[59]||(n[59]=[S("i",{"data-feather":"plus"},null,-1)])),e.loading?Z("",!0):(N(),H("div",{key:0,class:"toolbar-button",onMouseleave:n[8]||(n[8]=(...o)=>e.hideSkillsLibraryMenu&&e.hideSkillsLibraryMenu(...o))},[Le(S("div",{onMouseenter:n[6]||(n[6]=(...o)=>e.showSkillsLibraryMenu&&e.showSkillsLibraryMenu(...o)),class:"absolute m-0 p-0 z-50 top-full left-0 transform bg-white dark:bg-bg-dark rounded-lg shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",kFn,[e.loading?Z("",!0):(N(),H("button",{key:0,type:"button",onClick:n[2]||(n[2]=oe((...o)=>e.addDiscussion2SkillsLibrary&&e.addDiscussion2SkillsLibrary(...o),["stop"])),title:"Add this discussion content to skills database",class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95"},n[60]||(n[60]=[S("i",{"data-feather":"plus"},null,-1)]))),!e.loading&&e.$store.state.config.activate_skills_lib?(N(),H("button",{key:1,type:"button",onClick:n[3]||(n[3]=oe((...o)=>e.toggleSkillsLib&&e.toggleSkillsLib(...o),["stop"])),title:"Skills database is activated",class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95"},n[61]||(n[61]=[S("i",{"data-feather":"check-circle"},null,-1)]))):Z("",!0),!e.loading&&!e.$store.state.config.activate_skills_lib?(N(),H("button",{key:2,type:"button",onClick:n[4]||(n[4]=oe((...o)=>e.toggleSkillsLib&&e.toggleSkillsLib(...o),["stop"])),title:"Skills database is deactivated",class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95"},n[62]||(n[62]=[S("i",{"data-feather":"x-octagon"},null,-1)]))):Z("",!0),e.loading?Z("",!0):(N(),H("button",{key:3,type:"button",onClick:n[5]||(n[5]=oe((...o)=>e.showSkillsLib&&e.showSkillsLib(...o),["stop"])),title:"Show Skills database",class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95"},n[63]||(n[63]=[S("i",{"data-feather":"book"},null,-1)])))])],544),[[An,e.isSkillsLibraryMenuVisible]]),S("div",{onMouseenter:n[7]||(n[7]=(...o)=>e.showSkillsLibraryMenu&&e.showSkillsLibraryMenu(...o)),class:"menu-hover-area"},n[64]||(n[64]=[S("button",{class:"w-8 h-8",title:"Toggle Skills library menu"},[S("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M4 4v16h16V4H4zm2 2h12v12H6V6zm2 2h2v8H8V8zm3 0h2v8h-2V8zm3 0h2v8h-2V8z",fill:"currentColor"})])],-1)]),32)],32)),e.loading?Z("",!0):(N(),H("div",{key:1,class:"toolbar-button",onMouseleave:n[22]||(n[22]=(...o)=>e.hideMenu&&e.hideMenu(...o))},[Le(S("div",{onMouseenter:n[20]||(n[20]=(...o)=>e.showMenu&&e.showMenu(...o)),class:"absolute m-0 p-0 z-50 top-full left-0 transform bg-white dark:bg-bg-dark rounded-lg shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",HFn,[S("button",{class:Ee(["text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95",e.isCheckbox?"text-secondary dark:text-secondary-light":"text-gray-700 dark:text-gray-300"]),title:"Edit discussion list",type:"button",onClick:n[9]||(n[9]=o=>e.isCheckbox=!e.isCheckbox)},n[65]||(n[65]=[S("i",{"data-feather":"check-square"},null,-1)]),2),S("button",{class:"text-3xl hover:text-red-500 dark:hover:text-red-400 duration-150 active:scale-95",title:"Reset database, remove all discussions",onClick:n[10]||(n[10]=oe(()=>{},["stop"]))},n[66]||(n[66]=[S("i",{"data-feather":"trash-2"},null,-1)])),S("button",{class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95",title:"Export database",type:"button",onClick:n[11]||(n[11]=oe(o=>e.database_selectorDialogVisible=!0,["stop"]))},n[67]||(n[67]=[S("i",{"data-feather":"database"},null,-1)])),S("div",PFn,[S("input",{type:"file",ref:"fileDialog",class:"hidden",onChange:n[12]||(n[12]=(...o)=>e.importDiscussions&&e.importDiscussions(...o))},null,544),S("button",{class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95 rotate-90",title:"Import discussions",type:"button",onClick:n[13]||(n[13]=oe(o=>e.$refs.fileDialog.click(),["stop"]))},n[68]||(n[68]=[S("i",{"data-feather":"log-in"},null,-1)]))]),S("div",$Fn,[S("input",{type:"file",ref:"bundleLoadingDialog",class:"hidden",onChange:n[14]||(n[14]=(...o)=>e.importDiscussionsBundle&&e.importDiscussionsBundle(...o))},null,544),e.showSaveConfirmation?Z("",!0):(N(),H("button",{key:0,title:"Import discussion bundle",onClick:n[15]||(n[15]=oe(o=>e.$refs.bundleLoadingDialog.click(),["stop"])),class:"text-3xl hover:text-secondary dark:hover:text-secondary-light duration-150 active:scale-95"},n[69]||(n[69]=[S("i",{"data-feather":"folder"},null,-1)])))]),e.loading?(N(),H("div",VFn,n[70]||(n[70]=[S("div",{role:"status"},[S("svg",{"aria-hidden":"true",class:"w-8 h-8 animate-spin fill-secondary dark:fill-secondary-light",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[S("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),S("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})]),S("span",{class:"sr-only"},"Loading...")],-1)]))):Z("",!0),e.showSaveConfirmation?(N(),H("div",BFn,[S("button",{class:"text-3xl hover:text-red-500 dark:hover:text-red-400 duration-150 active:scale-95",title:"Cancel",type:"button",onClick:n[16]||(n[16]=oe(o=>e.showSaveConfirmation=!1,["stop"]))},n[71]||(n[71]=[S("i",{"data-feather":"x"},null,-1)])),S("button",{class:"text-3xl hover:text-green-500 dark:hover:text-green-400 duration-150 active:scale-95",title:"Confirm save changes",type:"button",onClick:n[17]||(n[17]=oe(o=>e.save_configuration(),["stop"]))},n[72]||(n[72]=[S("i",{"data-feather":"check"},null,-1)]))])):Z("",!0),e.isOpen?(N(),H("div",FFn,[S("button",{onClick:n[18]||(n[18]=(...o)=>e.importDiscussions&&e.importDiscussions(...o)),class:"text-sm hover:text-secondary dark:hover:text-secondary-light"},"LOLLMS"),S("button",{onClick:n[19]||(n[19]=(...o)=>e.importChatGPT&&e.importChatGPT(...o)),class:"text-sm hover:text-secondary dark:hover:text-secondary-light"},"ChatGPT")])):Z("",!0)])],544),[[An,e.isMenuVisible]]),S("div",{onMouseenter:n[21]||(n[21]=(...o)=>e.showMenu&&e.showMenu(...o)),class:"menu-hover-area"},n[73]||(n[73]=[S("button",{class:"w-8 h-8",title:"Toggle menu"},[S("i",{"data-feather":"menu"})],-1)]),32)],32)),e.loading?Z("",!0):(N(),H("div",{key:2,class:"toolbar-button",onMouseleave:n[27]||(n[27]=(...o)=>e.hideBindingsMenu&&e.hideBindingsMenu(...o))},[S("div",UFn,[Le(S("div",{onMouseenter:n[24]||(n[24]=(...o)=>e.showBindingsMenu&&e.showBindingsMenu(...o)),class:"absolute m-0 p-0 z-10 top-full left-0 transform w-80 bg-white dark:bg-gray-900 rounded-md shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",qFn,[Le(S("input",{type:"text","onUpdate:modelValue":n[23]||(n[23]=o=>e.bindingSearchQuery=o),placeholder:"Search bindings...",class:"w-full px-3 py-2 rounded-md border border-gray-300 dark:border-gray-600 dark:bg-gray-800 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500"},null,512),[[Je,e.bindingSearchQuery]])]),S("div",GFn,[(N(!0),H(xe,null,Pe(e.filteredBindings,(o,r)=>(N(),H("div",{key:r,class:"relative group/item flex flex-col items-center"},[S("div",jFn,[S("button",{onClick:oe(i=>e.setBinding(o),["prevent"]),title:o.name,class:"w-12 h-12 rounded-md overflow-hidden transition-transform duration-200 transform group-hover/item:scale-105 focus:outline-none"},[S("img",{src:o.icon?o.icon:gt(Y1),alt:o.name,class:Ee(["w-full h-full object-cover",{"border-2 border-secondary":o.name==e.binding_name}])},null,10,YFn)],8,zFn),S("span",{class:"mt-1 text-xs text-center w-full truncate",title:o.name},J(o.name),9,WFn)]),S("div",KFn,[S("span",{class:"text-xs font-medium mb-2 text-center",onClick:oe(i=>e.setBinding(o),["prevent"])},J(o.name),9,ZFn),S("div",XFn,[S("button",{onClick:oe(i=>e.showModelConfig(o),["prevent"]),class:"p-1 bg-blue-500 rounded-full text-white hover:bg-blue-600 focus:outline-none",title:"Configure Binding"},n[74]||(n[74]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z"}),S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z"})],-1)]),8,JFn)])])]))),128))])],544),[[An,e.isBindingsMenuVisible]]),S("div",{onMouseenter:n[26]||(n[26]=(...o)=>e.showBindingsMenu&&e.showBindingsMenu(...o)),class:"bindings-hover-area"},[S("button",{onClick:n[25]||(n[25]=oe(o=>e.showModelConfig(),["prevent"])),class:"w-6 h-6"},[S("img",{src:e.currentBindingIcon,class:"w-6 h-6 rounded-full object-fill text-red-700 border-2 active:scale-90 hover:border-secondary hover:scale-110 hover:-translate-y-1 duration-200",title:e.currentBinding?e.currentBinding.name:"unknown"},null,8,eUn)])],32)])],32)),e.loading?Z("",!0):(N(),H("div",{key:3,class:"toolbar-button",onMouseleave:n[32]||(n[32]=(...o)=>e.hideModelsMenu&&e.hideModelsMenu(...o))},[S("div",tUn,[Le(S("div",{onMouseenter:n[29]||(n[29]=(...o)=>e.showModelsMenu&&e.showModelsMenu(...o)),class:"absolute m-0 p-0 z-10 top-full left-0 transform w-80 bg-white dark:bg-gray-900 rounded-md shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",nUn,[Le(S("input",{type:"text","onUpdate:modelValue":n[28]||(n[28]=o=>e.modelSearchQuery=o),placeholder:"Search models...",class:"w-full px-3 py-2 rounded-md border border-gray-300 dark:border-gray-600 dark:bg-gray-800 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500"},null,512),[[Je,e.modelSearchQuery]])]),S("div",rUn,[(N(!0),H(xe,null,Pe(e.filteredModels,(o,r)=>(N(),H("div",{key:r,class:"relative group/item flex flex-col items-center"},[S("div",iUn,[S("button",{onClick:oe(i=>e.setModel(o),["prevent"]),title:o.name,class:"w-12 h-12 rounded-md overflow-hidden transition-transform duration-200 transform group-hover/item:scale-105 focus:outline-none"},[S("img",{src:o.icon?o.icon:gt(Y1),alt:o.name,class:Ee(["w-full h-full object-cover",{"border-2 border-secondary":o.name==e.model_name}])},null,10,sUn)],8,oUn),S("span",{class:"mt-1 text-xs text-center w-full truncate",title:o.name},J(o.name),9,aUn)]),S("div",lUn,[S("span",{class:"text-xs font-medium mb-2 text-center",onClick:oe(i=>e.setModel(o),["prevent"])},J(o.name),9,cUn),S("div",uUn,[S("button",{onClick:oe(i=>e.copyModelNameFrom(o.name),["prevent"]),class:"p-1 bg-blue-500 rounded-full text-white hover:bg-blue-600 focus:outline-none",title:"Copy Model Name"},n[75]||(n[75]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})],-1)]),8,dUn)])])]))),128))])],544),[[An,e.isModelsMenuVisible]]),S("div",{onMouseenter:n[31]||(n[31]=(...o)=>e.showModelsMenu&&e.showModelsMenu(...o)),class:"models-hover-area"},[S("button",{onClick:n[30]||(n[30]=oe(o=>e.copyModelName(),["prevent"])),class:"w-6 h-6"},[S("img",{src:e.currentModelIcon,class:"w-6 h-6 rounded-full object-fill text-red-700 border-2 active:scale-90 hover:border-secondary hover:scale-110 hover:-translate-y-1 duration-400",title:e.currentModel?e.currentModel.name:"unknown"},null,8,TUn)])],32)])],32)),e.loading?Z("",!0):(N(),H("div",{key:4,class:"toolbar-button",onMouseleave:n[36]||(n[36]=(...o)=>e.hidePersonalitiesMenu&&e.hidePersonalitiesMenu(...o))},[S("div",fUn,[Le(S("div",{onMouseenter:n[34]||(n[34]=(...o)=>e.showPersonalitiesMenu&&e.showPersonalitiesMenu(...o)),class:"absolute m-0 p-0 z-10 top-full left-0 transform w-80 bg-white dark:bg-gray-900 rounded-md shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none transition-all duration-300 ease-out mb-2"},[S("div",pUn,[Le(S("input",{type:"text","onUpdate:modelValue":n[33]||(n[33]=o=>e.personalitySearchQuery=o),placeholder:"Search personalities...",class:"w-full px-3 py-2 rounded-md border border-gray-300 dark:border-gray-600 dark:bg-gray-800 dark:text-white focus:outline-none focus:ring-2 focus:ring-blue-500"},null,512),[[Je,e.personalitySearchQuery]])]),S("div",hUn,[(N(!0),H(xe,null,Pe(e.filteredPersonalities,(o,r)=>(N(),H("div",{key:r,class:"relative group/item flex flex-col items-center"},[S("div",mUn,[S("button",{onClick:oe(i=>e.onPersonalitySelected(o),["prevent"]),title:o.name,class:"w-12 h-12 rounded-md overflow-hidden transition-transform duration-200 transform group-hover/item:scale-105 focus:outline-none"},[S("img",{src:o.avatar,alt:o.name,class:Ee(["w-full h-full object-cover",{"border-2 border-secondary":e.$store.state.active_personality_id==e.$store.state.personalities.indexOf(o.full_path)}])},null,10,_Un)],8,gUn),S("span",{class:"mt-1 text-xs text-center w-full truncate",title:o.name},J(o.name),9,QUn)]),S("div",vUn,[S("span",{class:"text-xs font-medium mb-2 text-center",onClick:oe(i=>e.onPersonalitySelected(o),["prevent"])},J(o.name),9,yUn),S("div",bUn,[S("button",{onClick:oe(i=>e.unmountPersonality(o),["prevent"]),class:"p-1 bg-red-500 rounded-full text-white hover:bg-red-600 focus:outline-none",title:"Unmount"},n[76]||(n[76]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)]),8,EUn),S("button",{onClick:oe(i=>e.remount_personality(o),["prevent"]),class:"p-1 bg-blue-500 rounded-full text-white hover:bg-blue-600 focus:outline-none",title:"Remount"},n[77]||(n[77]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1)]),8,SUn),S("button",{onClick:oe(i=>e.handleOnTalk(o),["prevent"]),class:"p-1 bg-green-500 rounded-full text-white hover:bg-green-600 focus:outline-none",title:"Talk"},n[78]||(n[78]=[S("svg",{class:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 10h.01M12 10h.01M16 10h.01M9 16H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-5l-5 5v-5z"})],-1)]),8,xUn)])])]))),128))])],544),[[An,e.isPersonalitiesMenuVisible]]),S("div",LUn,[S("div",{onMouseenter:n[35]||(n[35]=(...o)=>e.showPersonalitiesMenu&&e.showPersonalitiesMenu(...o)),class:"personalities-hover-area"},[ne(Xk,{ref:"mountedPers",onShowPersList:e.onShowPersListFun,onReady:e.onPersonalitiesReadyFun},null,8,["onShowPersList","onReady"])],32)])])],32))])]),S("div",CUn,[S("form",{onSubmit:n[39]||(n[39]=oe((...o)=>e.handleSearch&&e.handleSearch(...o),["prevent"])),class:"relative"},[S("div",AUn,[S("div",wUn,[Le(S("input",{type:"search",id:"default-search",class:"block w-full h-8 px-8 text-sm border border-gray-300 rounded-md bg-bg-light focus:ring-1 focus:ring-secondary focus:border-secondary dark:bg-bg-dark dark:border-gray-600 dark:placeholder-gray-400 dark:focus:ring-secondary dark:focus:border-secondary transition-all duration-200",placeholder:"Search discussions...",title:"Filter discussions by title","onUpdate:modelValue":n[37]||(n[37]=o=>e.filterTitle=o),onKeyup:n[38]||(n[38]=Qn((...o)=>e.handleSearch&&e.handleSearch(...o),["enter"]))},null,544),[[Je,e.filterTitle]]),n[79]||(n[79]=S("div",{class:"absolute left-2 top-1/2 -translate-y-1/2"},[S("i",{"data-feather":"search",class:"w-4 h-4 text-gray-400"})],-1)),n[80]||(n[80]=S("button",{type:"submit",class:"absolute right-2 top-1/2 -translate-y-1/2 text-gray-600 hover:text-secondary rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 focus:ring-1 focus:ring-secondary transition-all duration-150 active:scale-98",title:"Search"},[S("i",{"data-feather":"arrow-right",class:"w-4 h-4"})],-1))])])],32)]),e.isCheckbox?(N(),H("div",OUn,[S("div",MUn,[e.selectedDiscussions.length>0?(N(),H("p",RUn,"Selected: "+J(e.selectedDiscussions.length),1)):Z("",!0),e.selectedDiscussions.length>0?(N(),H("div",NUn,[e.showConfirmation?Z("",!0):(N(),H("button",{key:0,class:"text-2xl hover:text-red-600 duration-75 active:scale-90",title:"Remove selected",type:"button",onClick:n[40]||(n[40]=oe(o=>e.showConfirmation=!0,["stop"]))},n[81]||(n[81]=[S("i",{"data-feather":"trash"},null,-1)]))),e.showConfirmation?(N(),H("div",DUn,[S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Confirm removal",type:"button",onClick:n[41]||(n[41]=oe((...o)=>e.deleteDiscussionMulti&&e.deleteDiscussionMulti(...o),["stop"]))},n[82]||(n[82]=[S("i",{"data-feather":"check"},null,-1)])),S("button",{class:"text-2xl hover:text-red-600 duration-75 active:scale-90",title:"Cancel removal",type:"button",onClick:n[42]||(n[42]=oe(o=>e.showConfirmation=!1,["stop"]))},n[83]||(n[83]=[S("i",{"data-feather":"x"},null,-1)]))])):Z("",!0)])):Z("",!0),S("div",IUn,[S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90 rotate-90",title:"Export selected to a json file",type:"button",onClick:n[43]||(n[43]=oe((...o)=>e.exportDiscussionsAsJson&&e.exportDiscussionsAsJson(...o),["stop"]))},n[84]||(n[84]=[S("i",{"data-feather":"codepen"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90 rotate-90",title:"Export selected to a markdown file",type:"button",onClick:n[44]||(n[44]=oe((...o)=>e.exportDiscussions&&e.exportDiscussions(...o),["stop"]))},n[85]||(n[85]=[S("i",{"data-feather":"folder"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90 rotate-90",title:"Export selected to a markdown file",type:"button",onClick:n[45]||(n[45]=oe((...o)=>e.exportDiscussionsAsMarkdown&&e.exportDiscussionsAsMarkdown(...o),["stop"]))},n[86]||(n[86]=[S("i",{"data-feather":"bookmark"},null,-1)])),S("button",{class:"text-2xl hover:text-secondary duration-75 active:scale-90",title:"Select All",type:"button",onClick:n[46]||(n[46]=oe((...o)=>e.selectAllDiscussions&&e.selectAllDiscussions(...o),["stop"]))},n[87]||(n[87]=[S("i",{"data-feather":"list"},null,-1)]))])])])):Z("",!0),S("div",{id:"leftPanel",class:"flex flex-col flex-grow overflow-y-scroll overflow-x-hidden custom-scrollbar",onDragover:n[47]||(n[47]=oe(o=>e.setDropZoneDiscussion(),["stop","prevent"]))},[S("div",kUn,[S("div",{class:Ee(["mx-0 flex flex-col flex-grow w-full",e.isDragOverDiscussion?"pointer-events-none":""])},[S("div",{id:"dis-list",class:Ee([e.filterInProgress?"opacity-20 pointer-events-none":"","flex flex-col flex-grow w-full pb-80"])},[e.discussionsList.length>0?(N(),ot(w2,{key:0,name:"discussionsList"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(e.discussionsList,(o,r)=>(N(),ot(Ch,{key:o.id,id:o.id,title:o.title,selected:e.currentDiscussion.id==o.id,loading:o.loading,isCheckbox:e.isCheckbox,checkBoxValue:o.checkBoxValue,openfolder_enabled:!0,onSelect:i=>e.selectDiscussion(o),onDelete:i=>e.deleteDiscussion(o.id),onOpenFolder:e.openFolder,onEditTitle:e.editTitle,onMakeTitle:e.makeTitle,onChecked:e.checkUncheckDiscussion},null,8,["id","title","selected","loading","isCheckbox","checkBoxValue","onSelect","onDelete","onOpenFolder","onEditTitle","onMakeTitle","onChecked"]))),128))]),_:1})):Z("",!0),e.discussionsList.length<1?(N(),H("div",HUn,n[88]||(n[88]=[S("p",{class:"px-3"},"No discussions are found",-1)]))):Z("",!0)],2)],2)])],32),S("div",PUn,[S("div",{class:"chat-bar text-center flex items-center",onClick:n[48]||(n[48]=(...o)=>e.showDatabaseSelector&&e.showDatabaseSelector(...o))},[ne(b0,null,{default:Ge(()=>n[89]||(n[89]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"mr-2"},[S("ellipse",{cx:"12",cy:"5",rx:"9",ry:"3"}),S("path",{d:"M21 12c0 1.66-4 3-9 3s-9-1.34-9-3"}),S("path",{d:"M3 5v14c0 1.66 4 3 9 3s9-1.34 9-3V5"})],-1)])),_:1}),S("p",$Un,J(e.formatted_database_name.replace("_"," ")),1)])])])):Z("",!0)]),_:1}),e.isReady?(N(),H("div",VUn,[S("div",{id:"messages-list",class:Ee(["w-full z-0 flex flex-col flex-grow overflow-y-auto scrollbar",e.isDragOverChat?"pointer-events-none":""])},[S("div",BUn,[e.discussionArr.length>0?(N(),ot(w2,{key:0,name:"list"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(e.discussionArr,(o,r)=>(N(),ot(kk,{key:o.id,message:o,id:"msg-"+o.id,ref_for:!0,ref:"msg-"+o.id,host:e.host,onCopy:e.copyToClipBoard,onDelete:e.deleteMessage,onRankUp:e.rankUpMessage,onRankDown:e.rankDownMessage,onUpdateMessage:e.updateMessage,onResendMessage:e.resendMessage,onContinueMessage:e.continueMessage,avatar:e.getAvatar(o.sender)},null,8,["message","id","host","onCopy","onDelete","onRankUp","onRankDown","onUpdateMessage","onResendMessage","onContinueMessage","avatar"]))),128)),e.discussionArr.length<2&&e.personality.prompts_list.length>0?(N(),H("div",FUn,[n[94]||(n[94]=S("h2",{class:"text-2xl font-bold mb-6 text-gray-800 dark:text-gray-200"},"Prompt Examples",-1)),S("div",UUn,[S("div",qUn,[(N(!0),H(xe,null,Pe(e.personality.prompts_list,(o,r)=>(N(),H("div",{title:e.extractTitle(o),key:r,onClick:i=>e.handlePromptSelection(o),class:"flex-shrink-0 w-[300px] bg-white dark:bg-gray-800 border border-gray-300 dark:border-gray-600 rounded-lg p-6 cursor-pointer hover:shadow-xl transition-all duration-300 ease-in-out transform hover:scale-105 flex flex-col justify-between min-h-[220px] group"},[S("div",jUn,[S("h3",{class:"font-bold text-lg text-gray-900 dark:text-gray-100 mb-2 truncate",title:e.extractTitle(o)},J(e.extractTitle(o)),9,zUn),S("div",{title:o,class:"text-base text-gray-700 dark:text-gray-300 overflow-hidden line-clamp-4"},J(e.getPromptContent(o)),9,YUn)]),n[90]||(n[90]=S("div",{class:"mt-4 text-sm font-medium text-blue-600 dark:text-blue-400 opacity-0 group-hover:opacity-100 transition-opacity duration-300"}," Click to select ",-1))],8,GUn))),128))])]),e.showPlaceholderModal?(N(),H("div",WUn,[S("div",KUn,[n[93]||(n[93]=S("h3",{class:"text-lg font-semibold mb-4"},"Fill in the placeholders",-1)),S("div",ZUn,[S("div",XUn,[n[91]||(n[91]=S("h4",{class:"text-sm font-medium mb-2 text-gray-600 dark:text-gray-400"},"Live Preview:",-1)),S("div",JUn,[S("span",eqn,J(e.getPromptContent(e.previewPrompt)),1)])]),S("div",tqn,[S("div",nqn,[(N(!0),H(xe,null,Pe(e.parsedPlaceholders,(o,r)=>(N(),H("div",{key:o.fullText,class:"flex flex-col"},[S("label",{for:"placeholder-"+r,class:"text-sm font-medium mb-1"},J(o.label),9,rqn),o.type==="text"?Le((N(),H("input",{key:0,id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,type:"text",class:"border rounded-md p-2 dark:bg-gray-700 dark:border-gray-600",placeholder:o.label,onInput:n[49]||(n[49]=(...i)=>e.updatePreview&&e.updatePreview(...i))},null,40,iqn)),[[Je,e.placeholderValues[r]]]):Z("",!0),o.type==="int"?Le((N(),H("input",{key:1,id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,type:"number",step:"1",class:"border rounded-md p-2 dark:bg-gray-700 dark:border-gray-600",onInput:n[50]||(n[50]=(...i)=>e.updatePreview&&e.updatePreview(...i))},null,40,oqn)),[[Je,e.placeholderValues[r],void 0,{number:!0}]]):Z("",!0),o.type==="float"?Le((N(),H("input",{key:2,id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,type:"number",step:"0.01",class:"border rounded-md p-2 dark:bg-gray-700 dark:border-gray-600",onInput:n[51]||(n[51]=(...i)=>e.updatePreview&&e.updatePreview(...i))},null,40,sqn)),[[Je,e.placeholderValues[r],void 0,{number:!0}]]):Z("",!0),o.type==="multiline"?Le((N(),H("textarea",{key:3,id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,rows:"4",class:"border rounded-md p-2 dark:bg-gray-700 dark:border-gray-600",onInput:n[52]||(n[52]=(...i)=>e.updatePreview&&e.updatePreview(...i))},null,40,aqn)),[[Je,e.placeholderValues[r]]]):Z("",!0),o.type==="code"?(N(),H("div",lqn,[S("div",cqn,J(o.language||"Plain text"),1),Le(S("textarea",{id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,rows:"8",class:"w-full p-2 font-mono bg-gray-100 dark:bg-gray-900 border-t",onInput:n[53]||(n[53]=(...i)=>e.updatePreview&&e.updatePreview(...i))},null,40,uqn),[[Je,e.placeholderValues[r]]])])):Z("",!0),o.type==="options"?Le((N(),H("select",{key:5,id:"placeholder-"+r,"onUpdate:modelValue":i=>e.placeholderValues[r]=i,class:"border rounded-md p-2 dark:bg-gray-700 dark:border-gray-600",onChange:n[54]||(n[54]=(...i)=>e.updatePreview&&e.updatePreview(...i))},[n[92]||(n[92]=S("option",{value:"",disabled:""},"Select an option",-1)),(N(!0),H(xe,null,Pe(o.options,i=>(N(),H("option",{key:i,value:i},J(i),9,Tqn))),128))],40,dqn)),[[Dr,e.placeholderValues[r]]]):Z("",!0)]))),128))])])]),S("div",fqn,[S("button",{onClick:n[55]||(n[55]=(...o)=>e.cancelPlaceholders&&e.cancelPlaceholders(...o)),class:"px-4 py-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200"}," Cancel "),S("button",{onClick:n[56]||(n[56]=(...o)=>e.applyPlaceholders&&e.applyPlaceholders(...o)),class:"px-4 py-2 bg-blue-500 text-white rounded-md hover:bg-blue-600"}," Apply ")])])])):Z("",!0)])):Z("",!0)]),_:1})):Z("",!0),e.currentDiscussion.id?Z("",!0):(N(),ot(Pk,{key:1})),n[95]||(n[95]=S("div",null,[S("br"),S("br"),S("br"),S("br"),S("br"),S("br"),S("br")],-1))]),n[96]||(n[96]=S("div",{class:"absolute w-full bottom-0 bg-transparent p-10 pt-16 bg-gradient-to-t from-bg-light dark:from-bg-dark from-5% via-bg-light dark:via-bg-dark via-10% to-transparent to-100%"},null,-1))],2),e.currentDiscussion.id?(N(),H("div",pqn,[ne(Hk,{ref:"chatBox",loading:e.isGenerating,discussionList:e.discussionArr,"on-show-toast-message":e.showToastMessage,"on-talk":e.talk,onPersonalitySelected:e.recoverFiles,onMessageSentEvent:e.sendMsg,onSendCMDEvent:e.sendCmd,onAddWebLink:e.add_webpage,onCreateEmptyUserMessage:e.createEmptyUserMessage,onCreateEmptyAIMessage:e.createEmptyAIMessage,onStopGenerating:e.stopGenerating,onLoaded:e.recoverFiles},null,8,["loading","discussionList","on-show-toast-message","on-talk","onPersonalitySelected","onMessageSentEvent","onSendCMDEvent","onAddWebLink","onCreateEmptyUserMessage","onCreateEmptyAIMessage","onStopGenerating","onLoaded"])])):Z("",!0)])):Z("",!0),ne(Nr,{name:"slide-left"},{default:Ge(()=>[e.showRightPanel?(N(),H("div",hqn,[S("div",mqn,null,512)])):Z("",!0)]),_:1}),ne(Lh,{reference:"database_selector",class:"z-20",show:e.database_selectorDialogVisible,choices:e.databases,"can-remove":!0,onChoiceRemoved:e.ondatabase_selectorDialogRemoved,onChoiceSelected:e.ondatabase_selectorDialogSelected,onCloseDialog:e.onclosedatabase_selectorDialog,onChoiceValidated:e.onvalidatedatabase_selectorChoice},null,8,["show","choices","onChoiceRemoved","onChoiceSelected","onCloseDialog","onChoiceValidated"]),Le(S("div",gqn,[ne(lh,{ref:"progress",progress:e.progress_value,class:"w-full h-4"},null,8,["progress"]),S("p",_qn,J(e.loading_infos)+" ...",1)],512),[[An,e.progress_visibility]]),ne(Kk,{ref:"personality_editor",config:e.currentPersonConfig,personality:e.selectedPersonality},null,8,["config","personality"]),S("div",Qqn,[ne(Zk,{ref:"news"},null,512)]),ne(Dk,{ref:"skills_lib"},null,512),ne(Jk)],64))}}),Eqn=Ye(bqn,[["__scopeId","data-v-0b856c53"]]);let P6;const Sqn=new Uint8Array(16);function xqn(){if(!P6&&(P6=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!P6))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return P6(Sqn)}const Jn=[];for(let t=0;t<256;++t)Jn.push((t+256).toString(16).slice(1));function Lqn(t,e=0){return Jn[t[e+0]]+Jn[t[e+1]]+Jn[t[e+2]]+Jn[t[e+3]]+"-"+Jn[t[e+4]]+Jn[t[e+5]]+"-"+Jn[t[e+6]]+Jn[t[e+7]]+"-"+Jn[t[e+8]]+Jn[t[e+9]]+"-"+Jn[t[e+10]]+Jn[t[e+11]]+Jn[t[e+12]]+Jn[t[e+13]]+Jn[t[e+14]]+Jn[t[e+15]]}const Cqn=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),jO={randomUUID:Cqn};function Q1(t,e,n){if(jO.randomUUID&&!t)return jO.randomUUID();t=t||{};const o=t.random||(t.rng||xqn)();return o[6]=o[6]&15|64,o[8]=o[8]&63|128,Lqn(o)}class C2{constructor(){this.listenerMap=new Map,this._listeners=[],this.proxyMap=new Map,this.proxies=[]}get listeners(){return this._listeners.concat(this.proxies.flatMap(e=>e()))}subscribe(e,n){this.listenerMap.has(e)&&(console.warn(`Already subscribed. Unsubscribing for you. Please check that you don't accidentally use the same token twice to register two different handlers for the same event/hook.`),this.unsubscribe(e)),this.listenerMap.set(e,n),this._listeners.push(n)}unsubscribe(e){if(this.listenerMap.has(e)){const n=this.listenerMap.get(e);this.listenerMap.delete(e);const o=this._listeners.indexOf(n);o>=0&&this._listeners.splice(o,1)}}registerProxy(e,n){this.proxyMap.has(e)&&(console.warn(`Already subscribed. Unsubscribing for you. -Please check that you don't accidentally use the same token twice to register two different proxies for the same event/hook.`),this.unregisterProxy(e)),this.proxyMap.set(e,n),this.proxies.push(n)}unregisterProxy(e){if(!this.proxyMap.has(e))return;const n=this.proxyMap.get(e);this.proxyMap.delete(e);const o=this.proxies.indexOf(n);o>=0&&this.proxies.splice(o,1)}}class Jt extends C2{constructor(e){super(),this.entity=e}emit(e){this.listeners.forEach(n=>n(e,this.entity))}}class dr extends C2{constructor(e){super(),this.entity=e}emit(e){let n=!1;const o=()=>[n=!0];for(const r of Array.from(this.listeners.values()))if(r(e,o,this.entity),n)return{prevented:!0};return{prevented:!1}}}class eH extends C2{execute(e,n){let o=e;for(const r of this.listeners)o=r(o,n);return o}}class Ci extends eH{constructor(e){super(),this.entity=e}execute(e){return super.execute(e,this.entity)}}class Cqn extends C2{constructor(e){super(),this.entity=e}execute(e){const n=[];for(const o of this.listeners)n.push(o(e,this.entity));return n}}function Jo(){const t=Symbol(),e=new Map,n=new Set,o=(l,c)=>{c instanceof C2&&c.registerProxy(t,()=>{var u,d;return(d=(u=e.get(l))===null||u===void 0?void 0:u.listeners)!==null&&d!==void 0?d:[]})},r=l=>{const c=new C2;e.set(l,c),n.forEach(u=>o(l,u[l]))},i=l=>{n.add(l);for(const c of e.keys())o(c,l[c])},s=l=>{for(const c of e.keys())l[c]instanceof C2&&l[c].unregisterProxy(t);n.delete(l)},a=()=>{n.forEach(l=>s(l)),e.clear()};return new Proxy({},{get(l,c){return c==="addTarget"?i:c==="removeTarget"?s:c==="destroy"?a:typeof c!="string"||c.startsWith("_")?l[c]:(e.has(c)||r(c),e.get(c))}})}class zO{constructor(e,n){if(this.destructed=!1,this.events={destruct:new Jt(this)},!e||!n)throw new Error("Cannot initialize connection with null/undefined for 'from' or 'to' values");this.id=Q1(),this.from=e,this.to=n,this.from.connectionCount++,this.to.connectionCount++}destruct(){this.events.destruct.emit(),this.from.connectionCount--,this.to.connectionCount--,this.destructed=!0}}class tH{constructor(e,n){if(!e||!n)throw new Error("Cannot initialize connection with null/undefined for 'from' or 'to' values");this.id=Q1(),this.from=e,this.to=n}}function Ff(t,e){return Object.fromEntries(Object.entries(t).map(([n,o])=>[n,e(o)]))}class nH{constructor(){this._title="",this.id=Q1(),this.events={loaded:new Jt(this),beforeAddInput:new dr(this),addInput:new Jt(this),beforeRemoveInput:new dr(this),removeInput:new Jt(this),beforeAddOutput:new dr(this),addOutput:new Jt(this),beforeRemoveOutput:new dr(this),removeOutput:new Jt(this),beforeTitleChanged:new dr(this),titleChanged:new Jt(this),update:new Jt(this)},this.hooks={beforeLoad:new Ci(this),afterSave:new Ci(this)}}get graph(){return this.graphInstance}get title(){return this._title}set title(e){this.events.beforeTitleChanged.emit(e).prevented||(this._title=e,this.events.titleChanged.emit(e))}addInput(e,n){return this.addInterface("input",e,n)}addOutput(e,n){return this.addInterface("output",e,n)}removeInput(e){return this.removeInterface("input",e)}removeOutput(e){return this.removeInterface("output",e)}registerGraph(e){this.graphInstance=e}load(e){this.hooks.beforeLoad.execute(e),this.id=e.id,this._title=e.title,Object.entries(e.inputs).forEach(([n,o])=>{this.inputs[n]&&(this.inputs[n].load(o),this.inputs[n].nodeId=this.id)}),Object.entries(e.outputs).forEach(([n,o])=>{this.outputs[n]&&(this.outputs[n].load(o),this.outputs[n].nodeId=this.id)}),this.events.loaded.emit(this)}save(){const e=Ff(this.inputs,r=>r.save()),n=Ff(this.outputs,r=>r.save()),o={type:this.type,id:this.id,title:this.title,inputs:e,outputs:n};return this.hooks.afterSave.execute(o)}onPlaced(){}onDestroy(){}initializeIo(){Object.entries(this.inputs).forEach(([e,n])=>this.initializeIntf("input",e,n)),Object.entries(this.outputs).forEach(([e,n])=>this.initializeIntf("output",e,n))}initializeIntf(e,n,o){o.isInput=e==="input",o.nodeId=this.id,o.events.setValue.subscribe(this,()=>this.events.update.emit({type:e,name:n,intf:o}))}addInterface(e,n,o){const r=e==="input"?this.events.beforeAddInput:this.events.beforeAddOutput,i=e==="input"?this.events.addInput:this.events.addOutput,s=e==="input"?this.inputs:this.outputs;return r.emit(o).prevented?!1:(s[n]=o,this.initializeIntf(e,n,o),i.emit(o),!0)}removeInterface(e,n){const o=e==="input"?this.events.beforeRemoveInput:this.events.beforeRemoveOutput,r=e==="input"?this.events.removeInput:this.events.removeOutput,i=e==="input"?this.inputs[n]:this.outputs[n];if(!i||o.emit(i).prevented)return!1;if(i.connectionCount>0)if(this.graphInstance)this.graphInstance.connections.filter(a=>a.from===i||a.to===i).forEach(a=>{this.graphInstance.removeConnection(a)});else throw new Error("Interface is connected, but no graph instance is specified. Unable to delete interface");return i.events.setValue.unsubscribe(this),e==="input"?delete this.inputs[n]:delete this.outputs[n],r.emit(i),!0}}let rH=class extends nH{load(e){super.load(e)}save(){return super.save()}};function Gl(t){return class extends rH{constructor(){var e,n;super(),this.type=t.type,this.inputs={},this.outputs={},this.calculate=t.calculate?(o,r)=>t.calculate.call(this,o,r):void 0,this._title=(e=t.title)!==null&&e!==void 0?e:t.type,this.executeFactory("input",t.inputs),this.executeFactory("output",t.outputs),(n=t.onCreate)===null||n===void 0||n.call(this)}onPlaced(){var e;(e=t.onPlaced)===null||e===void 0||e.call(this)}onDestroy(){var e;(e=t.onDestroy)===null||e===void 0||e.call(this)}executeFactory(e,n){Object.keys(n||{}).forEach(o=>{const r=n[o]();e==="input"?this.addInput(o,r):this.addOutput(o,r)})}}}class mn{set connectionCount(e){this._connectionCount=e,this.events.setConnectionCount.emit(e)}get connectionCount(){return this._connectionCount}set value(e){this.events.beforeSetValue.emit(e).prevented||(this._value=e,this.events.setValue.emit(e))}get value(){return this._value}constructor(e,n){this.id=Q1(),this.nodeId="",this.port=!0,this.hidden=!1,this.events={setConnectionCount:new Jt(this),beforeSetValue:new dr(this),setValue:new Jt(this),updated:new Jt(this)},this.hooks={load:new Ci(this),save:new Ci(this)},this._connectionCount=0,this.name=e,this._value=n}load(e){this.id=e.id,this.templateId=e.templateId,this.value=e.value,this.hooks.load.execute(e)}save(){const e={id:this.id,templateId:this.templateId,value:this.value};return this.hooks.save.execute(e)}setComponent(e){return this.component=e,this}setPort(e){return this.port=e,this}setHidden(e){return this.hidden=e,this}use(e,...n){return e(this,...n),this}}const wl="__baklava_SubgraphInputNode",Ol="__baklava_SubgraphOutputNode";class iH extends rH{constructor(){super(),this.graphInterfaceId=Q1()}onPlaced(){super.onPlaced(),this.initializeIo()}save(){return{...super.save(),graphInterfaceId:this.graphInterfaceId}}load(e){super.load(e),this.graphInterfaceId=e.graphInterfaceId}}class $h extends iH{constructor(){super(...arguments),this.type=wl,this.inputs={name:new mn("Name","Input")},this.outputs={placeholder:new mn("Value",void 0)}}static isGraphInputNode(e){return e.type===wl}}class Vh extends iH{constructor(){super(...arguments),this.type=Ol,this.inputs={name:new mn("Name","Output"),placeholder:new mn("Value",void 0)},this.outputs={output:new mn("Output",void 0).setHidden(!0)},this.calculate=({placeholder:e})=>({output:e})}static isGraphOutputNode(e){return e.type===Ol}}class r6{get nodes(){return this._nodes}get connections(){return this._connections}get loading(){return this._loading}get destroying(){return this._destroying}get inputs(){return this.nodes.filter(n=>n.type===wl).map(n=>({id:n.graphInterfaceId,name:n.inputs.name.value,nodeId:n.id,nodeInterfaceId:n.outputs.placeholder.id}))}get outputs(){return this.nodes.filter(n=>n.type===Ol).map(n=>({id:n.graphInterfaceId,name:n.inputs.name.value,nodeId:n.id,nodeInterfaceId:n.outputs.output.id}))}constructor(e,n){this.id=Q1(),this.activeTransactions=0,this._nodes=[],this._connections=[],this._loading=!1,this._destroying=!1,this.events={beforeAddNode:new dr(this),addNode:new Jt(this),beforeRemoveNode:new dr(this),removeNode:new Jt(this),beforeAddConnection:new dr(this),addConnection:new Jt(this),checkConnection:new dr(this),beforeRemoveConnection:new dr(this),removeConnection:new Jt(this)},this.hooks={save:new Ci(this),load:new Ci(this),checkConnection:new Cqn(this)},this.nodeEvents=Jo(),this.nodeHooks=Jo(),this.connectionEvents=Jo(),this.editor=e,this.template=n,e.registerGraph(this)}addNode(e){if(!this.events.beforeAddNode.emit(e).prevented)return this.nodeEvents.addTarget(e.events),this.nodeHooks.addTarget(e.hooks),e.registerGraph(this),this._nodes.push(e),e=this.nodes.find(n=>n.id===e.id),e.onPlaced(),this.events.addNode.emit(e),e}removeNode(e){if(this.nodes.includes(e)){if(this.events.beforeRemoveNode.emit(e).prevented)return;const n=[...Object.values(e.inputs),...Object.values(e.outputs)];this.connections.filter(o=>n.includes(o.from)||n.includes(o.to)).forEach(o=>this.removeConnection(o)),this._nodes.splice(this.nodes.indexOf(e),1),this.events.removeNode.emit(e),e.onDestroy(),this.nodeEvents.removeTarget(e.events),this.nodeHooks.removeTarget(e.hooks)}}addConnection(e,n){const o=this.checkConnection(e,n);if(!o.connectionAllowed||this.events.beforeAddConnection.emit({from:e,to:n}).prevented)return;for(const i of o.connectionsInDanger){const s=this.connections.find(a=>a.id===i.id);s&&this.removeConnection(s)}const r=new zO(o.dummyConnection.from,o.dummyConnection.to);return this.internalAddConnection(r),r}removeConnection(e){if(this.connections.includes(e)){if(this.events.beforeRemoveConnection.emit(e).prevented)return;e.destruct(),this._connections.splice(this.connections.indexOf(e),1),this.events.removeConnection.emit(e),this.connectionEvents.removeTarget(e.events)}}checkConnection(e,n){if(!e||!n)return{connectionAllowed:!1};const o=this.findNodeById(e.nodeId),r=this.findNodeById(n.nodeId);if(o&&r&&o===r)return{connectionAllowed:!1};if(e.isInput&&!n.isInput){const a=e;e=n,n=a}if(e.isInput||!n.isInput)return{connectionAllowed:!1};if(this.connections.some(a=>a.from===e&&a.to===n))return{connectionAllowed:!1};if(this.events.checkConnection.emit({from:e,to:n}).prevented)return{connectionAllowed:!1};const i=this.hooks.checkConnection.execute({from:e,to:n});if(i.some(a=>!a.connectionAllowed))return{connectionAllowed:!1};const s=Array.from(new Set(i.flatMap(a=>a.connectionsInDanger)));return{connectionAllowed:!0,dummyConnection:new tH(e,n),connectionsInDanger:s}}findNodeInterface(e){for(const n of this.nodes){for(const o in n.inputs){const r=n.inputs[o];if(r.id===e)return r}for(const o in n.outputs){const r=n.outputs[o];if(r.id===e)return r}}}findNodeById(e){return this.nodes.find(n=>n.id===e)}load(e){try{this._loading=!0;const n=[];for(let o=this.connections.length-1;o>=0;o--)this.removeConnection(this.connections[o]);for(let o=this.nodes.length-1;o>=0;o--)this.removeNode(this.nodes[o]);this.id=e.id;for(const o of e.nodes){const r=this.editor.nodeTypes.get(o.type);if(!r){n.push(`Node type ${o.type} is not registered`);continue}const i=new r.type;this.addNode(i),i.load(o)}for(const o of e.connections){const r=this.findNodeInterface(o.from),i=this.findNodeInterface(o.to);if(r)if(i){const s=new zO(r,i);s.id=o.id,this.internalAddConnection(s)}else{n.push(`Could not find interface with id ${o.to}`);continue}else{n.push(`Could not find interface with id ${o.from}`);continue}}return this.hooks.load.execute(e),n}finally{this._loading=!1}}save(){const e={id:this.id,nodes:this.nodes.map(n=>n.save()),connections:this.connections.map(n=>({id:n.id,from:n.from.id,to:n.to.id})),inputs:this.inputs,outputs:this.outputs};return this.hooks.save.execute(e)}destroy(){this._destroying=!0;for(const e of this.nodes)this.removeNode(e);this.editor.unregisterGraph(this)}internalAddConnection(e){this.connectionEvents.addTarget(e.events),this._connections.push(e),this.events.addConnection.emit(e)}}const kc="__baklava_GraphNode-";function Ml(t){return kc+t.id}const Aqn=["component","connectionCount","events","hidden","hooks","id","isInput","name","nodeId","port","templateId","value"];function wqn(t){return class extends nH{constructor(){super(...arguments),this.type=Ml(t),this.inputs={},this.outputs={},this.template=t,this.calculate=async(n,o)=>{var r;if(!this.subgraph)throw new Error(`GraphNode ${this.id}: calculate called without subgraph being initialized`);if(!o.engine||typeof o.engine!="object")throw new Error(`GraphNode ${this.id}: calculate called but no engine provided in context`);const i=o.engine.getInputValues(this.subgraph);for(const l of this.subgraph.inputs)i.set(l.nodeInterfaceId,n[l.id]);const s=await o.engine.runGraph(this.subgraph,i,o.globalValues),a={};for(const l of this.subgraph.outputs)a[l.id]=(r=s.get(l.nodeId))===null||r===void 0?void 0:r.get("output");return a._calculationResults=s,a}}get title(){return this._title}set title(n){this.template.name=n}load(n){if(!this.subgraph)throw new Error("Cannot load a graph node without a graph");if(!this.template)throw new Error("Unable to load graph node without graph template");this.subgraph.load(n.graphState),super.load(n)}save(){if(!this.subgraph)throw new Error("Cannot save a graph node without a graph");return{...super.save(),graphState:this.subgraph.save()}}onPlaced(){this.template.events.updated.subscribe(this,()=>this.initialize()),this.template.events.nameChanged.subscribe(this,n=>{this._title=n}),this.initialize()}onDestroy(){var n;this.template.events.updated.unsubscribe(this),this.template.events.nameChanged.unsubscribe(this),(n=this.subgraph)===null||n===void 0||n.destroy()}initialize(){this.subgraph&&this.subgraph.destroy(),this.subgraph=this.template.createGraph(),this._title=this.template.name,this.updateInterfaces(),this.events.update.emit(null)}updateInterfaces(){if(!this.subgraph)throw new Error("Trying to update interfaces without graph instance");for(const n of this.subgraph.inputs)n.id in this.inputs?this.inputs[n.id].name=n.name:this.addInput(n.id,this.createProxyInterface(n,!0));for(const n of Object.keys(this.inputs))this.subgraph.inputs.some(o=>o.id===n)||this.removeInput(n);for(const n of this.subgraph.outputs)n.id in this.outputs?this.outputs[n.id].name=n.name:this.addOutput(n.id,this.createProxyInterface(n,!1));for(const n of Object.keys(this.outputs))this.subgraph.outputs.some(o=>o.id===n)||this.removeOutput(n);this.addOutput("_calculationResults",new mn("_calculationResults",void 0).setHidden(!0))}createProxyInterface(n,o){const r=new mn(n.name,void 0);return new Proxy(r,{get:(i,s)=>{var a,l,c;if(Aqn.includes(s)||s in i||typeof s=="string"&&s.startsWith("__v_"))return Reflect.get(i,s);let u;if(o){const T=(a=this.subgraph)===null||a===void 0?void 0:a.nodes.find(h=>$h.isGraphInputNode(h)&&h.graphInterfaceId===n.id);u=T==null?void 0:T.outputs.placeholder.id}else{const T=(l=this.subgraph)===null||l===void 0?void 0:l.nodes.find(h=>Vh.isGraphOutputNode(h)&&h.graphInterfaceId===n.id);u=T==null?void 0:T.inputs.placeholder.id}const d=(c=this.subgraph)===null||c===void 0?void 0:c.connections.find(T=>{var h;return u===((h=o?T.from:T.to)===null||h===void 0?void 0:h.id)}),f=o?d==null?void 0:d.to:d==null?void 0:d.from;if(f)return Reflect.get(f,s)}})}}}class x0{static fromGraph(e,n){return new x0(e.save(),n)}get name(){return this._name}set name(e){this._name=e,this.events.nameChanged.emit(e);const n=this.editor.nodeTypes.get(Ml(this));n&&(n.title=e)}get inputs(){return this.nodes.filter(n=>n.type===wl).map(n=>({id:n.graphInterfaceId,name:n.inputs.name.value,nodeId:n.id,nodeInterfaceId:n.outputs.placeholder.id}))}get outputs(){return this.nodes.filter(n=>n.type===Ol).map(n=>({id:n.graphInterfaceId,name:n.inputs.name.value,nodeId:n.id,nodeInterfaceId:n.outputs.output.id}))}constructor(e,n){this.id=Q1(),this._name="Subgraph",this.events={nameChanged:new Jt(this),updated:new Jt(this)},this.hooks={beforeLoad:new Ci(this),afterSave:new Ci(this)},this.editor=n,e.id&&(this.id=e.id),e.name&&(this._name=e.name),this.update(e)}update(e){this.nodes=e.nodes,this.connections=e.connections,this.events.updated.emit()}save(){return{id:this.id,name:this.name,nodes:this.nodes,connections:this.connections,inputs:this.inputs,outputs:this.outputs}}createGraph(e){const n=new Map,o=f=>{const T=Q1();return n.set(f,T),T},r=f=>{const T=n.get(f);if(!T)throw new Error(`Unable to create graph from template: Could not map old id ${f} to new id`);return T},i=f=>Ff(f,T=>({id:o(T.id),templateId:T.id,value:T.value})),s=this.nodes.map(f=>({...f,id:o(f.id),inputs:i(f.inputs),outputs:i(f.outputs)})),a=this.connections.map(f=>({id:o(f.id),from:r(f.from),to:r(f.to)})),l=this.inputs.map(f=>({id:f.id,name:f.name,nodeId:r(f.nodeId),nodeInterfaceId:r(f.nodeInterfaceId)})),c=this.outputs.map(f=>({id:f.id,name:f.name,nodeId:r(f.nodeId),nodeInterfaceId:r(f.nodeInterfaceId)})),u={id:Q1(),nodes:s,connections:a,inputs:l,outputs:c};return e||(e=new r6(this.editor)),e.load(u).forEach(f=>console.warn(f)),e.template=this,e}}class Oqn{get nodeTypes(){return this._nodeTypes}get graph(){return this._graph}get graphTemplates(){return this._graphTemplates}get graphs(){return this._graphs}get loading(){return this._loading}constructor(){this.events={loaded:new Jt(this),beforeRegisterNodeType:new dr(this),registerNodeType:new Jt(this),beforeUnregisterNodeType:new dr(this),unregisterNodeType:new Jt(this),beforeAddGraphTemplate:new dr(this),addGraphTemplate:new Jt(this),beforeRemoveGraphTemplate:new dr(this),removeGraphTemplate:new Jt(this),registerGraph:new Jt(this),unregisterGraph:new Jt(this)},this.hooks={save:new Ci(this),load:new Ci(this)},this.graphTemplateEvents=Jo(),this.graphTemplateHooks=Jo(),this.graphEvents=Jo(),this.graphHooks=Jo(),this.nodeEvents=Jo(),this.nodeHooks=Jo(),this.connectionEvents=Jo(),this._graphs=new Set,this._nodeTypes=new Map,this._graph=new r6(this),this._graphTemplates=[],this._loading=!1,this.registerNodeType($h),this.registerNodeType(Vh)}registerNodeType(e,n){var o,r;if(this.events.beforeRegisterNodeType.emit({type:e,options:n}).prevented)return;const i=new e;this._nodeTypes.set(i.type,{type:e,category:(o=n==null?void 0:n.category)!==null&&o!==void 0?o:"default",title:(r=n==null?void 0:n.title)!==null&&r!==void 0?r:i.title}),this.events.registerNodeType.emit({type:e,options:n})}unregisterNodeType(e){const n=typeof e=="string"?e:new e().type;if(this.nodeTypes.has(n)){if(this.events.beforeUnregisterNodeType.emit(n).prevented)return;this._nodeTypes.delete(n),this.events.unregisterNodeType.emit(n)}}addGraphTemplate(e){if(this.events.beforeAddGraphTemplate.emit(e).prevented)return;this._graphTemplates.push(e),this.graphTemplateEvents.addTarget(e.events),this.graphTemplateHooks.addTarget(e.hooks);const n=wqn(e);this.registerNodeType(n,{category:"Subgraphs",title:e.name}),this.events.addGraphTemplate.emit(e)}removeGraphTemplate(e){if(this.graphTemplates.includes(e)){if(this.events.beforeRemoveGraphTemplate.emit(e).prevented)return;const n=Ml(e);for(const o of[this.graph,...this.graphs.values()]){const r=o.nodes.filter(i=>i.type===n);for(const i of r)o.removeNode(i)}this.unregisterNodeType(n),this._graphTemplates.splice(this._graphTemplates.indexOf(e),1),this.graphTemplateEvents.removeTarget(e.events),this.graphTemplateHooks.removeTarget(e.hooks),this.events.removeGraphTemplate.emit(e)}}registerGraph(e){this.graphEvents.addTarget(e.events),this.graphHooks.addTarget(e.hooks),this.nodeEvents.addTarget(e.nodeEvents),this.nodeHooks.addTarget(e.nodeHooks),this.connectionEvents.addTarget(e.connectionEvents),this.events.registerGraph.emit(e),this._graphs.add(e)}unregisterGraph(e){this.graphEvents.removeTarget(e.events),this.graphHooks.removeTarget(e.hooks),this.nodeEvents.removeTarget(e.nodeEvents),this.nodeHooks.removeTarget(e.nodeHooks),this.connectionEvents.removeTarget(e.connectionEvents),this.events.unregisterGraph.emit(e),this._graphs.delete(e)}load(e){try{for(this._loading=!0,e=this.hooks.load.execute(e);this.graphTemplates.length>0;)this.removeGraphTemplate(this.graphTemplates[0]);e.graphTemplates.forEach(o=>{const r=new x0(o,this);this.addGraphTemplate(r)});const n=this._graph.load(e.graph);return this.events.loaded.emit(),n.forEach(o=>console.warn(o)),n}finally{this._loading=!1}}save(){const e={graph:this.graph.save(),graphTemplates:this.graphTemplates.map(n=>n.save())};return this.hooks.save.execute(e)}}function Mqn(t,e){const n=new Map;e.graphs.forEach(o=>{o.nodes.forEach(r=>n.set(r.id,r))}),t.forEach((o,r)=>{const i=n.get(r);i&&o.forEach((s,a)=>{const l=i.outputs[a];l&&(l.value=s)})})}class oH extends Error{constructor(){super("Cycle detected")}}function Rqn(t){return typeof t=="string"}function sH(t,e){const n=new Map,o=new Map,r=new Map;let i,s;if(t instanceof r6)i=t.nodes,s=t.connections;else{if(!e)throw new Error("Invalid argument value: expected array of connections");i=t,s=e}i.forEach(c=>{Object.values(c.inputs).forEach(u=>n.set(u.id,c.id)),Object.values(c.outputs).forEach(u=>n.set(u.id,c.id))}),i.forEach(c=>{const u=s.filter(f=>f.from&&n.get(f.from.id)===c.id),d=new Set(u.map(f=>n.get(f.to.id)).filter(Rqn));o.set(c.id,d),r.set(c,u)});const a=i.slice();s.forEach(c=>{const u=a.findIndex(d=>n.get(c.to.id)===d.id);u>=0&&a.splice(u,1)});const l=[];for(;a.length>0;){const c=a.pop();l.push(c);const u=o.get(c.id);for(;u.size>0;){const d=u.values().next().value;if(u.delete(d),Array.from(o.values()).every(f=>!f.has(d))){const f=i.find(T=>T.id===d);a.push(f)}}}if(Array.from(o.values()).some(c=>c.size>0))throw new oH;return{calculationOrder:l,connectionsFromNode:r,interfaceIdToNodeId:n}}function Nqn(t,e){try{return sH(t,e),!1}catch(n){if(n instanceof oH)return!0;throw n}}var Fr;(function(t){t.Running="Running",t.Idle="Idle",t.Paused="Paused",t.Stopped="Stopped"})(Fr||(Fr={}));class Dqn{get status(){return this.isRunning?Fr.Running:this.internalStatus}constructor(e){this.editor=e,this.events={beforeRun:new dr(this),afterRun:new Jt(this),statusChange:new Jt(this),beforeNodeCalculation:new Jt(this),afterNodeCalculation:new Jt(this)},this.hooks={gatherCalculationData:new Ci(this),transferData:new eH},this.recalculateOrder=!0,this.internalStatus=Fr.Stopped,this.isRunning=!1,this.editor.nodeEvents.update.subscribe(this,(n,o)=>{o.graph&&!o.graph.loading&&o.graph.activeTransactions===0&&this.internalOnChange(o,n??void 0)}),this.editor.graphEvents.addNode.subscribe(this,(n,o)=>{this.recalculateOrder=!0,!o.loading&&o.activeTransactions===0&&this.internalOnChange()}),this.editor.graphEvents.removeNode.subscribe(this,(n,o)=>{this.recalculateOrder=!0,!o.loading&&o.activeTransactions===0&&this.internalOnChange()}),this.editor.graphEvents.addConnection.subscribe(this,(n,o)=>{this.recalculateOrder=!0,!o.loading&&o.activeTransactions===0&&this.internalOnChange()}),this.editor.graphEvents.removeConnection.subscribe(this,(n,o)=>{this.recalculateOrder=!0,!o.loading&&o.activeTransactions===0&&this.internalOnChange()}),this.editor.graphHooks.checkConnection.subscribe(this,n=>this.checkConnection(n.from,n.to))}start(){this.internalStatus===Fr.Stopped&&(this.internalStatus=Fr.Idle,this.events.statusChange.emit(this.status))}pause(){this.internalStatus===Fr.Idle&&(this.internalStatus=Fr.Paused,this.events.statusChange.emit(this.status))}resume(){this.internalStatus===Fr.Paused&&(this.internalStatus=Fr.Idle,this.events.statusChange.emit(this.status))}stop(){(this.internalStatus===Fr.Idle||this.internalStatus===Fr.Paused)&&(this.internalStatus=Fr.Stopped,this.events.statusChange.emit(this.status))}async runOnce(e,...n){if(this.events.beforeRun.emit(e).prevented)return null;try{this.isRunning=!0,this.events.statusChange.emit(this.status),this.recalculateOrder&&this.calculateOrder();const o=await this.execute(e,...n);return this.events.afterRun.emit(o),o}finally{this.isRunning=!1,this.events.statusChange.emit(this.status)}}checkConnection(e,n){if(e.templateId){const i=this.findInterfaceByTemplateId(this.editor.graph.nodes,e.templateId);if(!i)return{connectionAllowed:!0,connectionsInDanger:[]};e=i}if(n.templateId){const i=this.findInterfaceByTemplateId(this.editor.graph.nodes,n.templateId);if(!i)return{connectionAllowed:!0,connectionsInDanger:[]};n=i}const o=new tH(e,n);let r=this.editor.graph.connections.slice();return n.allowMultipleConnections||(r=r.filter(i=>i.to!==n)),r.push(o),Nqn(this.editor.graph.nodes,r)?{connectionAllowed:!1,connectionsInDanger:[]}:{connectionAllowed:!0,connectionsInDanger:n.allowMultipleConnections?[]:this.editor.graph.connections.filter(i=>i.to===n)}}calculateOrder(){this.recalculateOrder=!0}async calculateWithoutData(...e){const n=this.hooks.gatherCalculationData.execute(void 0);return await this.runOnce(n,...e)}validateNodeCalculationOutput(e,n){if(typeof n!="object")throw new Error(`Invalid calculation return value from node ${e.id} (type ${e.type})`);Object.keys(e.outputs).forEach(o=>{if(!(o in n))throw new Error(`Calculation return value from node ${e.id} (type ${e.type}) is missing key "${o}"`)})}internalOnChange(e,n){this.internalStatus===Fr.Idle&&this.onChange(this.recalculateOrder,e,n)}findInterfaceByTemplateId(e,n){for(const o of e)for(const r of[...Object.values(o.inputs),...Object.values(o.outputs)])if(r.templateId===n)return r;return null}}class Iqn extends Dqn{constructor(e){super(e),this.order=new Map}start(){super.start(),this.recalculateOrder=!0,this.calculateWithoutData()}async runGraph(e,n,o){this.order.has(e.id)||this.order.set(e.id,sH(e));const{calculationOrder:r,connectionsFromNode:i}=this.order.get(e.id),s=new Map;for(const a of r){const l={};Object.entries(a.inputs).forEach(([u,d])=>{l[u]=this.getInterfaceValue(n,d.id)}),this.events.beforeNodeCalculation.emit({inputValues:l,node:a});let c;if(a.calculate)c=await a.calculate(l,{globalValues:o,engine:this});else{c={};for(const[u,d]of Object.entries(a.outputs))c[u]=this.getInterfaceValue(n,d.id)}this.validateNodeCalculationOutput(a,c),this.events.afterNodeCalculation.emit({outputValues:c,node:a}),s.set(a.id,new Map(Object.entries(c))),i.has(a)&&i.get(a).forEach(u=>{var d;const f=(d=Object.entries(a.outputs).find(([,h])=>h.id===u.from.id))===null||d===void 0?void 0:d[0];if(!f)throw new Error(`Could not find key for interface ${u.from.id} +Please check that you don't accidentally use the same token twice to register two different proxies for the same event/hook.`),this.unregisterProxy(e)),this.proxyMap.set(e,n),this.proxies.push(n)}unregisterProxy(e){if(!this.proxyMap.has(e))return;const n=this.proxyMap.get(e);this.proxyMap.delete(e);const o=this.proxies.indexOf(n);o>=0&&this.proxies.splice(o,1)}}class Jt extends C2{constructor(e){super(),this.entity=e}emit(e){this.listeners.forEach(n=>n(e,this.entity))}}class dr extends C2{constructor(e){super(),this.entity=e}emit(e){let n=!1;const o=()=>[n=!0];for(const r of Array.from(this.listeners.values()))if(r(e,o,this.entity),n)return{prevented:!0};return{prevented:!1}}}class eH extends C2{execute(e,n){let o=e;for(const r of this.listeners)o=r(o,n);return o}}class Ci extends eH{constructor(e){super(),this.entity=e}execute(e){return super.execute(e,this.entity)}}class Aqn extends C2{constructor(e){super(),this.entity=e}execute(e){const n=[];for(const o of this.listeners)n.push(o(e,this.entity));return n}}function Jo(){const t=Symbol(),e=new Map,n=new Set,o=(l,c)=>{c instanceof C2&&c.registerProxy(t,()=>{var u,d;return(d=(u=e.get(l))===null||u===void 0?void 0:u.listeners)!==null&&d!==void 0?d:[]})},r=l=>{const c=new C2;e.set(l,c),n.forEach(u=>o(l,u[l]))},i=l=>{n.add(l);for(const c of e.keys())o(c,l[c])},s=l=>{for(const c of e.keys())l[c]instanceof C2&&l[c].unregisterProxy(t);n.delete(l)},a=()=>{n.forEach(l=>s(l)),e.clear()};return new Proxy({},{get(l,c){return c==="addTarget"?i:c==="removeTarget"?s:c==="destroy"?a:typeof c!="string"||c.startsWith("_")?l[c]:(e.has(c)||r(c),e.get(c))}})}class zO{constructor(e,n){if(this.destructed=!1,this.events={destruct:new Jt(this)},!e||!n)throw new Error("Cannot initialize connection with null/undefined for 'from' or 'to' values");this.id=Q1(),this.from=e,this.to=n,this.from.connectionCount++,this.to.connectionCount++}destruct(){this.events.destruct.emit(),this.from.connectionCount--,this.to.connectionCount--,this.destructed=!0}}class tH{constructor(e,n){if(!e||!n)throw new Error("Cannot initialize connection with null/undefined for 'from' or 'to' values");this.id=Q1(),this.from=e,this.to=n}}function Ff(t,e){return Object.fromEntries(Object.entries(t).map(([n,o])=>[n,e(o)]))}class nH{constructor(){this._title="",this.id=Q1(),this.events={loaded:new Jt(this),beforeAddInput:new dr(this),addInput:new Jt(this),beforeRemoveInput:new dr(this),removeInput:new Jt(this),beforeAddOutput:new dr(this),addOutput:new Jt(this),beforeRemoveOutput:new dr(this),removeOutput:new Jt(this),beforeTitleChanged:new dr(this),titleChanged:new Jt(this),update:new Jt(this)},this.hooks={beforeLoad:new Ci(this),afterSave:new Ci(this)}}get graph(){return this.graphInstance}get title(){return this._title}set title(e){this.events.beforeTitleChanged.emit(e).prevented||(this._title=e,this.events.titleChanged.emit(e))}addInput(e,n){return this.addInterface("input",e,n)}addOutput(e,n){return this.addInterface("output",e,n)}removeInput(e){return this.removeInterface("input",e)}removeOutput(e){return this.removeInterface("output",e)}registerGraph(e){this.graphInstance=e}load(e){this.hooks.beforeLoad.execute(e),this.id=e.id,this._title=e.title,Object.entries(e.inputs).forEach(([n,o])=>{this.inputs[n]&&(this.inputs[n].load(o),this.inputs[n].nodeId=this.id)}),Object.entries(e.outputs).forEach(([n,o])=>{this.outputs[n]&&(this.outputs[n].load(o),this.outputs[n].nodeId=this.id)}),this.events.loaded.emit(this)}save(){const e=Ff(this.inputs,r=>r.save()),n=Ff(this.outputs,r=>r.save()),o={type:this.type,id:this.id,title:this.title,inputs:e,outputs:n};return this.hooks.afterSave.execute(o)}onPlaced(){}onDestroy(){}initializeIo(){Object.entries(this.inputs).forEach(([e,n])=>this.initializeIntf("input",e,n)),Object.entries(this.outputs).forEach(([e,n])=>this.initializeIntf("output",e,n))}initializeIntf(e,n,o){o.isInput=e==="input",o.nodeId=this.id,o.events.setValue.subscribe(this,()=>this.events.update.emit({type:e,name:n,intf:o}))}addInterface(e,n,o){const r=e==="input"?this.events.beforeAddInput:this.events.beforeAddOutput,i=e==="input"?this.events.addInput:this.events.addOutput,s=e==="input"?this.inputs:this.outputs;return r.emit(o).prevented?!1:(s[n]=o,this.initializeIntf(e,n,o),i.emit(o),!0)}removeInterface(e,n){const o=e==="input"?this.events.beforeRemoveInput:this.events.beforeRemoveOutput,r=e==="input"?this.events.removeInput:this.events.removeOutput,i=e==="input"?this.inputs[n]:this.outputs[n];if(!i||o.emit(i).prevented)return!1;if(i.connectionCount>0)if(this.graphInstance)this.graphInstance.connections.filter(a=>a.from===i||a.to===i).forEach(a=>{this.graphInstance.removeConnection(a)});else throw new Error("Interface is connected, but no graph instance is specified. Unable to delete interface");return i.events.setValue.unsubscribe(this),e==="input"?delete this.inputs[n]:delete this.outputs[n],r.emit(i),!0}}let rH=class extends nH{load(e){super.load(e)}save(){return super.save()}};function Gl(t){return class extends rH{constructor(){var e,n;super(),this.type=t.type,this.inputs={},this.outputs={},this.calculate=t.calculate?(o,r)=>t.calculate.call(this,o,r):void 0,this._title=(e=t.title)!==null&&e!==void 0?e:t.type,this.executeFactory("input",t.inputs),this.executeFactory("output",t.outputs),(n=t.onCreate)===null||n===void 0||n.call(this)}onPlaced(){var e;(e=t.onPlaced)===null||e===void 0||e.call(this)}onDestroy(){var e;(e=t.onDestroy)===null||e===void 0||e.call(this)}executeFactory(e,n){Object.keys(n||{}).forEach(o=>{const r=n[o]();e==="input"?this.addInput(o,r):this.addOutput(o,r)})}}}class mn{set connectionCount(e){this._connectionCount=e,this.events.setConnectionCount.emit(e)}get connectionCount(){return this._connectionCount}set value(e){this.events.beforeSetValue.emit(e).prevented||(this._value=e,this.events.setValue.emit(e))}get value(){return this._value}constructor(e,n){this.id=Q1(),this.nodeId="",this.port=!0,this.hidden=!1,this.events={setConnectionCount:new Jt(this),beforeSetValue:new dr(this),setValue:new Jt(this),updated:new Jt(this)},this.hooks={load:new Ci(this),save:new Ci(this)},this._connectionCount=0,this.name=e,this._value=n}load(e){this.id=e.id,this.templateId=e.templateId,this.value=e.value,this.hooks.load.execute(e)}save(){const e={id:this.id,templateId:this.templateId,value:this.value};return this.hooks.save.execute(e)}setComponent(e){return this.component=e,this}setPort(e){return this.port=e,this}setHidden(e){return this.hidden=e,this}use(e,...n){return e(this,...n),this}}const wl="__baklava_SubgraphInputNode",Ol="__baklava_SubgraphOutputNode";class iH extends rH{constructor(){super(),this.graphInterfaceId=Q1()}onPlaced(){super.onPlaced(),this.initializeIo()}save(){return{...super.save(),graphInterfaceId:this.graphInterfaceId}}load(e){super.load(e),this.graphInterfaceId=e.graphInterfaceId}}class $h extends iH{constructor(){super(...arguments),this.type=wl,this.inputs={name:new mn("Name","Input")},this.outputs={placeholder:new mn("Value",void 0)}}static isGraphInputNode(e){return e.type===wl}}class Vh extends iH{constructor(){super(...arguments),this.type=Ol,this.inputs={name:new mn("Name","Output"),placeholder:new mn("Value",void 0)},this.outputs={output:new mn("Output",void 0).setHidden(!0)},this.calculate=({placeholder:e})=>({output:e})}static isGraphOutputNode(e){return e.type===Ol}}class r6{get nodes(){return this._nodes}get connections(){return this._connections}get loading(){return this._loading}get destroying(){return this._destroying}get inputs(){return this.nodes.filter(n=>n.type===wl).map(n=>({id:n.graphInterfaceId,name:n.inputs.name.value,nodeId:n.id,nodeInterfaceId:n.outputs.placeholder.id}))}get outputs(){return this.nodes.filter(n=>n.type===Ol).map(n=>({id:n.graphInterfaceId,name:n.inputs.name.value,nodeId:n.id,nodeInterfaceId:n.outputs.output.id}))}constructor(e,n){this.id=Q1(),this.activeTransactions=0,this._nodes=[],this._connections=[],this._loading=!1,this._destroying=!1,this.events={beforeAddNode:new dr(this),addNode:new Jt(this),beforeRemoveNode:new dr(this),removeNode:new Jt(this),beforeAddConnection:new dr(this),addConnection:new Jt(this),checkConnection:new dr(this),beforeRemoveConnection:new dr(this),removeConnection:new Jt(this)},this.hooks={save:new Ci(this),load:new Ci(this),checkConnection:new Aqn(this)},this.nodeEvents=Jo(),this.nodeHooks=Jo(),this.connectionEvents=Jo(),this.editor=e,this.template=n,e.registerGraph(this)}addNode(e){if(!this.events.beforeAddNode.emit(e).prevented)return this.nodeEvents.addTarget(e.events),this.nodeHooks.addTarget(e.hooks),e.registerGraph(this),this._nodes.push(e),e=this.nodes.find(n=>n.id===e.id),e.onPlaced(),this.events.addNode.emit(e),e}removeNode(e){if(this.nodes.includes(e)){if(this.events.beforeRemoveNode.emit(e).prevented)return;const n=[...Object.values(e.inputs),...Object.values(e.outputs)];this.connections.filter(o=>n.includes(o.from)||n.includes(o.to)).forEach(o=>this.removeConnection(o)),this._nodes.splice(this.nodes.indexOf(e),1),this.events.removeNode.emit(e),e.onDestroy(),this.nodeEvents.removeTarget(e.events),this.nodeHooks.removeTarget(e.hooks)}}addConnection(e,n){const o=this.checkConnection(e,n);if(!o.connectionAllowed||this.events.beforeAddConnection.emit({from:e,to:n}).prevented)return;for(const i of o.connectionsInDanger){const s=this.connections.find(a=>a.id===i.id);s&&this.removeConnection(s)}const r=new zO(o.dummyConnection.from,o.dummyConnection.to);return this.internalAddConnection(r),r}removeConnection(e){if(this.connections.includes(e)){if(this.events.beforeRemoveConnection.emit(e).prevented)return;e.destruct(),this._connections.splice(this.connections.indexOf(e),1),this.events.removeConnection.emit(e),this.connectionEvents.removeTarget(e.events)}}checkConnection(e,n){if(!e||!n)return{connectionAllowed:!1};const o=this.findNodeById(e.nodeId),r=this.findNodeById(n.nodeId);if(o&&r&&o===r)return{connectionAllowed:!1};if(e.isInput&&!n.isInput){const a=e;e=n,n=a}if(e.isInput||!n.isInput)return{connectionAllowed:!1};if(this.connections.some(a=>a.from===e&&a.to===n))return{connectionAllowed:!1};if(this.events.checkConnection.emit({from:e,to:n}).prevented)return{connectionAllowed:!1};const i=this.hooks.checkConnection.execute({from:e,to:n});if(i.some(a=>!a.connectionAllowed))return{connectionAllowed:!1};const s=Array.from(new Set(i.flatMap(a=>a.connectionsInDanger)));return{connectionAllowed:!0,dummyConnection:new tH(e,n),connectionsInDanger:s}}findNodeInterface(e){for(const n of this.nodes){for(const o in n.inputs){const r=n.inputs[o];if(r.id===e)return r}for(const o in n.outputs){const r=n.outputs[o];if(r.id===e)return r}}}findNodeById(e){return this.nodes.find(n=>n.id===e)}load(e){try{this._loading=!0;const n=[];for(let o=this.connections.length-1;o>=0;o--)this.removeConnection(this.connections[o]);for(let o=this.nodes.length-1;o>=0;o--)this.removeNode(this.nodes[o]);this.id=e.id;for(const o of e.nodes){const r=this.editor.nodeTypes.get(o.type);if(!r){n.push(`Node type ${o.type} is not registered`);continue}const i=new r.type;this.addNode(i),i.load(o)}for(const o of e.connections){const r=this.findNodeInterface(o.from),i=this.findNodeInterface(o.to);if(r)if(i){const s=new zO(r,i);s.id=o.id,this.internalAddConnection(s)}else{n.push(`Could not find interface with id ${o.to}`);continue}else{n.push(`Could not find interface with id ${o.from}`);continue}}return this.hooks.load.execute(e),n}finally{this._loading=!1}}save(){const e={id:this.id,nodes:this.nodes.map(n=>n.save()),connections:this.connections.map(n=>({id:n.id,from:n.from.id,to:n.to.id})),inputs:this.inputs,outputs:this.outputs};return this.hooks.save.execute(e)}destroy(){this._destroying=!0;for(const e of this.nodes)this.removeNode(e);this.editor.unregisterGraph(this)}internalAddConnection(e){this.connectionEvents.addTarget(e.events),this._connections.push(e),this.events.addConnection.emit(e)}}const kc="__baklava_GraphNode-";function Ml(t){return kc+t.id}const wqn=["component","connectionCount","events","hidden","hooks","id","isInput","name","nodeId","port","templateId","value"];function Oqn(t){return class extends nH{constructor(){super(...arguments),this.type=Ml(t),this.inputs={},this.outputs={},this.template=t,this.calculate=async(n,o)=>{var r;if(!this.subgraph)throw new Error(`GraphNode ${this.id}: calculate called without subgraph being initialized`);if(!o.engine||typeof o.engine!="object")throw new Error(`GraphNode ${this.id}: calculate called but no engine provided in context`);const i=o.engine.getInputValues(this.subgraph);for(const l of this.subgraph.inputs)i.set(l.nodeInterfaceId,n[l.id]);const s=await o.engine.runGraph(this.subgraph,i,o.globalValues),a={};for(const l of this.subgraph.outputs)a[l.id]=(r=s.get(l.nodeId))===null||r===void 0?void 0:r.get("output");return a._calculationResults=s,a}}get title(){return this._title}set title(n){this.template.name=n}load(n){if(!this.subgraph)throw new Error("Cannot load a graph node without a graph");if(!this.template)throw new Error("Unable to load graph node without graph template");this.subgraph.load(n.graphState),super.load(n)}save(){if(!this.subgraph)throw new Error("Cannot save a graph node without a graph");return{...super.save(),graphState:this.subgraph.save()}}onPlaced(){this.template.events.updated.subscribe(this,()=>this.initialize()),this.template.events.nameChanged.subscribe(this,n=>{this._title=n}),this.initialize()}onDestroy(){var n;this.template.events.updated.unsubscribe(this),this.template.events.nameChanged.unsubscribe(this),(n=this.subgraph)===null||n===void 0||n.destroy()}initialize(){this.subgraph&&this.subgraph.destroy(),this.subgraph=this.template.createGraph(),this._title=this.template.name,this.updateInterfaces(),this.events.update.emit(null)}updateInterfaces(){if(!this.subgraph)throw new Error("Trying to update interfaces without graph instance");for(const n of this.subgraph.inputs)n.id in this.inputs?this.inputs[n.id].name=n.name:this.addInput(n.id,this.createProxyInterface(n,!0));for(const n of Object.keys(this.inputs))this.subgraph.inputs.some(o=>o.id===n)||this.removeInput(n);for(const n of this.subgraph.outputs)n.id in this.outputs?this.outputs[n.id].name=n.name:this.addOutput(n.id,this.createProxyInterface(n,!1));for(const n of Object.keys(this.outputs))this.subgraph.outputs.some(o=>o.id===n)||this.removeOutput(n);this.addOutput("_calculationResults",new mn("_calculationResults",void 0).setHidden(!0))}createProxyInterface(n,o){const r=new mn(n.name,void 0);return new Proxy(r,{get:(i,s)=>{var a,l,c;if(wqn.includes(s)||s in i||typeof s=="string"&&s.startsWith("__v_"))return Reflect.get(i,s);let u;if(o){const T=(a=this.subgraph)===null||a===void 0?void 0:a.nodes.find(h=>$h.isGraphInputNode(h)&&h.graphInterfaceId===n.id);u=T==null?void 0:T.outputs.placeholder.id}else{const T=(l=this.subgraph)===null||l===void 0?void 0:l.nodes.find(h=>Vh.isGraphOutputNode(h)&&h.graphInterfaceId===n.id);u=T==null?void 0:T.inputs.placeholder.id}const d=(c=this.subgraph)===null||c===void 0?void 0:c.connections.find(T=>{var h;return u===((h=o?T.from:T.to)===null||h===void 0?void 0:h.id)}),f=o?d==null?void 0:d.to:d==null?void 0:d.from;if(f)return Reflect.get(f,s)}})}}}class x0{static fromGraph(e,n){return new x0(e.save(),n)}get name(){return this._name}set name(e){this._name=e,this.events.nameChanged.emit(e);const n=this.editor.nodeTypes.get(Ml(this));n&&(n.title=e)}get inputs(){return this.nodes.filter(n=>n.type===wl).map(n=>({id:n.graphInterfaceId,name:n.inputs.name.value,nodeId:n.id,nodeInterfaceId:n.outputs.placeholder.id}))}get outputs(){return this.nodes.filter(n=>n.type===Ol).map(n=>({id:n.graphInterfaceId,name:n.inputs.name.value,nodeId:n.id,nodeInterfaceId:n.outputs.output.id}))}constructor(e,n){this.id=Q1(),this._name="Subgraph",this.events={nameChanged:new Jt(this),updated:new Jt(this)},this.hooks={beforeLoad:new Ci(this),afterSave:new Ci(this)},this.editor=n,e.id&&(this.id=e.id),e.name&&(this._name=e.name),this.update(e)}update(e){this.nodes=e.nodes,this.connections=e.connections,this.events.updated.emit()}save(){return{id:this.id,name:this.name,nodes:this.nodes,connections:this.connections,inputs:this.inputs,outputs:this.outputs}}createGraph(e){const n=new Map,o=f=>{const T=Q1();return n.set(f,T),T},r=f=>{const T=n.get(f);if(!T)throw new Error(`Unable to create graph from template: Could not map old id ${f} to new id`);return T},i=f=>Ff(f,T=>({id:o(T.id),templateId:T.id,value:T.value})),s=this.nodes.map(f=>({...f,id:o(f.id),inputs:i(f.inputs),outputs:i(f.outputs)})),a=this.connections.map(f=>({id:o(f.id),from:r(f.from),to:r(f.to)})),l=this.inputs.map(f=>({id:f.id,name:f.name,nodeId:r(f.nodeId),nodeInterfaceId:r(f.nodeInterfaceId)})),c=this.outputs.map(f=>({id:f.id,name:f.name,nodeId:r(f.nodeId),nodeInterfaceId:r(f.nodeInterfaceId)})),u={id:Q1(),nodes:s,connections:a,inputs:l,outputs:c};return e||(e=new r6(this.editor)),e.load(u).forEach(f=>console.warn(f)),e.template=this,e}}class Mqn{get nodeTypes(){return this._nodeTypes}get graph(){return this._graph}get graphTemplates(){return this._graphTemplates}get graphs(){return this._graphs}get loading(){return this._loading}constructor(){this.events={loaded:new Jt(this),beforeRegisterNodeType:new dr(this),registerNodeType:new Jt(this),beforeUnregisterNodeType:new dr(this),unregisterNodeType:new Jt(this),beforeAddGraphTemplate:new dr(this),addGraphTemplate:new Jt(this),beforeRemoveGraphTemplate:new dr(this),removeGraphTemplate:new Jt(this),registerGraph:new Jt(this),unregisterGraph:new Jt(this)},this.hooks={save:new Ci(this),load:new Ci(this)},this.graphTemplateEvents=Jo(),this.graphTemplateHooks=Jo(),this.graphEvents=Jo(),this.graphHooks=Jo(),this.nodeEvents=Jo(),this.nodeHooks=Jo(),this.connectionEvents=Jo(),this._graphs=new Set,this._nodeTypes=new Map,this._graph=new r6(this),this._graphTemplates=[],this._loading=!1,this.registerNodeType($h),this.registerNodeType(Vh)}registerNodeType(e,n){var o,r;if(this.events.beforeRegisterNodeType.emit({type:e,options:n}).prevented)return;const i=new e;this._nodeTypes.set(i.type,{type:e,category:(o=n==null?void 0:n.category)!==null&&o!==void 0?o:"default",title:(r=n==null?void 0:n.title)!==null&&r!==void 0?r:i.title}),this.events.registerNodeType.emit({type:e,options:n})}unregisterNodeType(e){const n=typeof e=="string"?e:new e().type;if(this.nodeTypes.has(n)){if(this.events.beforeUnregisterNodeType.emit(n).prevented)return;this._nodeTypes.delete(n),this.events.unregisterNodeType.emit(n)}}addGraphTemplate(e){if(this.events.beforeAddGraphTemplate.emit(e).prevented)return;this._graphTemplates.push(e),this.graphTemplateEvents.addTarget(e.events),this.graphTemplateHooks.addTarget(e.hooks);const n=Oqn(e);this.registerNodeType(n,{category:"Subgraphs",title:e.name}),this.events.addGraphTemplate.emit(e)}removeGraphTemplate(e){if(this.graphTemplates.includes(e)){if(this.events.beforeRemoveGraphTemplate.emit(e).prevented)return;const n=Ml(e);for(const o of[this.graph,...this.graphs.values()]){const r=o.nodes.filter(i=>i.type===n);for(const i of r)o.removeNode(i)}this.unregisterNodeType(n),this._graphTemplates.splice(this._graphTemplates.indexOf(e),1),this.graphTemplateEvents.removeTarget(e.events),this.graphTemplateHooks.removeTarget(e.hooks),this.events.removeGraphTemplate.emit(e)}}registerGraph(e){this.graphEvents.addTarget(e.events),this.graphHooks.addTarget(e.hooks),this.nodeEvents.addTarget(e.nodeEvents),this.nodeHooks.addTarget(e.nodeHooks),this.connectionEvents.addTarget(e.connectionEvents),this.events.registerGraph.emit(e),this._graphs.add(e)}unregisterGraph(e){this.graphEvents.removeTarget(e.events),this.graphHooks.removeTarget(e.hooks),this.nodeEvents.removeTarget(e.nodeEvents),this.nodeHooks.removeTarget(e.nodeHooks),this.connectionEvents.removeTarget(e.connectionEvents),this.events.unregisterGraph.emit(e),this._graphs.delete(e)}load(e){try{for(this._loading=!0,e=this.hooks.load.execute(e);this.graphTemplates.length>0;)this.removeGraphTemplate(this.graphTemplates[0]);e.graphTemplates.forEach(o=>{const r=new x0(o,this);this.addGraphTemplate(r)});const n=this._graph.load(e.graph);return this.events.loaded.emit(),n.forEach(o=>console.warn(o)),n}finally{this._loading=!1}}save(){const e={graph:this.graph.save(),graphTemplates:this.graphTemplates.map(n=>n.save())};return this.hooks.save.execute(e)}}function Rqn(t,e){const n=new Map;e.graphs.forEach(o=>{o.nodes.forEach(r=>n.set(r.id,r))}),t.forEach((o,r)=>{const i=n.get(r);i&&o.forEach((s,a)=>{const l=i.outputs[a];l&&(l.value=s)})})}class oH extends Error{constructor(){super("Cycle detected")}}function Nqn(t){return typeof t=="string"}function sH(t,e){const n=new Map,o=new Map,r=new Map;let i,s;if(t instanceof r6)i=t.nodes,s=t.connections;else{if(!e)throw new Error("Invalid argument value: expected array of connections");i=t,s=e}i.forEach(c=>{Object.values(c.inputs).forEach(u=>n.set(u.id,c.id)),Object.values(c.outputs).forEach(u=>n.set(u.id,c.id))}),i.forEach(c=>{const u=s.filter(f=>f.from&&n.get(f.from.id)===c.id),d=new Set(u.map(f=>n.get(f.to.id)).filter(Nqn));o.set(c.id,d),r.set(c,u)});const a=i.slice();s.forEach(c=>{const u=a.findIndex(d=>n.get(c.to.id)===d.id);u>=0&&a.splice(u,1)});const l=[];for(;a.length>0;){const c=a.pop();l.push(c);const u=o.get(c.id);for(;u.size>0;){const d=u.values().next().value;if(u.delete(d),Array.from(o.values()).every(f=>!f.has(d))){const f=i.find(T=>T.id===d);a.push(f)}}}if(Array.from(o.values()).some(c=>c.size>0))throw new oH;return{calculationOrder:l,connectionsFromNode:r,interfaceIdToNodeId:n}}function Dqn(t,e){try{return sH(t,e),!1}catch(n){if(n instanceof oH)return!0;throw n}}var Fr;(function(t){t.Running="Running",t.Idle="Idle",t.Paused="Paused",t.Stopped="Stopped"})(Fr||(Fr={}));class Iqn{get status(){return this.isRunning?Fr.Running:this.internalStatus}constructor(e){this.editor=e,this.events={beforeRun:new dr(this),afterRun:new Jt(this),statusChange:new Jt(this),beforeNodeCalculation:new Jt(this),afterNodeCalculation:new Jt(this)},this.hooks={gatherCalculationData:new Ci(this),transferData:new eH},this.recalculateOrder=!0,this.internalStatus=Fr.Stopped,this.isRunning=!1,this.editor.nodeEvents.update.subscribe(this,(n,o)=>{o.graph&&!o.graph.loading&&o.graph.activeTransactions===0&&this.internalOnChange(o,n??void 0)}),this.editor.graphEvents.addNode.subscribe(this,(n,o)=>{this.recalculateOrder=!0,!o.loading&&o.activeTransactions===0&&this.internalOnChange()}),this.editor.graphEvents.removeNode.subscribe(this,(n,o)=>{this.recalculateOrder=!0,!o.loading&&o.activeTransactions===0&&this.internalOnChange()}),this.editor.graphEvents.addConnection.subscribe(this,(n,o)=>{this.recalculateOrder=!0,!o.loading&&o.activeTransactions===0&&this.internalOnChange()}),this.editor.graphEvents.removeConnection.subscribe(this,(n,o)=>{this.recalculateOrder=!0,!o.loading&&o.activeTransactions===0&&this.internalOnChange()}),this.editor.graphHooks.checkConnection.subscribe(this,n=>this.checkConnection(n.from,n.to))}start(){this.internalStatus===Fr.Stopped&&(this.internalStatus=Fr.Idle,this.events.statusChange.emit(this.status))}pause(){this.internalStatus===Fr.Idle&&(this.internalStatus=Fr.Paused,this.events.statusChange.emit(this.status))}resume(){this.internalStatus===Fr.Paused&&(this.internalStatus=Fr.Idle,this.events.statusChange.emit(this.status))}stop(){(this.internalStatus===Fr.Idle||this.internalStatus===Fr.Paused)&&(this.internalStatus=Fr.Stopped,this.events.statusChange.emit(this.status))}async runOnce(e,...n){if(this.events.beforeRun.emit(e).prevented)return null;try{this.isRunning=!0,this.events.statusChange.emit(this.status),this.recalculateOrder&&this.calculateOrder();const o=await this.execute(e,...n);return this.events.afterRun.emit(o),o}finally{this.isRunning=!1,this.events.statusChange.emit(this.status)}}checkConnection(e,n){if(e.templateId){const i=this.findInterfaceByTemplateId(this.editor.graph.nodes,e.templateId);if(!i)return{connectionAllowed:!0,connectionsInDanger:[]};e=i}if(n.templateId){const i=this.findInterfaceByTemplateId(this.editor.graph.nodes,n.templateId);if(!i)return{connectionAllowed:!0,connectionsInDanger:[]};n=i}const o=new tH(e,n);let r=this.editor.graph.connections.slice();return n.allowMultipleConnections||(r=r.filter(i=>i.to!==n)),r.push(o),Dqn(this.editor.graph.nodes,r)?{connectionAllowed:!1,connectionsInDanger:[]}:{connectionAllowed:!0,connectionsInDanger:n.allowMultipleConnections?[]:this.editor.graph.connections.filter(i=>i.to===n)}}calculateOrder(){this.recalculateOrder=!0}async calculateWithoutData(...e){const n=this.hooks.gatherCalculationData.execute(void 0);return await this.runOnce(n,...e)}validateNodeCalculationOutput(e,n){if(typeof n!="object")throw new Error(`Invalid calculation return value from node ${e.id} (type ${e.type})`);Object.keys(e.outputs).forEach(o=>{if(!(o in n))throw new Error(`Calculation return value from node ${e.id} (type ${e.type}) is missing key "${o}"`)})}internalOnChange(e,n){this.internalStatus===Fr.Idle&&this.onChange(this.recalculateOrder,e,n)}findInterfaceByTemplateId(e,n){for(const o of e)for(const r of[...Object.values(o.inputs),...Object.values(o.outputs)])if(r.templateId===n)return r;return null}}class kqn extends Iqn{constructor(e){super(e),this.order=new Map}start(){super.start(),this.recalculateOrder=!0,this.calculateWithoutData()}async runGraph(e,n,o){this.order.has(e.id)||this.order.set(e.id,sH(e));const{calculationOrder:r,connectionsFromNode:i}=this.order.get(e.id),s=new Map;for(const a of r){const l={};Object.entries(a.inputs).forEach(([u,d])=>{l[u]=this.getInterfaceValue(n,d.id)}),this.events.beforeNodeCalculation.emit({inputValues:l,node:a});let c;if(a.calculate)c=await a.calculate(l,{globalValues:o,engine:this});else{c={};for(const[u,d]of Object.entries(a.outputs))c[u]=this.getInterfaceValue(n,d.id)}this.validateNodeCalculationOutput(a,c),this.events.afterNodeCalculation.emit({outputValues:c,node:a}),s.set(a.id,new Map(Object.entries(c))),i.has(a)&&i.get(a).forEach(u=>{var d;const f=(d=Object.entries(a.outputs).find(([,h])=>h.id===u.from.id))===null||d===void 0?void 0:d[0];if(!f)throw new Error(`Could not find key for interface ${u.from.id} This is likely a Baklava internal issue. Please report it on GitHub.`);const T=this.hooks.transferData.execute(c[f],u);u.to.allowMultipleConnections?n.has(u.to.id)?n.get(u.to.id).push(T):n.set(u.to.id,[T]):n.set(u.to.id,T)})}return s}async execute(e){this.recalculateOrder&&(this.order.clear(),this.recalculateOrder=!1);const n=this.getInputValues(this.editor.graph);return await this.runGraph(this.editor.graph,n,e)}getInputValues(e){const n=new Map;for(const o of e.nodes)Object.values(o.inputs).forEach(r=>{r.connectionCount===0&&n.set(r.id,r.value)}),o.calculate||Object.values(o.outputs).forEach(r=>{n.set(r.id,r.value)});return n}onChange(e){this.recalculateOrder=e||this.recalculateOrder,this.calculateWithoutData()}getInterfaceValue(e,n){if(!e.has(n))throw new Error(`Could not find value for interface ${n} -This is likely a Baklava internal issue. Please report it on GitHub.`);return e.get(n)}}const kqn=["INPUT","TEXTAREA","SELECT"];function aH(t){return kqn.includes(t.tagName)}let Uf=null;function Hqn(t){Uf=t}function Ai(){if(!Uf)throw new Error("providePlugin() must be called before usePlugin()");return{viewModel:Uf}}function Zi(){const{viewModel:t}=Ai();return{graph:a5(t.value,"displayedGraph"),switchGraph:t.value.switchGraph}}function lH(t){const{graph:e}=Zi(),n=Ve(null),o=Ve(null);return{dragging:je(()=>!!n.value),onPointerDown:l=>{n.value={x:l.pageX,y:l.pageY},o.value={x:t.value.x,y:t.value.y}},onPointerMove:l=>{if(n.value){const c=l.pageX-n.value.x,u=l.pageY-n.value.y;t.value.x=o.value.x+c/e.value.scaling,t.value.y=o.value.y+u/e.value.scaling}},onPointerUp:()=>{n.value=null,o.value=null}}}function cH(t,e,n){if(!e.template)return!1;if(Ml(e.template)===n)return!0;const o=t.graphTemplates.find(i=>Ml(i)===n);return o?o.nodes.filter(i=>i.type.startsWith(kc)).some(i=>cH(t,e,i.type)):!1}function uH(t){return je(()=>{const e=Array.from(t.value.editor.nodeTypes.entries()),n=new Set(e.map(([,r])=>r.category)),o=[];for(const r of n.values()){let i=e.filter(([,s])=>s.category===r);t.value.displayedGraph.template?i=i.filter(([s])=>!cH(t.value.editor,t.value.displayedGraph,s)):i=i.filter(([s])=>![wl,Ol].includes(s)),i.length>0&&o.push({name:r,nodeTypes:Object.fromEntries(i)})}return o.sort((r,i)=>r.name==="default"?-1:i.name==="default"||r.name>i.name?1:-1),o})}function dH(){const{graph:t}=Zi();return{transform:(n,o)=>{const r=n/t.value.scaling-t.value.panning.x,i=o/t.value.scaling-t.value.panning.y;return[r,i]}}}function Pqn(){const{graph:t}=Zi();let e=[],n=-1,o={x:0,y:0};const r=je(()=>t.value.panning),i=lH(r),s=je(()=>({"transform-origin":"0 0",transform:`scale(${t.value.scaling}) translate(${t.value.panning.x}px, ${t.value.panning.y}px)`})),a=(T,h,g)=>{const Q=[T/t.value.scaling-t.value.panning.x,h/t.value.scaling-t.value.panning.y],m=[T/g-t.value.panning.x,h/g-t.value.panning.y],_=[m[0]-Q[0],m[1]-Q[1]];t.value.panning.x+=_[0],t.value.panning.y+=_[1],t.value.scaling=g},l=T=>{T.preventDefault();let h=T.deltaY;T.deltaMode===1&&(h*=32);const g=t.value.scaling*(1-h/3e3);a(T.offsetX,T.offsetY,g)},c=()=>({ax:e[0].clientX,ay:e[0].clientY,bx:e[1].clientX,by:e[1].clientY});return{styles:s,...i,onPointerDown:T=>{if(e.push(T),i.onPointerDown(T),e.length===2){const{ax:h,ay:g,bx:Q,by:m}=c();o={x:h+(Q-h)/2,y:g+(m-g)/2}}},onPointerMove:T=>{for(let h=0;h0){const y=t.value.scaling*(1+(b-n)/500);a(o.x,o.y,y)}n=b}else i.onPointerMove(T)},onPointerUp:T=>{e=e.filter(h=>h.pointerId!==T.pointerId),n=-1,i.onPointerUp()},onMouseWheel:l}}var $i=(t=>(t[t.NONE=0]="NONE",t[t.ALLOWED=1]="ALLOWED",t[t.FORBIDDEN=2]="FORBIDDEN",t))($i||{});const TH=Symbol();function $qn(){const{graph:t}=Zi(),e=Ve(null),n=Ve(null),o=a=>{e.value&&(e.value.mx=a.offsetX/t.value.scaling-t.value.panning.x,e.value.my=a.offsetY/t.value.scaling-t.value.panning.y)},r=()=>{if(n.value){if(e.value)return;const a=t.value.connections.find(l=>l.to===n.value);n.value.isInput&&a?(e.value={status:$i.NONE,from:a.from},t.value.removeConnection(a)):e.value={status:$i.NONE,from:n.value},e.value.mx=void 0,e.value.my=void 0}},i=()=>{if(e.value&&n.value){if(e.value.from===n.value)return;t.value.addConnection(e.value.from,e.value.to)}e.value=null},s=a=>{if(n.value=a??null,a&&e.value){e.value.to=a;const l=t.value.checkConnection(e.value.from,e.value.to);if(e.value.status=l.connectionAllowed?$i.ALLOWED:$i.FORBIDDEN,l.connectionAllowed){const c=l.connectionsInDanger.map(u=>u.id);t.value.connections.forEach(u=>{c.includes(u.id)&&(u.isInDanger=!0)})}}else!a&&e.value&&(e.value.to=void 0,e.value.status=$i.NONE,t.value.connections.forEach(l=>{l.isInDanger=!1}))};return fl(TH,{temporaryConnection:e,hoveredOver:s}),{temporaryConnection:e,onMouseMove:o,onMouseDown:r,onMouseUp:i,hoveredOver:s}}function Vqn(t){const e=Ve(!1),n=Ve(0),o=Ve(0),r=uH(t),{transform:i}=dH(),s=je(()=>{let u=[];const d={};for(const T of r.value){const h=Object.entries(T.nodeTypes).map(([g,Q])=>({label:Q.title,value:"addNode:"+g}));T.name==="default"?u=h:d[T.name]=h}const f=[...Object.entries(d).map(([T,h])=>({label:T,submenu:h}))];return f.length>0&&u.length>0&&f.push({isDivider:!0}),f.push(...u),f}),a=je(()=>t.value.settings.contextMenu.additionalItems.length===0?s.value:[{label:"Add node",submenu:s.value},...t.value.settings.contextMenu.additionalItems.map(u=>"isDivider"in u||"submenu"in u?u:{label:u.label,value:"command:"+u.command,disabled:!t.value.commandHandler.canExecuteCommand(u.command)})]);function l(u){const d=u.target;if(!(d instanceof Element)||aH(d))return;u.preventDefault(),e.value=!0;const f=d.getBoundingClientRect(),h=d.closest(".baklava-editor").getBoundingClientRect();n.value=f.x+u.offsetX-h.x,o.value=f.y+u.offsetY-h.y}function c(u){if(u.startsWith("addNode:")){const d=u.substring(8),f=t.value.editor.nodeTypes.get(d);if(!f)return;const T=fr(new f.type);t.value.displayedGraph.addNode(T);const[h,g]=i(n.value,o.value);T.position.x=h,T.position.y=g}else if(u.startsWith("command:")){const d=u.substring(8);t.value.commandHandler.canExecuteCommand(d)&&t.value.commandHandler.executeCommand(d)}}return{show:e,x:n,y:o,items:a,open:l,onClick:c}}const r5="START_SELECTION_BOX";function Bqn(t){const{viewModel:e}=Ai(),{graph:n}=Zi(),o=je(()=>n.value.nodes),r=Ve(!1),i=Ve(!1),s=Ve([0,0]),a=Ve([0,0]);$n(e,()=>{e.value.commandHandler.hasCommand(r5)||(e.value.commandHandler.registerCommand(r5,{canExecute:()=>!0,execute(){r.value=!0}}),e.value.commandHandler.registerHotkey(["b"],r5))},{immediate:!0});function l(m){return[m.clientX-t.value.getBoundingClientRect().left,m.clientY-t.value.getBoundingClientRect().top]}function c(m){return r.value?(i.value=!0,r.value=!1,s.value=l(m),a.value=l(m),document.addEventListener("pointermove",u),document.addEventListener("pointerup",d),!0):!1}function u(m){s.value=l(m)}function d(m){document.removeEventListener("pointermove",u),document.removeEventListener("pointerup",d),s.value=l(m),i.value=!1;const _=f();for(const v of _)e.value.displayedGraph.selectedNodes.push(v)}function f(){const m=T(),v=document.querySelector(".baklava-editor").getBoundingClientRect();return o.value.filter(b=>{const y=h(b,v);return g(m,y)})}function T(){return{left:Math.min(s.value[0],a.value[0]),top:Math.min(s.value[1],a.value[1]),right:Math.max(s.value[0],a.value[0]),bottom:Math.max(s.value[1],a.value[1])}}function h(m,_){const v=document.getElementById(m.id),b=v?v.getBoundingClientRect():{x:0,y:0,width:0,height:0},y=b.x-_.left,E=b.y-_.top;return{left:y,top:E,right:y+b.width,bottom:E+b.height}}function g(m,_){return m.left<_.right&&m.right>_.left&&m.top<_.bottom&&m.bottom>_.top}function Q(){return{width:Math.abs(a.value[0]-s.value[0])+"px",height:Math.abs(a.value[1]-s.value[1])+"px",left:(a.value[0]>s.value[0]?s.value[0]:a.value[0])+"px",top:(a.value[1]>s.value[1]?s.value[1]:a.value[1])+"px"}}return fr({startSelection:r,isSelecting:i,start:s,end:a,onPointerDown:c,getStyles:Q})}const Fqn=On({setup(){const{viewModel:t}=Ai(),{graph:e}=Zi();return{styles:je(()=>{const o=t.value.settings.background,r=e.value.panning.x*e.value.scaling,i=e.value.panning.y*e.value.scaling,s=e.value.scaling*o.gridSize,a=s/o.gridDivision,l=`${s}px ${s}px, ${s}px ${s}px`,c=e.value.scaling>o.subGridVisibleThreshold?`, ${a}px ${a}px, ${a}px ${a}px`:"";return{backgroundPosition:`left ${r}px top ${i}px`,backgroundSize:`${l} ${c}`}})}}}),yn=(t,e)=>{const n=t.__vccOpts||t;for(const[o,r]of e)n[o]=r;return n};function Uqn(t,e,n,o,r,i){return N(),H("div",{class:"background",style:an(t.styles)},null,4)}const qqn=yn(Fqn,[["render",Uqn]]);function Gqn(t){return fM()?(aP(t),!0):!1}function Bh(t){return typeof t=="function"?t():gt(t)}const fH=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const jqn=Object.prototype.toString,zqn=t=>jqn.call(t)==="[object Object]",i5=()=>{},Yqn=Wqn();function Wqn(){var t,e;return fH&&((t=window==null?void 0:window.navigator)==null?void 0:t.userAgent)&&(/iP(ad|hone|od)/.test(window.navigator.userAgent)||((e=window==null?void 0:window.navigator)==null?void 0:e.maxTouchPoints)>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function Kqn(t,e,n=!1){return e.reduce((o,r)=>(r in t&&(!n||t[r]!==void 0)&&(o[r]=t[r]),o),{})}function Zqn(t,e={}){if(!Pn(t))return kP(t);const n=Array.isArray(t.value)?Array.from({length:t.value.length}):{};for(const o in t.value)n[o]=IP(()=>({get(){return t.value[o]},set(r){var i;if((i=Bh(e.replaceRef))!=null?i:!0)if(Array.isArray(t.value)){const a=[...t.value];a[o]=r,t.value=a}else{const a={...t.value,[o]:r};Object.setPrototypeOf(a,Object.getPrototypeOf(t.value)),t.value=a}else t.value[o]=r}}));return n}function cc(t){var e;const n=Bh(t);return(e=n==null?void 0:n.$el)!=null?e:n}const Fh=fH?window:void 0;function yc(...t){let e,n,o,r;if(typeof t[0]=="string"||Array.isArray(t[0])?([n,o,r]=t,e=Fh):[e,n,o,r]=t,!e)return i5;Array.isArray(n)||(n=[n]),Array.isArray(o)||(o=[o]);const i=[],s=()=>{i.forEach(u=>u()),i.length=0},a=(u,d,f,T)=>(u.addEventListener(d,f,T),()=>u.removeEventListener(d,f,T)),l=$n(()=>[cc(e),Bh(r)],([u,d])=>{if(s(),!u)return;const f=zqn(d)?{...d}:d;i.push(...n.flatMap(T=>o.map(h=>a(u,T,h,f))))},{immediate:!0,flush:"post"}),c=()=>{l(),s()};return Gqn(c),c}let YO=!1;function pH(t,e,n={}){const{window:o=Fh,ignore:r=[],capture:i=!0,detectIframe:s=!1}=n;if(!o)return i5;Yqn&&!YO&&(YO=!0,Array.from(o.document.body.children).forEach(f=>f.addEventListener("click",i5)),o.document.documentElement.addEventListener("click",i5));let a=!0;const l=f=>r.some(T=>{if(typeof T=="string")return Array.from(o.document.querySelectorAll(T)).some(h=>h===f.target||f.composedPath().includes(h));{const h=cc(T);return h&&(f.target===h||f.composedPath().includes(h))}}),u=[yc(o,"click",f=>{const T=cc(t);if(!(!T||T===f.target||f.composedPath().includes(T))){if(f.detail===0&&(a=!l(f)),!a){a=!0;return}e(f)}},{passive:!0,capture:i}),yc(o,"pointerdown",f=>{const T=cc(t);a=!l(f)&&!!(T&&!f.composedPath().includes(T))},{passive:!0}),s&&yc(o,"blur",f=>{setTimeout(()=>{var T;const h=cc(t);((T=o.document.activeElement)==null?void 0:T.tagName)==="IFRAME"&&!(h!=null&&h.contains(o.document.activeElement))&&e(f)},0)})].filter(Boolean);return()=>u.forEach(f=>f())}const hH={x:0,y:0,pointerId:0,pressure:0,tiltX:0,tiltY:0,width:0,height:0,twist:0,pointerType:null},Xqn=Object.keys(hH);function Jqn(t={}){const{target:e=Fh}=t,n=Ve(!1),o=Ve(t.initialValue||{});Object.assign(o.value,hH,o.value);const r=i=>{n.value=!0,!(t.pointerTypes&&!t.pointerTypes.includes(i.pointerType))&&(o.value=Kqn(i,Xqn,!1))};if(e){const i={passive:!0};yc(e,["pointerdown","pointermove","pointerup"],r,i),yc(e,"pointerleave",()=>n.value=!1,i)}return{...Zqn(o),isInside:n}}const eGn=["onMouseenter","onMouseleave","onClick"],tGn={class:"flex-fill"},nGn={key:0,class:"__submenu-icon",style:{"line-height":"1em"}},rGn=S("svg",{width:"13",height:"13",viewBox:"-60 120 250 250"},[S("path",{d:"M160.875 279.5625 L70.875 369.5625 L70.875 189.5625 L160.875 279.5625 Z",stroke:"none",fill:"white"})],-1),iGn=[rGn],Uh=On({__name:"ContextMenu",props:{modelValue:{type:Boolean},items:{},x:{default:0},y:{default:0},isNested:{type:Boolean,default:!1},isFlipped:{default:()=>({x:!1,y:!1})},flippable:{type:Boolean,default:!1}},emits:["update:modelValue","click"],setup(t,{emit:e}){const n=t,o=e;let r=null;const i=Ve(null),s=Ve(-1),a=Ve(0),l=Ve({x:!1,y:!1}),c=je(()=>n.flippable&&(l.value.x||n.isFlipped.x)),u=je(()=>n.flippable&&(l.value.y||n.isFlipped.y)),d=je(()=>{const _={};return n.isNested||(_.top=(u.value?n.y-a.value:n.y)+"px",_.left=n.x+"px"),_}),f=je(()=>({"--flipped-x":c.value,"--flipped-y":u.value,"--nested":n.isNested})),T=je(()=>n.items.map(_=>({..._,hover:!1})));$n([()=>n.y,()=>n.items],()=>{var _,v,b,y;a.value=n.items.length*30;const E=((v=(_=i.value)==null?void 0:_.parentElement)==null?void 0:v.offsetWidth)??0,x=((y=(b=i.value)==null?void 0:b.parentElement)==null?void 0:y.offsetHeight)??0;l.value.x=!n.isNested&&n.x>E*.75,l.value.y=!n.isNested&&n.y+a.value>x-20}),pH(i,()=>{n.modelValue&&o("update:modelValue",!1)});const h=_=>{!_.submenu&&_.value&&(o("click",_.value),o("update:modelValue",!1))},g=_=>{o("click",_),s.value=-1,n.isNested||o("update:modelValue",!1)},Q=(_,v)=>{n.items[v].submenu&&(s.value=v,r!==null&&(clearTimeout(r),r=null))},m=(_,v)=>{n.items[v].submenu&&(r=window.setTimeout(()=>{s.value=-1,r=null},200))};return(_,v)=>{const b=ze("ContextMenu",!0);return N(),ot(Nr,{name:"slide-fade"},{default:Ge(()=>[Le(S("div",{ref_key:"el",ref:i,class:Ee(["baklava-context-menu",f.value]),style:an(d.value)},[(N(!0),H(xe,null,Pe(T.value,(y,E)=>(N(),H(xe,null,[y.isDivider?(N(),H("div",{key:`d-${E}`,class:"divider"})):(N(),H("div",{key:`i-${E}`,class:Ee(["item",{submenu:!!y.submenu,"--disabled":!!y.disabled}]),onMouseenter:x=>Q(x,E),onMouseleave:x=>m(x,E),onClick:oe(x=>h(y),["stop","prevent"])},[S("div",tGn,J(y.label),1),y.submenu?(N(),H("div",nGn,iGn)):Z("",!0),y.submenu?(N(),ot(b,{key:1,"model-value":s.value===E,items:y.submenu,"is-nested":!0,"is-flipped":{x:c.value,y:u.value},flippable:_.flippable,onClick:g},null,8,["model-value","items","is-flipped","flippable"])):Z("",!0)],42,eGn))],64))),256))],6),[[An,_.modelValue]])]),_:1})}}}),oGn={},sGn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"16",height:"16",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},aGn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),lGn=S("circle",{cx:"12",cy:"12",r:"1"},null,-1),cGn=S("circle",{cx:"12",cy:"19",r:"1"},null,-1),uGn=S("circle",{cx:"12",cy:"5",r:"1"},null,-1),dGn=[aGn,lGn,cGn,uGn];function TGn(t,e){return N(),H("svg",sGn,dGn)}const mH=yn(oGn,[["render",TGn]]),fGn=["id"],pGn={key:0,class:"__tooltip"},hGn={key:2,class:"align-middle"},WO=On({__name:"NodeInterface",props:{node:{},intf:{}},setup(t){const e=(Q,m=100)=>{const _=typeof(Q==null?void 0:Q.toString)=="function"?String(Q):"";return _.length>m?_.slice(0,m)+"...":_},n=t,{viewModel:o}=Ai(),{hoveredOver:r,temporaryConnection:i}=Ui(TH),s=Ve(null),a=je(()=>n.intf.connectionCount>0),l=Ve(!1),c=je(()=>o.value.settings.displayValueOnHover&&l.value),u=je(()=>({"--input":n.intf.isInput,"--output":!n.intf.isInput,"--connected":a.value})),d=je(()=>n.intf.component&&(!n.intf.isInput||!n.intf.port||n.intf.connectionCount===0)),f=()=>{l.value=!0,r(n.intf)},T=()=>{l.value=!1,r(void 0)},h=()=>{s.value&&o.value.hooks.renderInterface.execute({intf:n.intf,el:s.value})},g=()=>{const Q=o.value.displayedGraph.sidebar;Q.nodeId=n.node.id,Q.optionName=n.intf.name,Q.visible=!0};return Hr(h),N2(h),(Q,m)=>{var _;return N(),H("div",{id:Q.intf.id,ref_key:"el",ref:s,class:Ee(["baklava-node-interface",u.value])},[Q.intf.port?(N(),H("div",{key:0,class:Ee(["__port",{"--selected":((_=gt(i))==null?void 0:_.from)===Q.intf}]),onPointerover:f,onPointerout:T},[_n(Q.$slots,"portTooltip",{showTooltip:c.value},()=>[c.value===!0?(N(),H("span",pGn,J(e(Q.intf.value)),1)):Z("",!0)])],34)):Z("",!0),d.value?(N(),ot(Vc(Q.intf.component),{key:1,modelValue:Q.intf.value,"onUpdate:modelValue":m[0]||(m[0]=v=>Q.intf.value=v),node:Q.node,intf:Q.intf,onOpenSidebar:g},null,40,["modelValue","node","intf"])):(N(),H("span",hGn,J(Q.intf.name),1))],10,fGn)}}}),mGn=["id","data-node-type"],gGn={class:"__title-label"},_Gn={class:"__menu"},QGn={class:"__outputs"},vGn={class:"__inputs"},yGn=On({__name:"Node",props:{node:{},selected:{type:Boolean,default:!1},dragging:{type:Boolean}},emits:["select","start-drag"],setup(t,{emit:e}){const n=t,o=e,{viewModel:r}=Ai(),{graph:i,switchGraph:s}=Zi(),a=Ve(null),l=Ve(!1),c=Ve(""),u=Ve(null),d=Ve(!1),f=Ve(!1),T=je(()=>{const R=[{value:"rename",label:"Rename"},{value:"delete",label:"Delete"}];return n.node.type.startsWith(kc)&&R.push({value:"editSubgraph",label:"Edit Subgraph"}),R}),h=je(()=>({"--selected":n.selected,"--dragging":n.dragging,"--two-column":!!n.node.twoColumn})),g=je(()=>({"--reverse-y":n.node.reverseY??r.value.settings.nodes.reverseY})),Q=je(()=>{var R,I;return{top:`${((R=n.node.position)==null?void 0:R.y)??0}px`,left:`${((I=n.node.position)==null?void 0:I.x)??0}px`,"--width":`${n.node.width??r.value.settings.nodes.defaultWidth}px`}}),m=je(()=>Object.values(n.node.inputs).filter(R=>!R.hidden)),_=je(()=>Object.values(n.node.outputs).filter(R=>!R.hidden)),v=()=>{o("select")},b=R=>{n.selected||v(),o("start-drag",R)},y=()=>{f.value=!0},E=async R=>{var I;switch(R){case"delete":i.value.removeNode(n.node);break;case"rename":c.value=n.node.title,l.value=!0,await Se(),(I=u.value)==null||I.focus();break;case"editSubgraph":s(n.node.template);break}},x=()=>{n.node.title=c.value,l.value=!1},L=()=>{a.value&&r.value.hooks.renderNode.execute({node:n.node,el:a.value})},C=R=>{d.value=!0,R.preventDefault()},A=R=>{if(!d.value)return;const I=n.node.width+R.movementX/i.value.scaling,M=r.value.settings.nodes.minWidth,$=r.value.settings.nodes.maxWidth;n.node.width=Math.max(M,Math.min($,I))},O=()=>{d.value=!1};return Hr(()=>{L(),window.addEventListener("mousemove",A),window.addEventListener("mouseup",O)}),N2(L),D2(()=>{window.removeEventListener("mousemove",A),window.removeEventListener("mouseup",O)}),(R,I)=>(N(),H("div",{id:R.node.id,ref_key:"el",ref:a,class:Ee(["baklava-node",h.value]),style:an(Q.value),"data-node-type":R.node.type,onPointerdown:v},[gt(r).settings.nodes.resizable?(N(),H("div",{key:0,class:"__resize-handle",onMousedown:C},null,32)):Z("",!0),_n(R.$slots,"title",{},()=>[S("div",{class:"__title",onPointerdown:oe(b,["self","stop"])},[l.value?Le((N(),H("input",{key:1,ref_key:"renameInputEl",ref:u,"onUpdate:modelValue":I[1]||(I[1]=M=>c.value=M),type:"text",class:"baklava-input",placeholder:"Node Name",onBlur:x,onKeydown:Qn(x,["enter"])},null,544)),[[Je,c.value]]):(N(),H(xe,{key:0},[S("div",gGn,J(R.node.title),1),S("div",_Gn,[ne(mH,{class:"--clickable",onClick:y}),ne(gt(Uh),{modelValue:f.value,"onUpdate:modelValue":I[0]||(I[0]=M=>f.value=M),x:0,y:0,items:T.value,onClick:E},null,8,["modelValue","items"])])],64))],32)]),_n(R.$slots,"content",{},()=>[S("div",{class:Ee(["__content",g.value]),onKeydown:I[2]||(I[2]=Qn(oe(()=>{},["stop"]),["delete"]))},[S("div",QGn,[(N(!0),H(xe,null,Pe(_.value,M=>_n(R.$slots,"nodeInterface",{key:M.id,type:"output",node:R.node,intf:M},()=>[ne(WO,{node:R.node,intf:M},null,8,["node","intf"])])),128))]),S("div",vGn,[(N(!0),H(xe,null,Pe(m.value,M=>_n(R.$slots,"nodeInterface",{key:M.id,type:"input",node:R.node,intf:M},()=>[ne(WO,{node:R.node,intf:M},null,8,["node","intf"])])),128))])],34)])],46,mGn))}}),bGn=On({props:{x1:{type:Number,required:!0},y1:{type:Number,required:!0},x2:{type:Number,required:!0},y2:{type:Number,required:!0},state:{type:Number,default:$i.NONE},isTemporary:{type:Boolean,default:!1}},setup(t){const{viewModel:e}=Ai(),{graph:n}=Zi(),o=(s,a)=>{const l=(s+n.value.panning.x)*n.value.scaling,c=(a+n.value.panning.y)*n.value.scaling;return[l,c]},r=je(()=>{const[s,a]=o(t.x1,t.y1),[l,c]=o(t.x2,t.y2);if(e.value.settings.useStraightConnections)return`M ${s} ${a} L ${l} ${c}`;{const u=.3*Math.abs(s-l);return`M ${s} ${a} C ${s+u} ${a}, ${l-u} ${c}, ${l} ${c}`}}),i=je(()=>({"--temporary":t.isTemporary,"--allowed":t.state===$i.ALLOWED,"--forbidden":t.state===$i.FORBIDDEN}));return{d:r,classes:i}}}),EGn=["d"];function SGn(t,e,n,o,r,i){return N(),H("path",{class:Ee(["baklava-connection",t.classes]),d:t.d},null,10,EGn)}const gH=yn(bGn,[["render",SGn]]);function xGn(t){return document.getElementById(t.id)}function Rl(t){const e=document.getElementById(t.id),n=e==null?void 0:e.getElementsByClassName("__port");return{node:(e==null?void 0:e.closest(".baklava-node"))??null,interface:e,port:n&&n.length>0?n[0]:null}}const LGn=On({components:{"connection-view":gH},props:{connection:{type:Object,required:!0}},setup(t){const{graph:e}=Zi();let n;const o=Ve({x1:0,y1:0,x2:0,y2:0}),r=je(()=>t.connection.isInDanger?$i.FORBIDDEN:$i.NONE),i=je(()=>{var c;return(c=e.value.findNodeById(t.connection.from.nodeId))==null?void 0:c.position}),s=je(()=>{var c;return(c=e.value.findNodeById(t.connection.to.nodeId))==null?void 0:c.position}),a=c=>c.node&&c.interface&&c.port?[c.node.offsetLeft+c.interface.offsetLeft+c.port.offsetLeft+c.port.clientWidth/2,c.node.offsetTop+c.interface.offsetTop+c.port.offsetTop+c.port.clientHeight/2]:[0,0],l=()=>{const c=Rl(t.connection.from),u=Rl(t.connection.to);c.node&&u.node&&(n||(n=new ResizeObserver(()=>{l()}),n.observe(c.node),n.observe(u.node)));const[d,f]=a(c),[T,h]=a(u);o.value={x1:d,y1:f,x2:T,y2:h}};return Hr(async()=>{await Se(),l()}),D2(()=>{n&&n.disconnect()}),$n([i,s],()=>l(),{deep:!0}),{d:o,state:r}}});function CGn(t,e,n,o,r,i){const s=ze("connection-view");return N(),ot(s,{x1:t.d.x1,y1:t.d.y1,x2:t.d.x2,y2:t.d.y2,state:t.state},null,8,["x1","y1","x2","y2","state"])}const AGn=yn(LGn,[["render",CGn]]);function H5(t){return t.node&&t.interface&&t.port?[t.node.offsetLeft+t.interface.offsetLeft+t.port.offsetLeft+t.port.clientWidth/2,t.node.offsetTop+t.interface.offsetTop+t.port.offsetTop+t.port.clientHeight/2]:[0,0]}const wGn=On({components:{"connection-view":gH},props:{connection:{type:Object,required:!0}},setup(t){const e=je(()=>t.connection?t.connection.status:$i.NONE);return{d:je(()=>{if(!t.connection)return{input:[0,0],output:[0,0]};const o=H5(Rl(t.connection.from)),r=t.connection.to?H5(Rl(t.connection.to)):[t.connection.mx||o[0],t.connection.my||o[1]];return t.connection.from.isInput?{input:r,output:o}:{input:o,output:r}}),status:e}}});function OGn(t,e,n,o,r,i){const s=ze("connection-view");return N(),ot(s,{x1:t.d.input[0],y1:t.d.input[1],x2:t.d.output[0],y2:t.d.output[1],state:t.status,"is-temporary":""},null,8,["x1","y1","x2","y2","state"])}const MGn=yn(wGn,[["render",OGn]]),RGn=On({setup(){const{viewModel:t}=Ai(),{graph:e}=Zi(),n=Ve(null),o=a5(t.value.settings.sidebar,"width"),r=je(()=>t.value.settings.sidebar.resizable),i=je(()=>{const d=e.value.sidebar.nodeId;return e.value.nodes.find(f=>f.id===d)}),s=je(()=>({width:`${o.value}px`})),a=je(()=>i.value?[...Object.values(i.value.inputs),...Object.values(i.value.outputs)].filter(f=>f.displayInSidebar&&f.component):[]),l=()=>{e.value.sidebar.visible=!1},c=()=>{window.addEventListener("mousemove",u),window.addEventListener("mouseup",()=>{window.removeEventListener("mousemove",u)},{once:!0})},u=d=>{var f,T;const h=((T=(f=n.value)==null?void 0:f.parentElement)==null?void 0:T.getBoundingClientRect().width)??500;let g=o.value-d.movementX;g<300?g=300:g>.9*h&&(g=.9*h),o.value=g};return{el:n,graph:e,resizable:r,node:i,styles:s,displayedInterfaces:a,startResize:c,close:l}}}),NGn={class:"__header"},DGn={class:"__node-name"};function IGn(t,e,n,o,r,i){return N(),H("div",{ref:"el",class:Ee(["baklava-sidebar",{"--open":t.graph.sidebar.visible}]),style:an(t.styles)},[t.resizable?(N(),H("div",{key:0,class:"__resizer",onMousedown:e[0]||(e[0]=(...s)=>t.startResize&&t.startResize(...s))},null,32)):Z("",!0),S("div",NGn,[S("button",{tabindex:"-1",class:"__close",onClick:e[1]||(e[1]=(...s)=>t.close&&t.close(...s))},"×"),S("div",DGn,[S("b",null,J(t.node?t.node.title:""),1)])]),(N(!0),H(xe,null,Pe(t.displayedInterfaces,s=>(N(),H("div",{key:s.id,class:"__interface"},[(N(),ot(Vc(s.component),{modelValue:s.value,"onUpdate:modelValue":a=>s.value=a,node:t.node,intf:s},null,8,["modelValue","onUpdate:modelValue","node","intf"]))]))),128))],6)}const kGn=yn(RGn,[["render",IGn]]),HGn=On({__name:"Minimap",setup(t){const{viewModel:e}=Ai(),{graph:n}=Zi(),o=Ve(null),r=Ve(!1);let i,s=!1,a={x1:0,y1:0,x2:0,y2:0},l;const c=()=>{var E,x;if(!i)return;i.canvas.width=o.value.offsetWidth,i.canvas.height=o.value.offsetHeight;const L=new Map,C=new Map;for(const M of n.value.nodes){const $=xGn(M),U=($==null?void 0:$.offsetWidth)??0,G=($==null?void 0:$.offsetHeight)??0,P=((E=M.position)==null?void 0:E.x)??0,F=((x=M.position)==null?void 0:x.y)??0;L.set(M,{x1:P,y1:F,x2:P+U,y2:F+G}),C.set(M,$)}const A={x1:Number.MAX_SAFE_INTEGER,y1:Number.MAX_SAFE_INTEGER,x2:Number.MIN_SAFE_INTEGER,y2:Number.MIN_SAFE_INTEGER};for(const M of L.values())M.x1A.x2&&(A.x2=M.x2),M.y2>A.y2&&(A.y2=M.y2);const O=50;A.x1-=O,A.y1-=O,A.x2+=O,A.y2+=O,a=A;const R=i.canvas.width/i.canvas.height,I=(a.x2-a.x1)/(a.y2-a.y1);if(R>I){const M=(R-I)*(a.y2-a.y1)*.5;a.x1-=M,a.x2+=M}else{const M=a.x2-a.x1,$=a.y2-a.y1,U=(M-R*$)/R*.5;a.y1-=U,a.y2+=U}i.clearRect(0,0,i.canvas.width,i.canvas.height),i.strokeStyle="white";for(const M of n.value.connections){const[$,U]=H5(Rl(M.from)),[G,P]=H5(Rl(M.to)),[F,B]=u($,U),[q,ee]=u(G,P);if(i.beginPath(),i.moveTo(F,B),e.value.settings.useStraightConnections)i.lineTo(q,ee);else{const K=.3*Math.abs(F-q);i.bezierCurveTo(F+K,B,q-K,ee,q,ee)}i.stroke()}i.strokeStyle="lightgray";for(const[M,$]of L.entries()){const[U,G]=u($.x1,$.y1),[P,F]=u($.x2,$.y2);i.fillStyle=f(C.get(M)),i.beginPath(),i.rect(U,G,P-U,F-G),i.fill(),i.stroke()}if(r.value){const M=h(),[$,U]=u(M.x1,M.y1),[G,P]=u(M.x2,M.y2);i.fillStyle="rgba(255, 255, 255, 0.2)",i.fillRect($,U,G-$,P-U)}},u=(E,x)=>[(E-a.x1)/(a.x2-a.x1)*i.canvas.width,(x-a.y1)/(a.y2-a.y1)*i.canvas.height],d=(E,x)=>[E*(a.x2-a.x1)/i.canvas.width+a.x1,x*(a.y2-a.y1)/i.canvas.height+a.y1],f=E=>{if(E){const x=E.querySelector(".__content");if(x){const C=T(x);if(C)return C}const L=T(E);if(L)return L}return"gray"},T=E=>{const x=getComputedStyle(E).backgroundColor;if(x&&x!=="rgba(0, 0, 0, 0)")return x},h=()=>{const E=o.value.parentElement.offsetWidth,x=o.value.parentElement.offsetHeight,L=E/n.value.scaling-n.value.panning.x,C=x/n.value.scaling-n.value.panning.y;return{x1:-n.value.panning.x,y1:-n.value.panning.y,x2:L,y2:C}},g=E=>{E.button===0&&(s=!0,Q(E))},Q=E=>{if(s){const[x,L]=d(E.offsetX,E.offsetY),C=h(),A=(C.x2-C.x1)/2,O=(C.y2-C.y1)/2;n.value.panning.x=-(x-A),n.value.panning.y=-(L-O)}},m=()=>{s=!1},_=()=>{r.value=!0},v=()=>{r.value=!1,m()};$n([r,n.value.panning,()=>n.value.scaling,()=>n.value.connections.length],()=>{c()});const b=je(()=>n.value.nodes.map(E=>E.position)),y=je(()=>n.value.nodes.map(E=>E.width));return $n([b,y],()=>{c()},{deep:!0}),Hr(()=>{i=o.value.getContext("2d"),i.imageSmoothingQuality="high",c(),l=setInterval(c,500)}),D2(()=>{clearInterval(l)}),(E,x)=>(N(),H("canvas",{ref_key:"canvas",ref:o,class:"baklava-minimap",onMouseenter:_,onMouseleave:v,onMousedown:oe(g,["self"]),onMousemove:oe(Q,["self"]),onMouseup:m,onContextmenu:x[0]||(x[0]=oe(()=>{},["stop","prevent"]))},null,544))}}),PGn=On({components:{ContextMenu:Uh,VerticalDots:mH},props:{type:{type:String,required:!0},title:{type:String,required:!0}},setup(t){const{viewModel:e}=Ai(),{switchGraph:n}=Zi(),o=Ve(!1),r=je(()=>t.type.startsWith(kc));return{showContextMenu:o,hasContextMenu:r,contextMenuItems:[{label:"Edit Subgraph",value:"editSubgraph"},{label:"Delete Subgraph",value:"deleteSubgraph"}],openContextMenu:()=>{o.value=!0},onContextMenuClick:l=>{const c=t.type.substring(kc.length),u=e.value.editor.graphTemplates.find(d=>d.id===c);if(u)switch(l){case"editSubgraph":n(u);break;case"deleteSubgraph":e.value.editor.removeGraphTemplate(u);break}}}}}),$Gn=["data-node-type"],VGn={class:"__title"},BGn={class:"__title-label"},FGn={key:0,class:"__menu"};function UGn(t,e,n,o,r,i){const s=ze("vertical-dots"),a=ze("context-menu");return N(),H("div",{class:"baklava-node --palette","data-node-type":t.type},[S("div",VGn,[S("div",BGn,J(t.title),1),t.hasContextMenu?(N(),H("div",FGn,[ne(s,{class:"--clickable",onPointerdown:e[0]||(e[0]=oe(()=>{},["stop","prevent"])),onClick:oe(t.openContextMenu,["stop","prevent"])},null,8,["onClick"]),ne(a,{modelValue:t.showContextMenu,"onUpdate:modelValue":e[1]||(e[1]=l=>t.showContextMenu=l),x:-100,y:0,items:t.contextMenuItems,onClick:t.onContextMenuClick,onPointerdown:e[2]||(e[2]=oe(()=>{},["stop","prevent"]))},null,8,["modelValue","items","onClick"])])):Z("",!0)])],8,$Gn)}const KO=yn(PGn,[["render",UGn]]),qGn={key:0},GGn=On({__name:"NodePalette",setup(t){const{viewModel:e}=Ai(),{x:n,y:o}=Jqn(),{transform:r}=dH(),i=uH(e),s=Ui("editorEl"),a=Ve(null),l=je(()=>{if(!a.value||!(s!=null&&s.value))return{};const{left:u,top:d}=s.value.getBoundingClientRect();return{top:`${o.value-d}px`,left:`${n.value-u}px`}}),c=(u,d)=>{a.value={type:u,nodeInformation:d};const f=()=>{const T=fr(new d.type);e.value.displayedGraph.addNode(T);const h=s.value.getBoundingClientRect(),[g,Q]=r(n.value-h.left,o.value-h.top);T.position.x=g,T.position.y=Q,a.value=null,document.removeEventListener("pointerup",f)};document.addEventListener("pointerup",f)};return(u,d)=>(N(),H(xe,null,[S("div",{class:"baklava-node-palette",onContextmenu:d[0]||(d[0]=oe(()=>{},["stop","prevent"]))},[(N(!0),H(xe,null,Pe(gt(i),f=>(N(),H("section",{key:f.name},[f.name!=="default"?(N(),H("h1",qGn,J(f.name),1)):Z("",!0),(N(!0),H(xe,null,Pe(f.nodeTypes,(T,h)=>(N(),ot(KO,{key:h,type:h,title:T.title,onPointerdown:g=>c(h,T)},null,8,["type","title","onPointerdown"]))),128))]))),128))],32),ne(Nr,{name:"fade"},{default:Ge(()=>[a.value?(N(),H("div",{key:0,class:"baklava-dragged-node",style:an(l.value)},[ne(KO,{type:a.value.type,title:a.value.nodeInformation.title},null,8,["type","title"])],4)):Z("",!0)]),_:1})],64))}});let $6;const jGn=new Uint8Array(16);function zGn(){if(!$6&&($6=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!$6))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return $6(jGn)}const er=[];for(let t=0;t<256;++t)er.push((t+256).toString(16).slice(1));function YGn(t,e=0){return er[t[e+0]]+er[t[e+1]]+er[t[e+2]]+er[t[e+3]]+"-"+er[t[e+4]]+er[t[e+5]]+"-"+er[t[e+6]]+er[t[e+7]]+"-"+er[t[e+8]]+er[t[e+9]]+"-"+er[t[e+10]]+er[t[e+11]]+er[t[e+12]]+er[t[e+13]]+er[t[e+14]]+er[t[e+15]]}const WGn=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),ZO={randomUUID:WGn};function P5(t,e,n){if(ZO.randomUUID&&!t)return ZO.randomUUID();t=t||{};const o=t.random||(t.rng||zGn)();return o[6]=o[6]&15|64,o[8]=o[8]&63|128,YGn(o)}const Hc="SAVE_SUBGRAPH";function KGn(t,e){const n=()=>{const o=t.value;if(!o.template)throw new Error("Graph template property not set");o.template.update(o.save()),o.template.panning=o.panning,o.template.scaling=o.scaling};e.registerCommand(Hc,{canExecute:()=>{var o;return t.value!==((o=t.value.editor)==null?void 0:o.graph)},execute:n})}const ZGn={},XGn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},JGn=S("polyline",{points:"6 9 12 15 18 9"},null,-1),ejn=[JGn];function tjn(t,e){return N(),H("svg",XGn,ejn)}const njn=yn(ZGn,[["render",tjn]]),rjn=On({components:{"i-arrow":njn},props:{intf:{type:Object,required:!0}},setup(t){const e=Ve(null),n=Ve(!1),o=je(()=>t.intf.items.find(s=>typeof s=="string"?s===t.intf.value:s.value===t.intf.value)),r=je(()=>o.value?typeof o.value=="string"?o.value:o.value.text:""),i=s=>{t.intf.value=typeof s=="string"?s:s.value};return pH(e,()=>{n.value=!1}),{el:e,open:n,selectedItem:o,selectedText:r,setSelected:i}}}),ijn=["title"],ojn={class:"__selected"},sjn={class:"__text"},ajn={class:"__icon"},ljn={class:"__dropdown"},cjn={class:"item --header"},ujn=["onClick"];function djn(t,e,n,o,r,i){const s=ze("i-arrow");return N(),H("div",{ref:"el",class:Ee(["baklava-select",{"--open":t.open}]),title:t.intf.name,onClick:e[0]||(e[0]=a=>t.open=!t.open)},[S("div",ojn,[S("div",sjn,J(t.selectedText),1),S("div",ajn,[ne(s)])]),ne(Nr,{name:"slide-fade"},{default:Ge(()=>[Le(S("div",ljn,[S("div",cjn,J(t.intf.name),1),(N(!0),H(xe,null,Pe(t.intf.items,(a,l)=>(N(),H("div",{key:l,class:Ee(["item",{"--active":a===t.selectedItem}]),onClick:c=>t.setSelected(a)},J(typeof a=="string"?a:a.text),11,ujn))),128))],512),[[An,t.open]])]),_:1})],10,ijn)}const Tjn=yn(rjn,[["render",djn]]);class fjn extends mn{constructor(e,n,o){super(e,n),this.component=z5(Tjn),this.items=o}}const pjn=On({props:{intf:{type:Object,required:!0}}});function hjn(t,e,n,o,r,i){return N(),H("div",null,J(t.intf.value),1)}const mjn=yn(pjn,[["render",hjn]]);class gjn extends mn{constructor(e,n){super(e,n),this.component=z5(mjn),this.setPort(!1)}}const _jn=On({props:{intf:{type:Object,required:!0},modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(t,{emit:e}){return{v:je({get:()=>t.modelValue,set:o=>{e("update:modelValue",o)}})}}}),Qjn=["placeholder","title"];function vjn(t,e,n,o,r,i){return N(),H("div",null,[Le(S("input",{"onUpdate:modelValue":e[0]||(e[0]=s=>t.v=s),type:"text",class:"baklava-input",placeholder:t.intf.name,title:t.intf.name},null,8,Qjn),[[Je,t.v]])])}const yjn=yn(_jn,[["render",vjn]]);class i6 extends mn{constructor(){super(...arguments),this.component=z5(yjn)}}class _H extends $h{constructor(){super(...arguments),this._title="Subgraph Input",this.inputs={name:new i6("Name","Input").setPort(!1)},this.outputs={placeholder:new mn("Connection",void 0)}}}class QH extends Vh{constructor(){super(...arguments),this._title="Subgraph Output",this.inputs={name:new i6("Name","Output").setPort(!1),placeholder:new mn("Connection",void 0)},this.outputs={output:new mn("Output",void 0).setHidden(!0)}}}const vH="CREATE_SUBGRAPH",XO=[wl,Ol];function bjn(t,e,n){const o=()=>t.value.selectedNodes.filter(i=>!XO.includes(i.type)).length>0,r=()=>{const{viewModel:i}=Ai(),s=t.value,a=t.value.editor;if(s.selectedNodes.length===0)return;const l=s.selectedNodes.filter(C=>!XO.includes(C.type)),c=l.flatMap(C=>Object.values(C.inputs)),u=l.flatMap(C=>Object.values(C.outputs)),d=s.connections.filter(C=>!u.includes(C.from)&&c.includes(C.to)),f=s.connections.filter(C=>u.includes(C.from)&&!c.includes(C.to)),T=s.connections.filter(C=>u.includes(C.from)&&c.includes(C.to)),h=l.map(C=>C.save()),g=T.map(C=>({id:C.id,from:C.from.id,to:C.to.id})),Q=new Map,{xLeft:m,xRight:_,yTop:v}=Ejn(l);for(const[C,A]of d.entries()){const O=new _H;O.inputs.name.value=A.to.name,h.push({...O.save(),position:{x:_-i.value.settings.nodes.defaultWidth-100,y:v+C*200}}),g.push({id:P5(),from:O.outputs.placeholder.id,to:A.to.id}),Q.set(A.to.id,O.graphInterfaceId)}for(const[C,A]of f.entries()){const O=new QH;O.inputs.name.value=A.from.name,h.push({...O.save(),position:{x:m+100,y:v+C*200}}),g.push({id:P5(),from:A.from.id,to:O.inputs.placeholder.id}),Q.set(A.from.id,O.graphInterfaceId)}const b=fr(new x0({connections:g,nodes:h,inputs:[],outputs:[]},a));a.addGraphTemplate(b);const y=a.nodeTypes.get(Ml(b));if(!y)throw new Error("Unable to create subgraph: Could not find corresponding graph node type");s.activeTransactions++;const E=fr(new y.type);s.addNode(E);const x=Math.round(l.map(C=>C.position.x).reduce((C,A)=>C+A,0)/l.length),L=Math.round(l.map(C=>C.position.y).reduce((C,A)=>C+A,0)/l.length);E.position.x=x,E.position.y=L,d.forEach(C=>{s.removeConnection(C),s.addConnection(C.from,E.inputs[Q.get(C.to.id)])}),f.forEach(C=>{s.removeConnection(C),s.addConnection(E.outputs[Q.get(C.from.id)],C.to)}),l.forEach(C=>s.removeNode(C)),s.activeTransactions--,e.canExecuteCommand(Hc)&&e.executeCommand(Hc),n(b),t.value.panning={...s.panning},t.value.scaling=s.scaling};e.registerCommand(vH,{canExecute:o,execute:r})}function Ejn(t){const e=t.reduce((r,i)=>{const s=i.position.x;return s{const s=i.position.y;return s{const s=i.position.x+i.width;return s>r?s:r},-1/0),xRight:e,yTop:n}}class JO{constructor(e,n){this.type=e,e==="addNode"?this.nodeId=n:this.nodeState=n}undo(e){this.type==="addNode"?this.removeNode(e):this.addNode(e)}redo(e){this.type==="addNode"&&this.nodeState?this.addNode(e):this.type==="removeNode"&&this.nodeId&&this.removeNode(e)}addNode(e){const n=e.editor.nodeTypes.get(this.nodeState.type);if(!n)return;const o=new n.type;e.addNode(o),o.load(this.nodeState),this.nodeId=o.id}removeNode(e){const n=e.nodes.find(o=>o.id===this.nodeId);n&&(this.nodeState=n.save(),e.removeNode(n))}}class eM{constructor(e,n){if(this.type=e,e==="addConnection")this.connectionId=n;else{const o=n;this.connectionState={id:o.id,from:o.from.id,to:o.to.id}}}undo(e){this.type==="addConnection"?this.removeConnection(e):this.addConnection(e)}redo(e){this.type==="addConnection"&&this.connectionState?this.addConnection(e):this.type==="removeConnection"&&this.connectionId&&this.removeConnection(e)}addConnection(e){const n=e.findNodeInterface(this.connectionState.from),o=e.findNodeInterface(this.connectionState.to);if(!n||!o)return;const r=e.addConnection(n,o);r&&(r.id=this.connectionState.id),this.connectionId=r==null?void 0:r.id}removeConnection(e){const n=e.connections.find(o=>o.id===this.connectionId);n&&(this.connectionState={id:n.id,from:n.from.id,to:n.to.id},e.removeConnection(n))}}class Sjn{constructor(e){if(this.type="transaction",e.length===0)throw new Error("Can't create a transaction with no steps");this.steps=e}undo(e){for(let n=this.steps.length-1;n>=0;n--)this.steps[n].undo(e)}redo(e){for(let n=0;n{if(!i.value)if(a.value)l.value.push(Q);else for(s.value!==r.value.length-1&&(r.value=r.value.slice(0,s.value+1)),r.value.push(Q),s.value++;r.value.length>o.value;)r.value.shift()},u=()=>{a.value=!0},d=()=>{a.value=!1,l.value.length>0&&(c(new Sjn(l.value)),l.value=[])},f=()=>r.value.length!==0&&s.value!==-1,T=()=>{f()&&(i.value=!0,r.value[s.value--].undo(t.value),i.value=!1)},h=()=>r.value.length!==0&&s.value{h()&&(i.value=!0,r.value[++s.value].redo(t.value),i.value=!1)};return $n(t,(Q,m)=>{m&&(m.events.addNode.unsubscribe(n),m.events.removeNode.unsubscribe(n),m.events.addConnection.unsubscribe(n),m.events.removeConnection.unsubscribe(n)),Q&&(Q.events.addNode.subscribe(n,_=>{c(new JO("addNode",_.id))}),Q.events.removeNode.subscribe(n,_=>{c(new JO("removeNode",_.save()))}),Q.events.addConnection.subscribe(n,_=>{c(new eM("addConnection",_.id))}),Q.events.removeConnection.subscribe(n,_=>{c(new eM("removeConnection",_))}))},{immediate:!0}),e.registerCommand(qf,{canExecute:f,execute:T}),e.registerCommand(Gf,{canExecute:h,execute:g}),e.registerCommand(qh,{canExecute:()=>!a.value,execute:u}),e.registerCommand(Gh,{canExecute:()=>a.value,execute:d}),e.registerHotkey(["Control","z"],qf),e.registerHotkey(["Control","y"],Gf),fr({maxSteps:o})}const jf="DELETE_NODES";function Ljn(t,e){e.registerCommand(jf,{canExecute:()=>t.value.selectedNodes.length>0,execute(){e.executeCommand(qh);for(let n=t.value.selectedNodes.length-1;n>=0;n--){const o=t.value.selectedNodes[n];t.value.removeNode(o)}e.executeCommand(Gh)}}),e.registerHotkey(["Delete"],jf)}const yH="SWITCH_TO_MAIN_GRAPH";function Cjn(t,e,n){e.registerCommand(yH,{canExecute:()=>t.value!==t.value.editor.graph,execute:()=>{e.executeCommand(Hc),n(t.value.editor.graph)}})}function Ajn(t,e,n){Ljn(t,e),bjn(t,e,n),KGn(t,e),Cjn(t,e,n)}const zf="COPY",Yf="PASTE",wjn="CLEAR_CLIPBOARD";function Ojn(t,e,n){const o=Symbol("ClipboardToken"),r=Ve(""),i=Ve(""),s=je(()=>!r.value),a=()=>{r.value="",i.value=""},l=()=>{const d=t.value.selectedNodes.flatMap(T=>[...Object.values(T.inputs),...Object.values(T.outputs)]),f=t.value.connections.filter(T=>d.includes(T.from)||d.includes(T.to)).map(T=>({from:T.from.id,to:T.to.id}));i.value=JSON.stringify(f),r.value=JSON.stringify(t.value.selectedNodes.map(T=>T.save()))},c=(d,f,T)=>{for(const h of d){let g;if((!T||T==="input")&&(g=Object.values(h.inputs).find(Q=>Q.id===f)),!g&&(!T||T==="output")&&(g=Object.values(h.outputs).find(Q=>Q.id===f)),g)return g}},u=()=>{if(s.value)return;const d=new Map,f=JSON.parse(r.value),T=JSON.parse(i.value),h=[],g=[],Q=t.value;n.executeCommand(qh);for(const m of f){const _=e.value.nodeTypes.get(m.type);if(!_){console.warn(`Node type ${m.type} not registered`);return}const v=new _.type,b=v.id;h.push(v),v.hooks.beforeLoad.subscribe(o,y=>{const E=y;return E.position&&(E.position.x+=100,E.position.y+=100),v.hooks.beforeLoad.unsubscribe(o),E}),Q.addNode(v),v.load({...m,id:b}),v.id=b,d.set(m.id,b);for(const y of Object.values(v.inputs)){const E=P5();d.set(y.id,E),y.id=E}for(const y of Object.values(v.outputs)){const E=P5();d.set(y.id,E),y.id=E}}for(const m of T){const _=c(h,d.get(m.from),"output"),v=c(h,d.get(m.to),"input");if(!_||!v)continue;const b=Q.addConnection(_,v);b&&g.push(b)}return t.value.selectedNodes=h,n.executeCommand(Gh),{newNodes:h,newConnections:g}};return n.registerCommand(zf,{canExecute:()=>t.value.selectedNodes.length>0,execute:l}),n.registerHotkey(["Control","c"],zf),n.registerCommand(Yf,{canExecute:()=>!s.value,execute:u}),n.registerHotkey(["Control","v"],Yf),n.registerCommand(wjn,{canExecute:()=>!0,execute:a}),fr({isEmpty:s})}const Mjn="OPEN_SIDEBAR";function Rjn(t,e){e.registerCommand(Mjn,{execute:n=>{t.value.sidebar.nodeId=n,t.value.sidebar.visible=!0},canExecute:()=>!0})}function Njn(t,e){Rjn(t,e)}const Djn={},Ijn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},kjn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),Hjn=S("path",{d:"M9 13l-4 -4l4 -4m-4 4h11a4 4 0 0 1 0 8h-1"},null,-1),Pjn=[kjn,Hjn];function $jn(t,e){return N(),H("svg",Ijn,Pjn)}const Vjn=yn(Djn,[["render",$jn]]),Bjn={},Fjn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},Ujn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),qjn=S("path",{d:"M15 13l4 -4l-4 -4m4 4h-11a4 4 0 0 0 0 8h1"},null,-1),Gjn=[Ujn,qjn];function jjn(t,e){return N(),H("svg",Fjn,Gjn)}const zjn=yn(Bjn,[["render",jjn]]),Yjn={},Wjn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},Kjn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),Zjn=S("line",{x1:"5",y1:"12",x2:"19",y2:"12"},null,-1),Xjn=S("line",{x1:"5",y1:"12",x2:"11",y2:"18"},null,-1),Jjn=S("line",{x1:"5",y1:"12",x2:"11",y2:"6"},null,-1),ezn=[Kjn,Zjn,Xjn,Jjn];function tzn(t,e){return N(),H("svg",Wjn,ezn)}const nzn=yn(Yjn,[["render",tzn]]),rzn={},izn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},ozn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),szn=S("path",{d:"M9 5h-2a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-12a2 2 0 0 0 -2 -2h-2"},null,-1),azn=S("rect",{x:"9",y:"3",width:"6",height:"4",rx:"2"},null,-1),lzn=[ozn,szn,azn];function czn(t,e){return N(),H("svg",izn,lzn)}const uzn=yn(rzn,[["render",czn]]),dzn={},Tzn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},fzn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),pzn=S("rect",{x:"8",y:"8",width:"12",height:"12",rx:"2"},null,-1),hzn=S("path",{d:"M16 8v-2a2 2 0 0 0 -2 -2h-8a2 2 0 0 0 -2 2v8a2 2 0 0 0 2 2h2"},null,-1),mzn=[fzn,pzn,hzn];function gzn(t,e){return N(),H("svg",Tzn,mzn)}const _zn=yn(dzn,[["render",gzn]]),Qzn={},vzn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},yzn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),bzn=S("path",{d:"M6 4h10l4 4v10a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2"},null,-1),Ezn=S("circle",{cx:"12",cy:"14",r:"2"},null,-1),Szn=S("polyline",{points:"14 4 14 8 8 8 8 4"},null,-1),xzn=[yzn,bzn,Ezn,Szn];function Lzn(t,e){return N(),H("svg",vzn,xzn)}const Czn=yn(Qzn,[["render",Lzn]]),Azn={},wzn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},Ozn=tr('',6),Mzn=[Ozn];function Rzn(t,e){return N(),H("svg",wzn,Mzn)}const Nzn=yn(Azn,[["render",Rzn]]),Dzn={},Izn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},kzn=tr('',18),Hzn=[kzn];function Pzn(t,e){return N(),H("svg",Izn,Hzn)}const $zn=yn(Dzn,[["render",Pzn]]),Vzn={},Bzn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},Fzn=tr('',6),Uzn=[Fzn];function qzn(t,e){return N(),H("svg",Bzn,Uzn)}const Gzn=yn(Vzn,[["render",qzn]]),jzn=On({props:{command:{type:String,required:!0},title:{type:String,required:!0},icon:{type:Object,required:!1,default:void 0}},setup(){const{viewModel:t}=Ai();return{viewModel:t}}}),zzn=["disabled","title"];function Yzn(t,e,n,o,r,i){return N(),H("button",{class:"baklava-toolbar-entry baklava-toolbar-button",disabled:!t.viewModel.commandHandler.canExecuteCommand(t.command),title:t.title,onClick:e[0]||(e[0]=s=>t.viewModel.commandHandler.executeCommand(t.command))},[t.icon?(N(),ot(Vc(t.icon),{key:0})):(N(),H(xe,{key:1},[Re(J(t.title),1)],64))],8,zzn)}const Wzn=yn(jzn,[["render",Yzn]]),Kzn=On({components:{ToolbarButton:Wzn},setup(){const{viewModel:t}=Ai();return{isSubgraph:je(()=>t.value.displayedGraph!==t.value.editor.graph),commands:[{command:zf,title:"Copy",icon:_zn},{command:Yf,title:"Paste",icon:uzn},{command:jf,title:"Delete selected nodes",icon:Gzn},{command:qf,title:"Undo",icon:Vjn},{command:Gf,title:"Redo",icon:zjn},{command:r5,title:"Box Select",icon:$zn},{command:vH,title:"Create Subgraph",icon:Nzn}],subgraphCommands:[{command:Hc,title:"Save Subgraph",icon:Czn},{command:yH,title:"Back to Main Graph",icon:nzn}]}}});function Zzn(t,e,n,o,r,i){const s=ze("toolbar-button");return N(),H("div",{class:"baklava-toolbar",onContextmenu:e[0]||(e[0]=oe(()=>{},["stop","prevent"]))},[(N(!0),H(xe,null,Pe(t.commands,a=>(N(),ot(s,{key:a.command,command:a.command,title:a.title,icon:a.icon},null,8,["command","title","icon"]))),128)),t.isSubgraph?(N(!0),H(xe,{key:0},Pe(t.subgraphCommands,a=>(N(),ot(s,{key:a.command,command:a.command,title:a.title,icon:a.icon},null,8,["command","title","icon"]))),128)):Z("",!0)],32)}const Xzn=yn(Kzn,[["render",Zzn]]),Jzn={class:"connections-container"},eYn=On({__name:"Editor",props:{viewModel:{}},setup(t){const e=t,n=Symbol("EditorToken"),o=a5(e,"viewModel");Hqn(o);const r=Ve(null);fl("editorEl",r);const i=je(()=>e.viewModel.displayedGraph.nodes),s=je(()=>e.viewModel.displayedGraph.nodes.map(L=>lH(a5(L,"position")))),a=je(()=>e.viewModel.displayedGraph.connections),l=je(()=>e.viewModel.displayedGraph.selectedNodes),c=Pqn(),u=$qn(),d=Vqn(o),f=Bqn(r),T=je(()=>({...c.styles.value})),h=Ve(0);e.viewModel.editor.hooks.load.subscribe(n,L=>(h.value++,L));const g=L=>{c.onPointerMove(L),u.onMouseMove(L)},Q=L=>{if(L.button===0){if(f.onPointerDown(L))return;L.target===r.value&&(y(),c.onPointerDown(L)),u.onMouseDown()}},m=L=>{c.onPointerUp(L),u.onMouseUp()},_=L=>{L.key==="Tab"&&L.preventDefault(),e.viewModel.commandHandler.handleKeyDown(L)},v=L=>{e.viewModel.commandHandler.handleKeyUp(L)},b=L=>{["Control","Shift"].some(C=>e.viewModel.commandHandler.pressedKeys.includes(C))||y(),e.viewModel.displayedGraph.selectedNodes.push(L)},y=()=>{e.viewModel.displayedGraph.selectedNodes=[]},E=L=>{for(const C of e.viewModel.displayedGraph.selectedNodes){const A=i.value.indexOf(C),O=s.value[A];O.onPointerDown(L),document.addEventListener("pointermove",O.onPointerMove)}document.addEventListener("pointerup",x)},x=()=>{for(const L of e.viewModel.displayedGraph.selectedNodes){const C=i.value.indexOf(L),A=s.value[C];A.onPointerUp(),document.removeEventListener("pointermove",A.onPointerMove)}document.removeEventListener("pointerup",x)};return(L,C)=>(N(),H("div",{ref_key:"el",ref:r,tabindex:"-1",class:Ee(["baklava-editor",{"baklava-ignore-mouse":!!gt(u).temporaryConnection.value||gt(c).dragging.value,"--temporary-connection":!!gt(u).temporaryConnection.value,"--start-selection-box":gt(f).startSelection}]),onPointermove:oe(g,["self"]),onPointerdown:Q,onPointerup:m,onWheel:C[1]||(C[1]=oe((...A)=>gt(c).onMouseWheel&>(c).onMouseWheel(...A),["self"])),onKeydown:_,onKeyup:v,onContextmenu:C[2]||(C[2]=(...A)=>gt(d).open&>(d).open(...A))},[_n(L.$slots,"background",{},()=>[ne(qqn)]),_n(L.$slots,"toolbar",{},()=>[L.viewModel.settings.toolbar.enabled?(N(),ot(Xzn,{key:0})):Z("",!0)]),_n(L.$slots,"palette",{},()=>[L.viewModel.settings.palette.enabled?(N(),ot(GGn,{key:0})):Z("",!0)]),(N(),H("svg",Jzn,[(N(!0),H(xe,null,Pe(a.value,A=>(N(),H("g",{key:A.id+h.value.toString()},[_n(L.$slots,"connection",{connection:A},()=>[ne(AGn,{connection:A},null,8,["connection"])])]))),128)),_n(L.$slots,"temporaryConnection",{temporaryConnection:gt(u).temporaryConnection.value},()=>[gt(u).temporaryConnection.value?(N(),ot(MGn,{key:0,connection:gt(u).temporaryConnection.value},null,8,["connection"])):Z("",!0)])])),S("div",{class:"node-container",style:an(T.value)},[ne(w2,{name:"fade"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(i.value,(A,O)=>_n(L.$slots,"node",{key:A.id+h.value.toString(),node:A,selected:l.value.includes(A),dragging:s.value[O].dragging.value,onSelect:R=>b(A),onStartDrag:E},()=>[ne(yGn,{node:A,selected:l.value.includes(A),dragging:s.value[O].dragging.value,onSelect:R=>b(A),onStartDrag:E},null,8,["node","selected","dragging","onSelect"])])),128))]),_:3})],4),_n(L.$slots,"sidebar",{},()=>[L.viewModel.settings.sidebar.enabled?(N(),ot(kGn,{key:0})):Z("",!0)]),_n(L.$slots,"minimap",{},()=>[L.viewModel.settings.enableMinimap?(N(),ot(HGn,{key:0})):Z("",!0)]),_n(L.$slots,"contextMenu",{contextMenu:gt(d)},()=>[L.viewModel.settings.contextMenu.enabled?(N(),ot(Uh,{key:0,modelValue:gt(d).show.value,"onUpdate:modelValue":C[0]||(C[0]=A=>gt(d).show.value=A),items:gt(d).items.value,x:gt(d).x.value,y:gt(d).y.value,onClick:gt(d).onClick},null,8,["modelValue","items","x","y","onClick"])):Z("",!0)]),gt(f).isSelecting?(N(),H("div",{key:0,class:"selection-box",style:an(gt(f).getStyles())},null,4)):Z("",!0)],34))}});function tYn(t){const e=Ve([]),n=Ve([]);return{pressedKeys:e,handleKeyDown:s=>{e.value.includes(s.key)||e.value.push(s.key),!(document.activeElement&&aH(document.activeElement))&&n.value.forEach(a=>{var l,c;a.keys.every(u=>e.value.includes(u))&&((l=a.options)!=null&&l.preventDefault&&s.preventDefault(),(c=a.options)!=null&&c.stopPropagation&&s.stopPropagation(),t(a.commandName))})},handleKeyUp:s=>{const a=e.value.indexOf(s.key);a>=0&&e.value.splice(a,1)},registerHotkey:(s,a,l)=>{n.value.push({keys:s,commandName:a,options:l})}}}const nYn=()=>{const t=Ve(new Map),e=s=>t.value.has(s),n=(s,a)=>{if(t.value.has(s))throw new Error(`Command "${s}" already exists`);t.value.set(s,a)},o=(s,a=!1,...l)=>{if(!t.value.has(s)){if(a)throw new Error(`[CommandHandler] Command ${s} not registered`);return}return t.value.get(s).execute(...l)},r=(s,a=!1,...l)=>{if(!t.value.has(s)){if(a)throw new Error(`[CommandHandler] Command ${s} not registered`);return!1}return t.value.get(s).canExecute(l)},i=tYn(o);return fr({hasCommand:e,registerCommand:n,executeCommand:o,canExecuteCommand:r,...i})},rYn=t=>!(t instanceof r6);function iYn(t,e){return{switchGraph:o=>{let r;if(rYn(o))r=new r6(t.value),o.createGraph(r);else{if(o!==t.value.graph)throw new Error("Can only switch using 'Graph' instance when it is the root graph. Otherwise a 'GraphTemplate' must be used.");r=o}e.value&&e.value!==t.value.graph&&e.value.destroy(),r.panning=r.panning??o.panning??{x:0,y:0},r.scaling=r.scaling??o.scaling??1,r.selectedNodes=r.selectedNodes??[],r.sidebar=r.sidebar??{visible:!1,nodeId:"",optionName:""},e.value=r}}}function oYn(t,e){t.position=t.position??{x:0,y:0},t.disablePointerEvents=!1,t.twoColumn=t.twoColumn??!1,t.width=t.width??e.defaultWidth}const sYn=()=>({useStraightConnections:!1,enableMinimap:!1,toolbar:{enabled:!0},palette:{enabled:!0},background:{gridSize:100,gridDivision:5,subGridVisibleThreshold:.6},sidebar:{enabled:!0,width:300,resizable:!0},displayValueOnHover:!1,nodes:{defaultWidth:200,maxWidth:320,minWidth:150,resizable:!1,reverseY:!1},contextMenu:{enabled:!0,additionalItems:[]}});function aYn(t){const e=Ve(new Oqn),n=Symbol("ViewModelToken"),o=Ve(null),r=OP(o),{switchGraph:i}=iYn(e,o),s=je(()=>r.value&&r.value!==e.value.graph),a=fr(sYn()),l=nYn(),c=xjn(r,l),u=Ojn(r,e,l),d={renderNode:new Ci(null),renderInterface:new Ci(null)};return Ajn(r,l,i),Njn(r,l),$n(e,(f,T)=>{T&&(T.events.registerGraph.unsubscribe(n),T.graphEvents.beforeAddNode.unsubscribe(n),f.nodeHooks.beforeLoad.unsubscribe(n),f.nodeHooks.afterSave.unsubscribe(n),f.graphTemplateHooks.beforeLoad.unsubscribe(n),f.graphTemplateHooks.afterSave.unsubscribe(n),f.graph.hooks.load.unsubscribe(n),f.graph.hooks.save.unsubscribe(n)),f&&(f.nodeHooks.beforeLoad.subscribe(n,(h,g)=>(g.position=h.position??{x:0,y:0},g.width=h.width??a.nodes.defaultWidth,g.twoColumn=h.twoColumn??!1,h)),f.nodeHooks.afterSave.subscribe(n,(h,g)=>(h.position=g.position,h.width=g.width,h.twoColumn=g.twoColumn,h)),f.graphTemplateHooks.beforeLoad.subscribe(n,(h,g)=>(g.panning=h.panning,g.scaling=h.scaling,h)),f.graphTemplateHooks.afterSave.subscribe(n,(h,g)=>(h.panning=g.panning,h.scaling=g.scaling,h)),f.graph.hooks.load.subscribe(n,(h,g)=>(g.panning=h.panning,g.scaling=h.scaling,h)),f.graph.hooks.save.subscribe(n,(h,g)=>(h.panning=g.panning,h.scaling=g.scaling,h)),f.graphEvents.beforeAddNode.subscribe(n,h=>oYn(h,{defaultWidth:a.nodes.defaultWidth})),e.value.registerNodeType(_H,{category:"Subgraphs"}),e.value.registerNodeType(QH,{category:"Subgraphs"}),i(f.graph))},{immediate:!0}),fr({editor:e,displayedGraph:r,isSubgraph:s,settings:a,commandHandler:l,history:c,clipboard:u,hooks:d,switchGraph:i})}const lYn=Gl({type:"PersonalityNode",title:"Personality",inputs:{request:()=>new mn("Request",""),agent_name:()=>new fjn("Personality","",m1.state.config.personalities).setPort(!1)},outputs:{response:()=>new mn("Response","")},async calculate({request:t}){console.log(m1.state.config.personalities);let e="";try{e=(await ce.post("/generate",{params:{text:t}})).data}catch(n){console.error(n)}return{display:e,response:e}}}),cYn=Gl({type:"RAGNode",title:"RAG",inputs:{request:()=>new mn("Prompt",""),document_path:()=>new i6("Document path","").setPort(!1)},outputs:{prompt:()=>new mn("Prompt with Data","")},async calculate({request:t,document_path:e}){let n="";try{n=(await ce.get("/rag",{params:{text:t,doc_path:e}})).data}catch(o){console.error(o)}return{response:n}}}),tM=Gl({type:"Task",title:"Task",inputs:{description:()=>new i6("Task description","").setPort(!1)},outputs:{prompt:()=>new mn("Prompt")},calculate({description:t}){return{prompt:t}}}),nM=Gl({type:"TextDisplayNode",title:"TextDisplay",inputs:{text2display:()=>new mn("Input","")},outputs:{response:()=>new gjn("Text","")},async calculate({request:t}){}}),rM=Gl({type:"LLMNode",title:"LLM",inputs:{request:()=>new mn("Request","")},outputs:{response:()=>new mn("Response","")},async calculate({request:t}){console.log(m1.state.config.personalities);let e="";try{e=(await ce.post("/generate",{params:{text:t}})).data}catch(n){console.error(n)}return{display:e,response:e}}}),uYn=Gl({type:"MultichoiceNode",title:"Multichoice",inputs:{question:()=>new mn("Question",""),outputs:()=>new i6("choices, one per line","","").setPort(!1)},outputs:{response:()=>new mn("Response","")}}),dYn=On({components:{"baklava-editor":eYn},setup(){const t=aYn(),e=new Iqn(t.editor);t.editor.registerNodeType(lYn),t.editor.registerNodeType(tM),t.editor.registerNodeType(cYn),t.editor.registerNodeType(nM),t.editor.registerNodeType(rM),t.editor.registerNodeType(uYn);const n=Symbol();e.events.afterRun.subscribe(n,a=>{e.pause(),Mqn(a,t.editor),e.resume()}),e.start();function o(a,l,c){const u=new a;return t.displayedGraph.addNode(u),u.position.x=l,u.position.y=c,u}const r=o(tM,300,140),i=o(rM,550,140),s=o(nM,850,140);return t.displayedGraph.addConnection(r.outputs.prompt,i.inputs.request),t.displayedGraph.addConnection(i.outputs.response,s.inputs.text2display),{baklava:t,saveGraph:()=>{const a=e.export();localStorage.setItem("myGraph",JSON.stringify(a))},loadGraph:()=>{const a=JSON.parse(localStorage.getItem("myGraph"));e.import(a)}}}}),TYn={style:{width:"100vw",height:"100vh"}};function fYn(t,e,n,o,r,i){const s=ze("baklava-editor");return N(),H("div",TYn,[ne(s,{"view-model":t.baklava},null,8,["view-model"]),S("button",{onClick:e[0]||(e[0]=(...a)=>t.saveGraph&&t.saveGraph(...a))},"Save Graph"),S("button",{onClick:e[1]||(e[1]=(...a)=>t.loadGraph&&t.loadGraph(...a))},"Load Graph")])}const pYn=Ye(dYn,[["render",fYn]]),hYn={},mYn={style:{width:"100vw",height:"100vh"}},gYn=["src"];function _Yn(t,e,n,o,r,i){return N(),H("div",mYn,[S("iframe",{src:t.$store.state.config.comfyui_base_url,class:"m-0 p-0 w-full h-full"},null,8,gYn)])}const QYn=Ye(hYn,[["render",_Yn]]),vYn={},yYn={style:{width:"100vw",height:"100vh"}},bYn=["src"];function EYn(t,e,n,o,r,i){return N(),H("div",yYn,[S("iframe",{src:t.$store.state.config.sd_base_url,class:"m-0 p-0 w-full h-full"},null,8,bYn)])}const SYn=Ye(vYn,[["render",EYn]]),xYn={name:"AppCard",props:{app:{type:Object,required:!0},isFavorite:{type:Boolean,default:!1}},methods:{formatDate(t){const e={year:"numeric",month:"short",day:"numeric"};return new Date(t).toLocaleDateString(void 0,e)}}},LYn={class:"app-card flex flex-col h-full"},CYn={class:"flex-grow"},AYn={class:"flex items-center mb-4"},wYn=["src"],OYn={class:"font-bold text-xl text-gray-800"},MYn={class:"text-sm text-gray-600"},RYn={class:"text-sm text-gray-600"},NYn={class:"text-sm text-gray-600"},DYn={class:"text-sm text-gray-600"},IYn={class:"text-sm text-gray-600"},kYn={class:"mb-4"},HYn={class:"text-sm text-gray-600 h-20 overflow-y-auto"},PYn={class:"text-sm text-gray-600 mb-2"},$Yn={key:0,class:"mb-4"},VYn={class:"text-xs text-gray-500 italic h-16 overflow-y-auto"},BYn={class:"mt-auto pt-4 border-t"},FYn={class:"flex justify-between items-center flex-wrap"},UYn=["title"],qYn=["fill"];function GYn(t,e,n,o,r,i){return N(),H("div",LYn,[S("div",CYn,[S("div",AYn,[S("img",{src:n.app.icon,alt:"App Icon",class:"w-16 h-16 rounded-full border border-gray-300 mr-4"},null,8,wYn),S("div",null,[S("h3",OYn,J(n.app.name),1),S("p",MYn,"Author: "+J(n.app.author),1),S("p",RYn,"Version: "+J(n.app.version),1),S("p",NYn,"Category: "+J(n.app.category),1),S("p",DYn,"Creation date: "+J(i.formatDate(n.app.creation_date)),1),S("p",IYn,"Last update: "+J(i.formatDate(n.app.last_update_date)),1),S("p",{class:Ee(["text-sm",n.app.is_public?"text-green-600":"text-orange-600"])},J(n.app.is_public?"Public App":"Local App"),3)])]),S("div",kYn,[e[10]||(e[10]=S("h4",{class:"font-semibold mb-1 text-gray-700"},"Description:",-1)),S("p",HYn,J(n.app.description),1)]),S("p",PYn,"AI Model: "+J(n.app.model_name),1),n.app.disclaimer&&n.app.disclaimer.trim()!==""?(N(),H("div",$Yn,[e[11]||(e[11]=S("h4",{class:"font-semibold mb-1 text-gray-700"},"Disclaimer:",-1)),S("p",VYn,J(n.app.disclaimer),1)])):Z("",!0)]),S("div",BYn,[S("div",FYn,[S("button",{onClick:e[0]||(e[0]=oe(s=>t.$emit("toggle-favorite",n.app.name),["stop"])),class:"text-yellow-500 hover:text-yellow-600 transition duration-300 ease-in-out",title:n.isFavorite?"Remove from favorites":"Add to favorites"},[(N(),H("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:n.isFavorite?"currentColor":"none",viewBox:"0 0 24 24",stroke:"currentColor"},e[12]||(e[12]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"},null,-1)]),8,qYn))],8,UYn),n.app.installed?(N(),H("button",{key:0,onClick:e[1]||(e[1]=oe(s=>t.$emit("uninstall",n.app.folder_name),["stop"])),class:"text-red-500 hover:text-red-600 transition duration-300 ease-in-out",title:"Uninstall"},e[13]||(e[13]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)]))):n.app.existsInFolder?(N(),H("button",{key:1,onClick:e[2]||(e[2]=oe(s=>t.$emit("delete",n.app.name),["stop"])),class:"text-yellow-500 hover:text-yellow-600 transition duration-300 ease-in-out",title:"Delete"},e[14]||(e[14]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)]))):(N(),H("button",{key:2,onClick:e[3]||(e[3]=oe(s=>t.$emit("install",n.app.folder_name),["stop"])),class:"text-blue-500 hover:text-blue-600 transition duration-300 ease-in-out",title:"Install"},e[15]||(e[15]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4"})],-1)]))),n.app.installed?(N(),H("button",{key:3,onClick:e[4]||(e[4]=oe(s=>t.$emit("edit",n.app),["stop"])),class:"text-purple-500 hover:text-purple-600 transition duration-300 ease-in-out",title:"Edit"},e[16]||(e[16]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"})],-1)]))):Z("",!0),S("button",{onClick:e[5]||(e[5]=oe(s=>t.$emit("download",n.app.folder_name),["stop"])),class:"text-green-500 hover:text-green-600 transition duration-300 ease-in-out",title:"Download"},e[17]||(e[17]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4"})],-1)])),n.app.has_readme?(N(),H("button",{key:4,onClick:e[6]||(e[6]=oe(s=>t.$emit("help",n.app),["stop"])),class:"text-gray-500 hover:text-gray-600 transition duration-300 ease-in-out",title:"Help"},e[18]||(e[18]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M12 21a9 9 0 100-18 9 9 0 000 18z"})],-1)]))):Z("",!0),n.app.installed?(N(),H("button",{key:5,onClick:e[7]||(e[7]=oe(s=>t.$emit("open",n.app),["stop"])),class:"text-indigo-500 hover:text-indigo-600 transition duration-300 ease-in-out",title:"Open"},e[19]||(e[19]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"})],-1)]))):Z("",!0),n.app.has_server&&n.app.installed?(N(),H("button",{key:6,onClick:e[8]||(e[8]=oe(s=>t.$emit("start-server",n.app.folder_name),["stop"])),class:"text-teal-500 hover:text-teal-600 transition duration-300 ease-in-out",title:"Start Server"},e[20]||(e[20]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 12h14M12 5l7 7-7 7"})],-1)]))):Z("",!0),n.app.has_update?(N(),H("button",{key:7,onClick:e[9]||(e[9]=oe(s=>t.$emit("install",n.app.folder_name),["stop"])),class:"relative text-yellow-500 hover:text-yellow-600 transition duration-300 ease-in-out animate-pulse",title:"Update Available"},e[21]||(e[21]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1),S("span",{class:"absolute top-0 right-0 inline-flex items-center justify-center px-2 py-1 text-xs font-bold leading-none text-red-100 transform translate-x-1/2 -translate-y-1/2 bg-red-600 rounded-full"},"!",-1)]))):Z("",!0)])])])}const jYn=Ye(xYn,[["render",GYn],["__scopeId","data-v-ae134649"]]),zYn={components:{AppCard:jYn},data(){return{apps:[],githubApps:[],favorites:[],selectedCategory:"all",selectedApp:null,appCode:"",loading:!1,message:"",successMessage:!0,searchQuery:"",selectedFile:null,isUploading:!1,error:"",sortBy:"update",sortOrder:"desc",showOnlyInstalled:!1,showOnlyUnInstalled:!1}},computed:{currentCategoryName(){return this.selectedCategory==="all"?"All Apps":this.selectedCategory},combinedApps(){this.apps.map(e=>e.name);const t=new Map(this.apps.map(e=>[e.name,{...e,installed:!0,existsInFolder:!0}]));return this.githubApps.forEach(e=>{t.has(e.name)||t.set(e.name,{...e,installed:!1,existsInFolder:!1})}),Array.from(t.values())},categories(){return[...new Set(this.combinedApps.map(t=>t.category))]},filteredApps(){return this.combinedApps.filter(t=>{const e=t.name.toLowerCase().includes(this.searchQuery.toLowerCase())||t.description.toLowerCase().includes(this.searchQuery.toLowerCase())||t.author.toLowerCase().includes(this.searchQuery.toLowerCase()),n=this.selectedCategory==="all"||t.category===this.selectedCategory,o=this.showOnlyInstalled&&t.installed||this.showOnlyUnInstalled&&!t.installed||!this.showOnlyInstalled&&!this.showOnlyUnInstalled;return e&&n&&o})},sortedAndFilteredApps(){return[...this.filteredApps].sort((t,e)=>{let n=0;switch(this.sortBy){case"name":n=t.name.localeCompare(e.name);break;case"author":n=t.author.localeCompare(e.author);break;case"date":n=this.getDateValue(t.creation_date)-this.getDateValue(e.creation_date);break;case"update":n=this.getDateValue(t.last_update_date)-this.getDateValue(e.last_update_date);break}return this.sortOrder==="asc"?n:-n})},favoriteApps(){return this.combinedApps.filter(t=>this.favorites.includes(t.appName))}},methods:{getDateValue(t){if(!t)return 0;const e=new Date(t);return isNaN(e.getTime())?0:e.getTime()},toggleSortOrder(){this.sortOrder=this.sortOrder==="asc"?"desc":"asc"},toggleFavorite(t){console.log("Toggling favorite"),console.log(t);const e=this.favorites.indexOf(t);e===-1?this.favorites.push(t):this.favorites.splice(e,1),this.saveFavoritesToLocalStorage()},saveFavoritesToLocalStorage(){localStorage.setItem("appZooFavorites",JSON.stringify(this.favorites))},loadFavoritesFromLocalStorage(){const t=localStorage.getItem("appZooFavorites");console.log("savedFavorites",t),t&&(this.favorites=JSON.parse(t))},startServer(t){const e={client_id:this.$store.state.client_id,app_name:t};this.$store.state.messageBox.showBlockingMessage(`Loading server. -This may take some time the first time as some libraries need to be installed.`),ce.post("/apps/start_server",e).then(n=>{this.$store.state.messageBox.hideMessage(),console.log("Server start initiated:",n.data.message),this.$notify({type:"success",title:"Server Starting",text:n.data.message})}).catch(n=>{var o,r;this.$store.state.messageBox.hideMessage(),console.error("Error starting server:",n),this.$notify({type:"error",title:"Server Start Failed",text:((r=(o=n.response)==null?void 0:o.data)==null?void 0:r.detail)||"An error occurred while starting the server"})})},triggerFileInput(){this.$refs.fileInput.click()},onFileSelected(t){this.selectedFile=t.target.files[0],this.message="",this.error="",this.uploadApp()},async uploadApp(){var e,n;if(!this.selectedFile){this.error="Please select a file to upload.";return}this.isUploading=!0,this.message="",this.error="";const t=new FormData;t.append("file",this.selectedFile),t.append("client_id",this.$store.state.client_id);try{const o=await ce.post("/upload_app",t,{headers:{"Content-Type":"multipart/form-data"}});this.message=o.data.message,this.$refs.fileInput.value="",this.selectedFile=null}catch(o){console.error("Error uploading app:",o),this.error=((n=(e=o.response)==null?void 0:e.data)==null?void 0:n.detail)||"Failed to upload the app. Please try again."}finally{this.isUploading=!1}},async fetchApps(){this.loading=!0;try{const t=await ce.get("/apps");this.apps=t.data,this.showMessage("Refresh successful!",!0)}catch{this.showMessage("Failed to refresh apps.",!1)}finally{this.loading=!1}},async openAppsFolder(){this.loading=!0;try{console.log("opening apps folder");const t=await ce.post("/show_apps_folder",{client_id:this.$store.state.client_id})}catch{this.showMessage("Failed to open apps folder.",!1)}finally{this.loading=!1}},async fetchGithubApps(){this.loading=!0;try{const t=await ce.get("/github/apps");this.githubApps=t.data.apps,await this.fetchApps()}catch{this.showMessage("Failed to refresh GitHub apps.",!1)}finally{this.loading=!1}},async handleAppClick(t){if(t.installed){this.selectedApp=t;const e=await ce.get(`/apps/${t.folder_name}/README.md`);this.appCode=Et(e.data)}else this.showMessage(`Please install ${t.folder_name} to view its code.`,!1)},backToZoo(){this.selectedApp=null,this.appCode=""},async installApp(t){this.loading=!0,this.$store.state.messageBox.showBlockingMessage(`Installing app ${t}`);try{await ce.post(`/install/${t}`,{client_id:this.$store.state.client_id}),this.showMessage("Installation succeeded!",!0)}catch{this.showMessage("Installation failed.",!1)}finally{this.loading=!1,this.fetchApps(),this.fetchGithubApps(),this.$store.state.messageBox.hideMessage()}},async uninstallApp(t){this.loading=!0;try{await ce.post(`/uninstall/${t}`,{client_id:this.$store.state.client_id}),this.showMessage("Uninstallation succeeded!",!0)}catch{this.showMessage("Uninstallation failed.",!1)}finally{this.loading=!1,this.fetchApps()}},async deleteApp(t){this.loading=!0;try{await ce.post(`/delete/${t}`,{client_id:this.$store.state.client_id}),this.showMessage("Deletion succeeded!",!0)}catch{this.showMessage("Deletion failed.",!1)}finally{this.loading=!1,this.fetchApps()}},async editApp(t){this.loading=!0;try{const e=await ce.post("/open_app_in_vscode",{client_id:this.$store.state.client_id,app_name:t.folder_name});this.showMessage(e.data.message,!0)}catch{this.showMessage("Failed to open folder in VSCode.",!1)}finally{this.loading=!1}},async downloadApp(t){this.isLoading=!0,this.error=null;try{const e=await ce.post("/download_app",{client_id:this.$store.state.client_id,app_name:t},{responseType:"arraybuffer"}),n=e.headers["content-disposition"],o=n&&n.match(/filename="?(.+)"?/i),r=o?o[1]:"app.zip",i=new Blob([e.data],{type:"application/zip"}),s=window.URL.createObjectURL(i),a=document.createElement("a");a.style.display="none",a.href=s,a.download=r,document.body.appendChild(a),a.click(),window.URL.revokeObjectURL(s),document.body.removeChild(a)}catch(e){console.error("Error downloading app:",e),this.error="Failed to download the app. Please try again."}finally{this.isLoading=!1}},openApp(t){t.installed?window.open(`/apps/${t.folder_name}/index.html?client_id=${this.$store.state.client_id}`,"_blank"):this.showMessage(`Please install ${t.name} before opening.`,!1)},showMessage(t,e){this.message=t,this.successMessage=e,setTimeout(()=>{this.message=""},3e3)}},mounted(){this.fetchGithubApps(),this.loadFavoritesFromLocalStorage()}},YYn={class:"app-zoo background-color w-full p-6 pt-12 min-h-screen overflow-y-auto"},WYn={class:"panels-color shadow-lg rounded-lg p-4 max-w-4xl mx-auto mb-8"},KYn={class:"flex flex-wrap items-center justify-between gap-4"},ZYn={class:"flex items-center space-x-4"},XYn=["disabled"],JYn={key:0},eWn={key:1,class:"error"},tWn={class:"relative flex-grow max-w-md"},nWn={class:"flex items-center space-x-4"},rWn=["value"],iWn={class:"flex items-center space-x-4"},oWn={for:"installed-only",class:"font-semibold"},sWn={for:"installed-only",class:"font-semibold"},aWn={class:"flex items-center space-x-4"},lWn={key:0,class:"flex justify-center items-center space-x-2 my-8","aria-live":"polite"},cWn={key:1,class:"pb-20"},uWn={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8 mb-8"},dWn={class:"text-2xl font-bold mb-4"},TWn={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8"},fWn={key:2,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},pWn={class:"bg-white rounded-lg p-6 w-11/12 h-5/6 flex flex-col"},hWn={class:"flex justify-between items-center mb-4"},mWn={class:"text-2xl font-bold"},gWn=["srcdoc"],_Wn={key:1,class:"text-center text-red-500"};function QWn(t,e,n,o,r,i){const s=ze("app-card");return N(),H("div",YYn,[S("nav",WYn,[S("div",KYn,[S("div",ZYn,[S("button",{onClick:e[0]||(e[0]=(...a)=>i.fetchGithubApps&&i.fetchGithubApps(...a)),class:"btn btn-primary","aria-label":"Refresh apps from GitHub"},e[11]||(e[11]=[S("svg",{class:"w-5 h-5 mr-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1),Re(" Refresh ")])),S("button",{onClick:e[1]||(e[1]=(...a)=>i.openAppsFolder&&i.openAppsFolder(...a)),class:"btn btn-secondary","aria-label":"Open apps folder"},e[12]||(e[12]=[S("svg",{class:"w-5 h-5 mr-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 19a2 2 0 01-2-2V7a2 2 0 012-2h4l2 2h4a2 2 0 012 2v1M5 19h14a2 2 0 002-2v-5a2 2 0 00-2-2H9a2 2 0 00-2 2v5a2 2 0 01-2 2z"})],-1),Re(" Open Folder ")])),S("input",{type:"file",onChange:e[2]||(e[2]=(...a)=>i.onFileSelected&&i.onFileSelected(...a)),accept:".zip",ref:"fileInput",style:{display:"none"}},null,544),S("button",{onClick:e[3]||(e[3]=(...a)=>i.triggerFileInput&&i.triggerFileInput(...a)),disabled:r.isUploading,class:"btn-secondary text-green-500 hover:text-green-600 transition duration-300 ease-in-out",title:"Upload App"},J(r.isUploading?"Uploading...":"Upload App"),9,XYn)]),r.message?(N(),H("p",JYn,J(r.message),1)):Z("",!0),r.error?(N(),H("p",eWn,J(r.error),1)):Z("",!0),S("div",tWn,[Le(S("input",{"onUpdate:modelValue":e[4]||(e[4]=a=>r.searchQuery=a),placeholder:"Search apps...",class:"w-full border-b-2 border-gray-300 px-4 py-2 pl-10 focus:outline-none focus:border-blue-500 transition duration-300 ease-in-out","aria-label":"Search apps"},null,512),[[Je,r.searchQuery]]),e[13]||(e[13]=S("svg",{class:"w-5 h-5 text-gray-400 absolute left-3 top-1/2 transform -translate-y-1/2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})],-1))]),S("div",nWn,[e[15]||(e[15]=S("label",{for:"category-select",class:"font-semibold"},"Category:",-1)),Le(S("select",{id:"category-select","onUpdate:modelValue":e[5]||(e[5]=a=>r.selectedCategory=a),class:"border-2 border-gray-300 rounded-md px-2 py-1"},[e[14]||(e[14]=S("option",{value:"all"},"All Categories",-1)),(N(!0),H(xe,null,Pe(i.categories,a=>(N(),H("option",{key:a,value:a},J(a),9,rWn))),128))],512),[[Dr,r.selectedCategory]])]),S("div",iWn,[S("label",oWn,[Le(S("input",{id:"installed-only",type:"checkbox","onUpdate:modelValue":e[6]||(e[6]=a=>r.showOnlyInstalled=a),class:"mr-2"},null,512),[[vl,r.showOnlyInstalled]]),e[16]||(e[16]=Re(" Show only installed apps "))]),S("label",sWn,[Le(S("input",{id:"uninstalled-only",type:"checkbox","onUpdate:modelValue":e[7]||(e[7]=a=>r.showOnlyUnInstalled=a),class:"mr-2"},null,512),[[vl,r.showOnlyUnInstalled]]),e[17]||(e[17]=Re(" Show only non installed apps "))])]),S("div",aWn,[e[19]||(e[19]=S("label",{for:"sort-select",class:"font-semibold"},"Sort by:",-1)),Le(S("select",{id:"sort-select","onUpdate:modelValue":e[8]||(e[8]=a=>r.sortBy=a),class:"border-2 border-gray-300 rounded-md px-2 py-1"},e[18]||(e[18]=[S("option",{value:"name"},"Name",-1),S("option",{value:"author"},"Author",-1),S("option",{value:"date"},"Creation Date",-1),S("option",{value:"update"},"Last Update",-1)]),512),[[Dr,r.sortBy]]),S("button",{onClick:e[9]||(e[9]=(...a)=>i.toggleSortOrder&&i.toggleSortOrder(...a)),class:"btn btn-secondary"},J(r.sortOrder==="asc"?"↑":"↓"),1)])])]),r.loading?(N(),H("div",lWn,e[20]||(e[20]=[S("div",{class:"animate-spin rounded-full h-10 w-10 border-t-2 border-b-2 border-blue-500"},null,-1),S("span",{class:"text-xl text-gray-700 font-semibold"},"Loading...",-1)]))):(N(),H("div",cWn,[e[21]||(e[21]=S("h2",{class:"text-2xl font-bold mb-4"},"Favorite Apps",-1)),S("div",uWn,[(N(!0),H(xe,null,Pe(i.favoriteApps,a=>(N(),ot(s,{key:a.appName,app:a,onToggleFavorite:i.toggleFavorite,onInstall:i.installApp,onUninstall:i.uninstallApp,onDelete:i.deleteApp,onEdit:i.editApp,onDownload:i.downloadApp,onHelp:i.handleAppClick,onOpen:i.openApp,onStartServer:i.startServer},null,8,["app","onToggleFavorite","onInstall","onUninstall","onDelete","onEdit","onDownload","onHelp","onOpen","onStartServer"]))),128))]),S("h2",dWn,J(i.currentCategoryName)+" ("+J(i.sortedAndFilteredApps.length)+")",1),S("div",TWn,[(N(!0),H(xe,null,Pe(i.sortedAndFilteredApps,a=>(N(),ot(s,{key:a.name,app:a,onToggleFavorite:i.toggleFavorite,onInstall:i.installApp,onUninstall:i.uninstallApp,onDelete:i.deleteApp,onEdit:i.editApp,onDownload:i.downloadApp,onHelp:i.handleAppClick,onOpen:i.openApp,onStartServer:i.startServer},null,8,["app","onToggleFavorite","onInstall","onUninstall","onDelete","onEdit","onDownload","onHelp","onOpen","onStartServer"]))),128))])])),r.selectedApp?(N(),H("div",fWn,[S("div",pWn,[S("div",hWn,[S("h2",mWn,J(r.selectedApp.name),1),S("button",{onClick:e[10]||(e[10]=(...a)=>i.backToZoo&&i.backToZoo(...a)),class:"bg-gray-300 hover:bg-gray-400 px-4 py-2 rounded-lg transition duration-300 ease-in-out"},"Close")]),r.appCode?(N(),H("iframe",{key:0,srcdoc:r.appCode,class:"flex-grow border-none"},null,8,gWn)):(N(),H("p",_Wn,"Please install this app to view its code."))])])):Z("",!0),r.message?(N(),H("div",{key:3,class:Ee(["fixed bottom-4 right-4 px-6 py-3 rounded-lg shadow-md",{"bg-green-100 text-green-800":r.successMessage,"bg-red-100 text-red-800":!r.successMessage}])},J(r.message),3)):Z("",!0)])}const vWn=Ye(zYn,[["render",QWn]]),yWn={components:{PersonalityEntry:Nk},data(){return{personalities:[],githubApps:[],favorites:[],selectedCategory:"all",selectedApp:null,appCode:"",loading:!1,message:"",successMessage:!0,searchQuery:"",selectedFile:null,isUploading:!1,error:"",sortBy:"name",sortOrder:"asc"}},computed:{currentCategoryName(){return this.selectedCategory=="all"?"All Personalities":this.selectedCategory},configFile:{get(){return this.$store.state.config},set(t){this.$store.commit("setConfig",t)}},combinedApps(){this.personalities.map(e=>e.name);const t=new Map(this.personalities.map(e=>[e.name,{...e,installed:!0,existsInFolder:!0}]));return this.githubApps.forEach(e=>{t.has(e.name)||t.set(e.name,{...e,installed:!1,existsInFolder:!1})}),Array.from(t.values())},categories(){return[...new Set(this.combinedApps.map(t=>t.category))].sort((t,e)=>t.localeCompare(e))},filteredApps(){return this.combinedApps.filter(t=>{const e=t.name.toLowerCase().includes(this.searchQuery.toLowerCase())||t.author.toLowerCase().includes(this.searchQuery.toLowerCase())||t.description.toLowerCase().includes(this.searchQuery.toLowerCase()),n=this.selectedCategory==="all"||t.category===this.selectedCategory;return e&&n})},sortedAndFilteredPersonalities(){return[...this.filteredApps].sort((t,e)=>{let n=0;switch(this.sortBy){case"name":n=t.name.localeCompare(e.name);break;case"author":n=t.author.localeCompare(e.author);break;case"date":n=this.getDateValue(t.creation_date)-this.getDateValue(e.creation_date);break;case"update":n=this.getDateValue(t.last_update_date)-this.getDateValue(e.last_update_date);break}return this.sortOrder==="asc"?n:-n})},favoritePersonalities(){return this.combinedApps.filter(t=>this.favorites.includes(t.uid))}},methods:{getDateValue(t){if(!t)return 0;const e=new Date(t);return isNaN(e.getTime())?0:e.getTime()},async onPersonalitySelected(t){if(console.log("on pers",t),this.isLoading&&this.$store.state.toast.showToast("Loading... please wait",4,!1),this.isLoading=!0,console.log("selecting ",t),t){if(t.selected){this.$store.state.toast.showToast("Personality already selected",4,!0),this.isLoading=!1;return}let e=t.language==null?t.full_path:t.full_path+":"+t.language;if(console.log("pth",e),t.isMounted&&this.configFile.personalities.includes(e)){const n=await this.select_personality(t);console.log("pers is mounted",n),n&&n.status&&n.active_personality_id>-1?this.$store.state.toast.showToast(`Selected personality: +This is likely a Baklava internal issue. Please report it on GitHub.`);return e.get(n)}}const Hqn=["INPUT","TEXTAREA","SELECT"];function aH(t){return Hqn.includes(t.tagName)}let Uf=null;function Pqn(t){Uf=t}function Ai(){if(!Uf)throw new Error("providePlugin() must be called before usePlugin()");return{viewModel:Uf}}function Zi(){const{viewModel:t}=Ai();return{graph:a5(t.value,"displayedGraph"),switchGraph:t.value.switchGraph}}function lH(t){const{graph:e}=Zi(),n=Ve(null),o=Ve(null);return{dragging:je(()=>!!n.value),onPointerDown:l=>{n.value={x:l.pageX,y:l.pageY},o.value={x:t.value.x,y:t.value.y}},onPointerMove:l=>{if(n.value){const c=l.pageX-n.value.x,u=l.pageY-n.value.y;t.value.x=o.value.x+c/e.value.scaling,t.value.y=o.value.y+u/e.value.scaling}},onPointerUp:()=>{n.value=null,o.value=null}}}function cH(t,e,n){if(!e.template)return!1;if(Ml(e.template)===n)return!0;const o=t.graphTemplates.find(i=>Ml(i)===n);return o?o.nodes.filter(i=>i.type.startsWith(kc)).some(i=>cH(t,e,i.type)):!1}function uH(t){return je(()=>{const e=Array.from(t.value.editor.nodeTypes.entries()),n=new Set(e.map(([,r])=>r.category)),o=[];for(const r of n.values()){let i=e.filter(([,s])=>s.category===r);t.value.displayedGraph.template?i=i.filter(([s])=>!cH(t.value.editor,t.value.displayedGraph,s)):i=i.filter(([s])=>![wl,Ol].includes(s)),i.length>0&&o.push({name:r,nodeTypes:Object.fromEntries(i)})}return o.sort((r,i)=>r.name==="default"?-1:i.name==="default"||r.name>i.name?1:-1),o})}function dH(){const{graph:t}=Zi();return{transform:(n,o)=>{const r=n/t.value.scaling-t.value.panning.x,i=o/t.value.scaling-t.value.panning.y;return[r,i]}}}function $qn(){const{graph:t}=Zi();let e=[],n=-1,o={x:0,y:0};const r=je(()=>t.value.panning),i=lH(r),s=je(()=>({"transform-origin":"0 0",transform:`scale(${t.value.scaling}) translate(${t.value.panning.x}px, ${t.value.panning.y}px)`})),a=(T,h,g)=>{const Q=[T/t.value.scaling-t.value.panning.x,h/t.value.scaling-t.value.panning.y],m=[T/g-t.value.panning.x,h/g-t.value.panning.y],_=[m[0]-Q[0],m[1]-Q[1]];t.value.panning.x+=_[0],t.value.panning.y+=_[1],t.value.scaling=g},l=T=>{T.preventDefault();let h=T.deltaY;T.deltaMode===1&&(h*=32);const g=t.value.scaling*(1-h/3e3);a(T.offsetX,T.offsetY,g)},c=()=>({ax:e[0].clientX,ay:e[0].clientY,bx:e[1].clientX,by:e[1].clientY});return{styles:s,...i,onPointerDown:T=>{if(e.push(T),i.onPointerDown(T),e.length===2){const{ax:h,ay:g,bx:Q,by:m}=c();o={x:h+(Q-h)/2,y:g+(m-g)/2}}},onPointerMove:T=>{for(let h=0;h0){const y=t.value.scaling*(1+(b-n)/500);a(o.x,o.y,y)}n=b}else i.onPointerMove(T)},onPointerUp:T=>{e=e.filter(h=>h.pointerId!==T.pointerId),n=-1,i.onPointerUp()},onMouseWheel:l}}var $i=(t=>(t[t.NONE=0]="NONE",t[t.ALLOWED=1]="ALLOWED",t[t.FORBIDDEN=2]="FORBIDDEN",t))($i||{});const TH=Symbol();function Vqn(){const{graph:t}=Zi(),e=Ve(null),n=Ve(null),o=a=>{e.value&&(e.value.mx=a.offsetX/t.value.scaling-t.value.panning.x,e.value.my=a.offsetY/t.value.scaling-t.value.panning.y)},r=()=>{if(n.value){if(e.value)return;const a=t.value.connections.find(l=>l.to===n.value);n.value.isInput&&a?(e.value={status:$i.NONE,from:a.from},t.value.removeConnection(a)):e.value={status:$i.NONE,from:n.value},e.value.mx=void 0,e.value.my=void 0}},i=()=>{if(e.value&&n.value){if(e.value.from===n.value)return;t.value.addConnection(e.value.from,e.value.to)}e.value=null},s=a=>{if(n.value=a??null,a&&e.value){e.value.to=a;const l=t.value.checkConnection(e.value.from,e.value.to);if(e.value.status=l.connectionAllowed?$i.ALLOWED:$i.FORBIDDEN,l.connectionAllowed){const c=l.connectionsInDanger.map(u=>u.id);t.value.connections.forEach(u=>{c.includes(u.id)&&(u.isInDanger=!0)})}}else!a&&e.value&&(e.value.to=void 0,e.value.status=$i.NONE,t.value.connections.forEach(l=>{l.isInDanger=!1}))};return fl(TH,{temporaryConnection:e,hoveredOver:s}),{temporaryConnection:e,onMouseMove:o,onMouseDown:r,onMouseUp:i,hoveredOver:s}}function Bqn(t){const e=Ve(!1),n=Ve(0),o=Ve(0),r=uH(t),{transform:i}=dH(),s=je(()=>{let u=[];const d={};for(const T of r.value){const h=Object.entries(T.nodeTypes).map(([g,Q])=>({label:Q.title,value:"addNode:"+g}));T.name==="default"?u=h:d[T.name]=h}const f=[...Object.entries(d).map(([T,h])=>({label:T,submenu:h}))];return f.length>0&&u.length>0&&f.push({isDivider:!0}),f.push(...u),f}),a=je(()=>t.value.settings.contextMenu.additionalItems.length===0?s.value:[{label:"Add node",submenu:s.value},...t.value.settings.contextMenu.additionalItems.map(u=>"isDivider"in u||"submenu"in u?u:{label:u.label,value:"command:"+u.command,disabled:!t.value.commandHandler.canExecuteCommand(u.command)})]);function l(u){const d=u.target;if(!(d instanceof Element)||aH(d))return;u.preventDefault(),e.value=!0;const f=d.getBoundingClientRect(),h=d.closest(".baklava-editor").getBoundingClientRect();n.value=f.x+u.offsetX-h.x,o.value=f.y+u.offsetY-h.y}function c(u){if(u.startsWith("addNode:")){const d=u.substring(8),f=t.value.editor.nodeTypes.get(d);if(!f)return;const T=fr(new f.type);t.value.displayedGraph.addNode(T);const[h,g]=i(n.value,o.value);T.position.x=h,T.position.y=g}else if(u.startsWith("command:")){const d=u.substring(8);t.value.commandHandler.canExecuteCommand(d)&&t.value.commandHandler.executeCommand(d)}}return{show:e,x:n,y:o,items:a,open:l,onClick:c}}const r5="START_SELECTION_BOX";function Fqn(t){const{viewModel:e}=Ai(),{graph:n}=Zi(),o=je(()=>n.value.nodes),r=Ve(!1),i=Ve(!1),s=Ve([0,0]),a=Ve([0,0]);$n(e,()=>{e.value.commandHandler.hasCommand(r5)||(e.value.commandHandler.registerCommand(r5,{canExecute:()=>!0,execute(){r.value=!0}}),e.value.commandHandler.registerHotkey(["b"],r5))},{immediate:!0});function l(m){return[m.clientX-t.value.getBoundingClientRect().left,m.clientY-t.value.getBoundingClientRect().top]}function c(m){return r.value?(i.value=!0,r.value=!1,s.value=l(m),a.value=l(m),document.addEventListener("pointermove",u),document.addEventListener("pointerup",d),!0):!1}function u(m){s.value=l(m)}function d(m){document.removeEventListener("pointermove",u),document.removeEventListener("pointerup",d),s.value=l(m),i.value=!1;const _=f();for(const v of _)e.value.displayedGraph.selectedNodes.push(v)}function f(){const m=T(),v=document.querySelector(".baklava-editor").getBoundingClientRect();return o.value.filter(b=>{const y=h(b,v);return g(m,y)})}function T(){return{left:Math.min(s.value[0],a.value[0]),top:Math.min(s.value[1],a.value[1]),right:Math.max(s.value[0],a.value[0]),bottom:Math.max(s.value[1],a.value[1])}}function h(m,_){const v=document.getElementById(m.id),b=v?v.getBoundingClientRect():{x:0,y:0,width:0,height:0},y=b.x-_.left,E=b.y-_.top;return{left:y,top:E,right:y+b.width,bottom:E+b.height}}function g(m,_){return m.left<_.right&&m.right>_.left&&m.top<_.bottom&&m.bottom>_.top}function Q(){return{width:Math.abs(a.value[0]-s.value[0])+"px",height:Math.abs(a.value[1]-s.value[1])+"px",left:(a.value[0]>s.value[0]?s.value[0]:a.value[0])+"px",top:(a.value[1]>s.value[1]?s.value[1]:a.value[1])+"px"}}return fr({startSelection:r,isSelecting:i,start:s,end:a,onPointerDown:c,getStyles:Q})}const Uqn=On({setup(){const{viewModel:t}=Ai(),{graph:e}=Zi();return{styles:je(()=>{const o=t.value.settings.background,r=e.value.panning.x*e.value.scaling,i=e.value.panning.y*e.value.scaling,s=e.value.scaling*o.gridSize,a=s/o.gridDivision,l=`${s}px ${s}px, ${s}px ${s}px`,c=e.value.scaling>o.subGridVisibleThreshold?`, ${a}px ${a}px, ${a}px ${a}px`:"";return{backgroundPosition:`left ${r}px top ${i}px`,backgroundSize:`${l} ${c}`}})}}}),yn=(t,e)=>{const n=t.__vccOpts||t;for(const[o,r]of e)n[o]=r;return n};function qqn(t,e,n,o,r,i){return N(),H("div",{class:"background",style:an(t.styles)},null,4)}const Gqn=yn(Uqn,[["render",qqn]]);function jqn(t){return fM()?(aP(t),!0):!1}function Bh(t){return typeof t=="function"?t():gt(t)}const fH=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const zqn=Object.prototype.toString,Yqn=t=>zqn.call(t)==="[object Object]",i5=()=>{},Wqn=Kqn();function Kqn(){var t,e;return fH&&((t=window==null?void 0:window.navigator)==null?void 0:t.userAgent)&&(/iP(ad|hone|od)/.test(window.navigator.userAgent)||((e=window==null?void 0:window.navigator)==null?void 0:e.maxTouchPoints)>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function Zqn(t,e,n=!1){return e.reduce((o,r)=>(r in t&&(!n||t[r]!==void 0)&&(o[r]=t[r]),o),{})}function Xqn(t,e={}){if(!Pn(t))return kP(t);const n=Array.isArray(t.value)?Array.from({length:t.value.length}):{};for(const o in t.value)n[o]=IP(()=>({get(){return t.value[o]},set(r){var i;if((i=Bh(e.replaceRef))!=null?i:!0)if(Array.isArray(t.value)){const a=[...t.value];a[o]=r,t.value=a}else{const a={...t.value,[o]:r};Object.setPrototypeOf(a,Object.getPrototypeOf(t.value)),t.value=a}else t.value[o]=r}}));return n}function cc(t){var e;const n=Bh(t);return(e=n==null?void 0:n.$el)!=null?e:n}const Fh=fH?window:void 0;function yc(...t){let e,n,o,r;if(typeof t[0]=="string"||Array.isArray(t[0])?([n,o,r]=t,e=Fh):[e,n,o,r]=t,!e)return i5;Array.isArray(n)||(n=[n]),Array.isArray(o)||(o=[o]);const i=[],s=()=>{i.forEach(u=>u()),i.length=0},a=(u,d,f,T)=>(u.addEventListener(d,f,T),()=>u.removeEventListener(d,f,T)),l=$n(()=>[cc(e),Bh(r)],([u,d])=>{if(s(),!u)return;const f=Yqn(d)?{...d}:d;i.push(...n.flatMap(T=>o.map(h=>a(u,T,h,f))))},{immediate:!0,flush:"post"}),c=()=>{l(),s()};return jqn(c),c}let YO=!1;function pH(t,e,n={}){const{window:o=Fh,ignore:r=[],capture:i=!0,detectIframe:s=!1}=n;if(!o)return i5;Wqn&&!YO&&(YO=!0,Array.from(o.document.body.children).forEach(f=>f.addEventListener("click",i5)),o.document.documentElement.addEventListener("click",i5));let a=!0;const l=f=>r.some(T=>{if(typeof T=="string")return Array.from(o.document.querySelectorAll(T)).some(h=>h===f.target||f.composedPath().includes(h));{const h=cc(T);return h&&(f.target===h||f.composedPath().includes(h))}}),u=[yc(o,"click",f=>{const T=cc(t);if(!(!T||T===f.target||f.composedPath().includes(T))){if(f.detail===0&&(a=!l(f)),!a){a=!0;return}e(f)}},{passive:!0,capture:i}),yc(o,"pointerdown",f=>{const T=cc(t);a=!l(f)&&!!(T&&!f.composedPath().includes(T))},{passive:!0}),s&&yc(o,"blur",f=>{setTimeout(()=>{var T;const h=cc(t);((T=o.document.activeElement)==null?void 0:T.tagName)==="IFRAME"&&!(h!=null&&h.contains(o.document.activeElement))&&e(f)},0)})].filter(Boolean);return()=>u.forEach(f=>f())}const hH={x:0,y:0,pointerId:0,pressure:0,tiltX:0,tiltY:0,width:0,height:0,twist:0,pointerType:null},Jqn=Object.keys(hH);function eGn(t={}){const{target:e=Fh}=t,n=Ve(!1),o=Ve(t.initialValue||{});Object.assign(o.value,hH,o.value);const r=i=>{n.value=!0,!(t.pointerTypes&&!t.pointerTypes.includes(i.pointerType))&&(o.value=Zqn(i,Jqn,!1))};if(e){const i={passive:!0};yc(e,["pointerdown","pointermove","pointerup"],r,i),yc(e,"pointerleave",()=>n.value=!1,i)}return{...Xqn(o),isInside:n}}const tGn=["onMouseenter","onMouseleave","onClick"],nGn={class:"flex-fill"},rGn={key:0,class:"__submenu-icon",style:{"line-height":"1em"}},iGn=S("svg",{width:"13",height:"13",viewBox:"-60 120 250 250"},[S("path",{d:"M160.875 279.5625 L70.875 369.5625 L70.875 189.5625 L160.875 279.5625 Z",stroke:"none",fill:"white"})],-1),oGn=[iGn],Uh=On({__name:"ContextMenu",props:{modelValue:{type:Boolean},items:{},x:{default:0},y:{default:0},isNested:{type:Boolean,default:!1},isFlipped:{default:()=>({x:!1,y:!1})},flippable:{type:Boolean,default:!1}},emits:["update:modelValue","click"],setup(t,{emit:e}){const n=t,o=e;let r=null;const i=Ve(null),s=Ve(-1),a=Ve(0),l=Ve({x:!1,y:!1}),c=je(()=>n.flippable&&(l.value.x||n.isFlipped.x)),u=je(()=>n.flippable&&(l.value.y||n.isFlipped.y)),d=je(()=>{const _={};return n.isNested||(_.top=(u.value?n.y-a.value:n.y)+"px",_.left=n.x+"px"),_}),f=je(()=>({"--flipped-x":c.value,"--flipped-y":u.value,"--nested":n.isNested})),T=je(()=>n.items.map(_=>({..._,hover:!1})));$n([()=>n.y,()=>n.items],()=>{var _,v,b,y;a.value=n.items.length*30;const E=((v=(_=i.value)==null?void 0:_.parentElement)==null?void 0:v.offsetWidth)??0,x=((y=(b=i.value)==null?void 0:b.parentElement)==null?void 0:y.offsetHeight)??0;l.value.x=!n.isNested&&n.x>E*.75,l.value.y=!n.isNested&&n.y+a.value>x-20}),pH(i,()=>{n.modelValue&&o("update:modelValue",!1)});const h=_=>{!_.submenu&&_.value&&(o("click",_.value),o("update:modelValue",!1))},g=_=>{o("click",_),s.value=-1,n.isNested||o("update:modelValue",!1)},Q=(_,v)=>{n.items[v].submenu&&(s.value=v,r!==null&&(clearTimeout(r),r=null))},m=(_,v)=>{n.items[v].submenu&&(r=window.setTimeout(()=>{s.value=-1,r=null},200))};return(_,v)=>{const b=ze("ContextMenu",!0);return N(),ot(Nr,{name:"slide-fade"},{default:Ge(()=>[Le(S("div",{ref_key:"el",ref:i,class:Ee(["baklava-context-menu",f.value]),style:an(d.value)},[(N(!0),H(xe,null,Pe(T.value,(y,E)=>(N(),H(xe,null,[y.isDivider?(N(),H("div",{key:`d-${E}`,class:"divider"})):(N(),H("div",{key:`i-${E}`,class:Ee(["item",{submenu:!!y.submenu,"--disabled":!!y.disabled}]),onMouseenter:x=>Q(x,E),onMouseleave:x=>m(x,E),onClick:oe(x=>h(y),["stop","prevent"])},[S("div",nGn,J(y.label),1),y.submenu?(N(),H("div",rGn,oGn)):Z("",!0),y.submenu?(N(),ot(b,{key:1,"model-value":s.value===E,items:y.submenu,"is-nested":!0,"is-flipped":{x:c.value,y:u.value},flippable:_.flippable,onClick:g},null,8,["model-value","items","is-flipped","flippable"])):Z("",!0)],42,tGn))],64))),256))],6),[[An,_.modelValue]])]),_:1})}}}),sGn={},aGn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"16",height:"16",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},lGn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),cGn=S("circle",{cx:"12",cy:"12",r:"1"},null,-1),uGn=S("circle",{cx:"12",cy:"19",r:"1"},null,-1),dGn=S("circle",{cx:"12",cy:"5",r:"1"},null,-1),TGn=[lGn,cGn,uGn,dGn];function fGn(t,e){return N(),H("svg",aGn,TGn)}const mH=yn(sGn,[["render",fGn]]),pGn=["id"],hGn={key:0,class:"__tooltip"},mGn={key:2,class:"align-middle"},WO=On({__name:"NodeInterface",props:{node:{},intf:{}},setup(t){const e=(Q,m=100)=>{const _=typeof(Q==null?void 0:Q.toString)=="function"?String(Q):"";return _.length>m?_.slice(0,m)+"...":_},n=t,{viewModel:o}=Ai(),{hoveredOver:r,temporaryConnection:i}=Ui(TH),s=Ve(null),a=je(()=>n.intf.connectionCount>0),l=Ve(!1),c=je(()=>o.value.settings.displayValueOnHover&&l.value),u=je(()=>({"--input":n.intf.isInput,"--output":!n.intf.isInput,"--connected":a.value})),d=je(()=>n.intf.component&&(!n.intf.isInput||!n.intf.port||n.intf.connectionCount===0)),f=()=>{l.value=!0,r(n.intf)},T=()=>{l.value=!1,r(void 0)},h=()=>{s.value&&o.value.hooks.renderInterface.execute({intf:n.intf,el:s.value})},g=()=>{const Q=o.value.displayedGraph.sidebar;Q.nodeId=n.node.id,Q.optionName=n.intf.name,Q.visible=!0};return Hr(h),N2(h),(Q,m)=>{var _;return N(),H("div",{id:Q.intf.id,ref_key:"el",ref:s,class:Ee(["baklava-node-interface",u.value])},[Q.intf.port?(N(),H("div",{key:0,class:Ee(["__port",{"--selected":((_=gt(i))==null?void 0:_.from)===Q.intf}]),onPointerover:f,onPointerout:T},[_n(Q.$slots,"portTooltip",{showTooltip:c.value},()=>[c.value===!0?(N(),H("span",hGn,J(e(Q.intf.value)),1)):Z("",!0)])],34)):Z("",!0),d.value?(N(),ot(Vc(Q.intf.component),{key:1,modelValue:Q.intf.value,"onUpdate:modelValue":m[0]||(m[0]=v=>Q.intf.value=v),node:Q.node,intf:Q.intf,onOpenSidebar:g},null,40,["modelValue","node","intf"])):(N(),H("span",mGn,J(Q.intf.name),1))],10,pGn)}}}),gGn=["id","data-node-type"],_Gn={class:"__title-label"},QGn={class:"__menu"},vGn={class:"__outputs"},yGn={class:"__inputs"},bGn=On({__name:"Node",props:{node:{},selected:{type:Boolean,default:!1},dragging:{type:Boolean}},emits:["select","start-drag"],setup(t,{emit:e}){const n=t,o=e,{viewModel:r}=Ai(),{graph:i,switchGraph:s}=Zi(),a=Ve(null),l=Ve(!1),c=Ve(""),u=Ve(null),d=Ve(!1),f=Ve(!1),T=je(()=>{const R=[{value:"rename",label:"Rename"},{value:"delete",label:"Delete"}];return n.node.type.startsWith(kc)&&R.push({value:"editSubgraph",label:"Edit Subgraph"}),R}),h=je(()=>({"--selected":n.selected,"--dragging":n.dragging,"--two-column":!!n.node.twoColumn})),g=je(()=>({"--reverse-y":n.node.reverseY??r.value.settings.nodes.reverseY})),Q=je(()=>{var R,I;return{top:`${((R=n.node.position)==null?void 0:R.y)??0}px`,left:`${((I=n.node.position)==null?void 0:I.x)??0}px`,"--width":`${n.node.width??r.value.settings.nodes.defaultWidth}px`}}),m=je(()=>Object.values(n.node.inputs).filter(R=>!R.hidden)),_=je(()=>Object.values(n.node.outputs).filter(R=>!R.hidden)),v=()=>{o("select")},b=R=>{n.selected||v(),o("start-drag",R)},y=()=>{f.value=!0},E=async R=>{var I;switch(R){case"delete":i.value.removeNode(n.node);break;case"rename":c.value=n.node.title,l.value=!0,await Se(),(I=u.value)==null||I.focus();break;case"editSubgraph":s(n.node.template);break}},x=()=>{n.node.title=c.value,l.value=!1},L=()=>{a.value&&r.value.hooks.renderNode.execute({node:n.node,el:a.value})},C=R=>{d.value=!0,R.preventDefault()},A=R=>{if(!d.value)return;const I=n.node.width+R.movementX/i.value.scaling,M=r.value.settings.nodes.minWidth,$=r.value.settings.nodes.maxWidth;n.node.width=Math.max(M,Math.min($,I))},O=()=>{d.value=!1};return Hr(()=>{L(),window.addEventListener("mousemove",A),window.addEventListener("mouseup",O)}),N2(L),D2(()=>{window.removeEventListener("mousemove",A),window.removeEventListener("mouseup",O)}),(R,I)=>(N(),H("div",{id:R.node.id,ref_key:"el",ref:a,class:Ee(["baklava-node",h.value]),style:an(Q.value),"data-node-type":R.node.type,onPointerdown:v},[gt(r).settings.nodes.resizable?(N(),H("div",{key:0,class:"__resize-handle",onMousedown:C},null,32)):Z("",!0),_n(R.$slots,"title",{},()=>[S("div",{class:"__title",onPointerdown:oe(b,["self","stop"])},[l.value?Le((N(),H("input",{key:1,ref_key:"renameInputEl",ref:u,"onUpdate:modelValue":I[1]||(I[1]=M=>c.value=M),type:"text",class:"baklava-input",placeholder:"Node Name",onBlur:x,onKeydown:Qn(x,["enter"])},null,544)),[[Je,c.value]]):(N(),H(xe,{key:0},[S("div",_Gn,J(R.node.title),1),S("div",QGn,[ne(mH,{class:"--clickable",onClick:y}),ne(gt(Uh),{modelValue:f.value,"onUpdate:modelValue":I[0]||(I[0]=M=>f.value=M),x:0,y:0,items:T.value,onClick:E},null,8,["modelValue","items"])])],64))],32)]),_n(R.$slots,"content",{},()=>[S("div",{class:Ee(["__content",g.value]),onKeydown:I[2]||(I[2]=Qn(oe(()=>{},["stop"]),["delete"]))},[S("div",vGn,[(N(!0),H(xe,null,Pe(_.value,M=>_n(R.$slots,"nodeInterface",{key:M.id,type:"output",node:R.node,intf:M},()=>[ne(WO,{node:R.node,intf:M},null,8,["node","intf"])])),128))]),S("div",yGn,[(N(!0),H(xe,null,Pe(m.value,M=>_n(R.$slots,"nodeInterface",{key:M.id,type:"input",node:R.node,intf:M},()=>[ne(WO,{node:R.node,intf:M},null,8,["node","intf"])])),128))])],34)])],46,gGn))}}),EGn=On({props:{x1:{type:Number,required:!0},y1:{type:Number,required:!0},x2:{type:Number,required:!0},y2:{type:Number,required:!0},state:{type:Number,default:$i.NONE},isTemporary:{type:Boolean,default:!1}},setup(t){const{viewModel:e}=Ai(),{graph:n}=Zi(),o=(s,a)=>{const l=(s+n.value.panning.x)*n.value.scaling,c=(a+n.value.panning.y)*n.value.scaling;return[l,c]},r=je(()=>{const[s,a]=o(t.x1,t.y1),[l,c]=o(t.x2,t.y2);if(e.value.settings.useStraightConnections)return`M ${s} ${a} L ${l} ${c}`;{const u=.3*Math.abs(s-l);return`M ${s} ${a} C ${s+u} ${a}, ${l-u} ${c}, ${l} ${c}`}}),i=je(()=>({"--temporary":t.isTemporary,"--allowed":t.state===$i.ALLOWED,"--forbidden":t.state===$i.FORBIDDEN}));return{d:r,classes:i}}}),SGn=["d"];function xGn(t,e,n,o,r,i){return N(),H("path",{class:Ee(["baklava-connection",t.classes]),d:t.d},null,10,SGn)}const gH=yn(EGn,[["render",xGn]]);function LGn(t){return document.getElementById(t.id)}function Rl(t){const e=document.getElementById(t.id),n=e==null?void 0:e.getElementsByClassName("__port");return{node:(e==null?void 0:e.closest(".baklava-node"))??null,interface:e,port:n&&n.length>0?n[0]:null}}const CGn=On({components:{"connection-view":gH},props:{connection:{type:Object,required:!0}},setup(t){const{graph:e}=Zi();let n;const o=Ve({x1:0,y1:0,x2:0,y2:0}),r=je(()=>t.connection.isInDanger?$i.FORBIDDEN:$i.NONE),i=je(()=>{var c;return(c=e.value.findNodeById(t.connection.from.nodeId))==null?void 0:c.position}),s=je(()=>{var c;return(c=e.value.findNodeById(t.connection.to.nodeId))==null?void 0:c.position}),a=c=>c.node&&c.interface&&c.port?[c.node.offsetLeft+c.interface.offsetLeft+c.port.offsetLeft+c.port.clientWidth/2,c.node.offsetTop+c.interface.offsetTop+c.port.offsetTop+c.port.clientHeight/2]:[0,0],l=()=>{const c=Rl(t.connection.from),u=Rl(t.connection.to);c.node&&u.node&&(n||(n=new ResizeObserver(()=>{l()}),n.observe(c.node),n.observe(u.node)));const[d,f]=a(c),[T,h]=a(u);o.value={x1:d,y1:f,x2:T,y2:h}};return Hr(async()=>{await Se(),l()}),D2(()=>{n&&n.disconnect()}),$n([i,s],()=>l(),{deep:!0}),{d:o,state:r}}});function AGn(t,e,n,o,r,i){const s=ze("connection-view");return N(),ot(s,{x1:t.d.x1,y1:t.d.y1,x2:t.d.x2,y2:t.d.y2,state:t.state},null,8,["x1","y1","x2","y2","state"])}const wGn=yn(CGn,[["render",AGn]]);function H5(t){return t.node&&t.interface&&t.port?[t.node.offsetLeft+t.interface.offsetLeft+t.port.offsetLeft+t.port.clientWidth/2,t.node.offsetTop+t.interface.offsetTop+t.port.offsetTop+t.port.clientHeight/2]:[0,0]}const OGn=On({components:{"connection-view":gH},props:{connection:{type:Object,required:!0}},setup(t){const e=je(()=>t.connection?t.connection.status:$i.NONE);return{d:je(()=>{if(!t.connection)return{input:[0,0],output:[0,0]};const o=H5(Rl(t.connection.from)),r=t.connection.to?H5(Rl(t.connection.to)):[t.connection.mx||o[0],t.connection.my||o[1]];return t.connection.from.isInput?{input:r,output:o}:{input:o,output:r}}),status:e}}});function MGn(t,e,n,o,r,i){const s=ze("connection-view");return N(),ot(s,{x1:t.d.input[0],y1:t.d.input[1],x2:t.d.output[0],y2:t.d.output[1],state:t.status,"is-temporary":""},null,8,["x1","y1","x2","y2","state"])}const RGn=yn(OGn,[["render",MGn]]),NGn=On({setup(){const{viewModel:t}=Ai(),{graph:e}=Zi(),n=Ve(null),o=a5(t.value.settings.sidebar,"width"),r=je(()=>t.value.settings.sidebar.resizable),i=je(()=>{const d=e.value.sidebar.nodeId;return e.value.nodes.find(f=>f.id===d)}),s=je(()=>({width:`${o.value}px`})),a=je(()=>i.value?[...Object.values(i.value.inputs),...Object.values(i.value.outputs)].filter(f=>f.displayInSidebar&&f.component):[]),l=()=>{e.value.sidebar.visible=!1},c=()=>{window.addEventListener("mousemove",u),window.addEventListener("mouseup",()=>{window.removeEventListener("mousemove",u)},{once:!0})},u=d=>{var f,T;const h=((T=(f=n.value)==null?void 0:f.parentElement)==null?void 0:T.getBoundingClientRect().width)??500;let g=o.value-d.movementX;g<300?g=300:g>.9*h&&(g=.9*h),o.value=g};return{el:n,graph:e,resizable:r,node:i,styles:s,displayedInterfaces:a,startResize:c,close:l}}}),DGn={class:"__header"},IGn={class:"__node-name"};function kGn(t,e,n,o,r,i){return N(),H("div",{ref:"el",class:Ee(["baklava-sidebar",{"--open":t.graph.sidebar.visible}]),style:an(t.styles)},[t.resizable?(N(),H("div",{key:0,class:"__resizer",onMousedown:e[0]||(e[0]=(...s)=>t.startResize&&t.startResize(...s))},null,32)):Z("",!0),S("div",DGn,[S("button",{tabindex:"-1",class:"__close",onClick:e[1]||(e[1]=(...s)=>t.close&&t.close(...s))},"×"),S("div",IGn,[S("b",null,J(t.node?t.node.title:""),1)])]),(N(!0),H(xe,null,Pe(t.displayedInterfaces,s=>(N(),H("div",{key:s.id,class:"__interface"},[(N(),ot(Vc(s.component),{modelValue:s.value,"onUpdate:modelValue":a=>s.value=a,node:t.node,intf:s},null,8,["modelValue","onUpdate:modelValue","node","intf"]))]))),128))],6)}const HGn=yn(NGn,[["render",kGn]]),PGn=On({__name:"Minimap",setup(t){const{viewModel:e}=Ai(),{graph:n}=Zi(),o=Ve(null),r=Ve(!1);let i,s=!1,a={x1:0,y1:0,x2:0,y2:0},l;const c=()=>{var E,x;if(!i)return;i.canvas.width=o.value.offsetWidth,i.canvas.height=o.value.offsetHeight;const L=new Map,C=new Map;for(const M of n.value.nodes){const $=LGn(M),U=($==null?void 0:$.offsetWidth)??0,G=($==null?void 0:$.offsetHeight)??0,P=((E=M.position)==null?void 0:E.x)??0,F=((x=M.position)==null?void 0:x.y)??0;L.set(M,{x1:P,y1:F,x2:P+U,y2:F+G}),C.set(M,$)}const A={x1:Number.MAX_SAFE_INTEGER,y1:Number.MAX_SAFE_INTEGER,x2:Number.MIN_SAFE_INTEGER,y2:Number.MIN_SAFE_INTEGER};for(const M of L.values())M.x1A.x2&&(A.x2=M.x2),M.y2>A.y2&&(A.y2=M.y2);const O=50;A.x1-=O,A.y1-=O,A.x2+=O,A.y2+=O,a=A;const R=i.canvas.width/i.canvas.height,I=(a.x2-a.x1)/(a.y2-a.y1);if(R>I){const M=(R-I)*(a.y2-a.y1)*.5;a.x1-=M,a.x2+=M}else{const M=a.x2-a.x1,$=a.y2-a.y1,U=(M-R*$)/R*.5;a.y1-=U,a.y2+=U}i.clearRect(0,0,i.canvas.width,i.canvas.height),i.strokeStyle="white";for(const M of n.value.connections){const[$,U]=H5(Rl(M.from)),[G,P]=H5(Rl(M.to)),[F,B]=u($,U),[q,ee]=u(G,P);if(i.beginPath(),i.moveTo(F,B),e.value.settings.useStraightConnections)i.lineTo(q,ee);else{const K=.3*Math.abs(F-q);i.bezierCurveTo(F+K,B,q-K,ee,q,ee)}i.stroke()}i.strokeStyle="lightgray";for(const[M,$]of L.entries()){const[U,G]=u($.x1,$.y1),[P,F]=u($.x2,$.y2);i.fillStyle=f(C.get(M)),i.beginPath(),i.rect(U,G,P-U,F-G),i.fill(),i.stroke()}if(r.value){const M=h(),[$,U]=u(M.x1,M.y1),[G,P]=u(M.x2,M.y2);i.fillStyle="rgba(255, 255, 255, 0.2)",i.fillRect($,U,G-$,P-U)}},u=(E,x)=>[(E-a.x1)/(a.x2-a.x1)*i.canvas.width,(x-a.y1)/(a.y2-a.y1)*i.canvas.height],d=(E,x)=>[E*(a.x2-a.x1)/i.canvas.width+a.x1,x*(a.y2-a.y1)/i.canvas.height+a.y1],f=E=>{if(E){const x=E.querySelector(".__content");if(x){const C=T(x);if(C)return C}const L=T(E);if(L)return L}return"gray"},T=E=>{const x=getComputedStyle(E).backgroundColor;if(x&&x!=="rgba(0, 0, 0, 0)")return x},h=()=>{const E=o.value.parentElement.offsetWidth,x=o.value.parentElement.offsetHeight,L=E/n.value.scaling-n.value.panning.x,C=x/n.value.scaling-n.value.panning.y;return{x1:-n.value.panning.x,y1:-n.value.panning.y,x2:L,y2:C}},g=E=>{E.button===0&&(s=!0,Q(E))},Q=E=>{if(s){const[x,L]=d(E.offsetX,E.offsetY),C=h(),A=(C.x2-C.x1)/2,O=(C.y2-C.y1)/2;n.value.panning.x=-(x-A),n.value.panning.y=-(L-O)}},m=()=>{s=!1},_=()=>{r.value=!0},v=()=>{r.value=!1,m()};$n([r,n.value.panning,()=>n.value.scaling,()=>n.value.connections.length],()=>{c()});const b=je(()=>n.value.nodes.map(E=>E.position)),y=je(()=>n.value.nodes.map(E=>E.width));return $n([b,y],()=>{c()},{deep:!0}),Hr(()=>{i=o.value.getContext("2d"),i.imageSmoothingQuality="high",c(),l=setInterval(c,500)}),D2(()=>{clearInterval(l)}),(E,x)=>(N(),H("canvas",{ref_key:"canvas",ref:o,class:"baklava-minimap",onMouseenter:_,onMouseleave:v,onMousedown:oe(g,["self"]),onMousemove:oe(Q,["self"]),onMouseup:m,onContextmenu:x[0]||(x[0]=oe(()=>{},["stop","prevent"]))},null,544))}}),$Gn=On({components:{ContextMenu:Uh,VerticalDots:mH},props:{type:{type:String,required:!0},title:{type:String,required:!0}},setup(t){const{viewModel:e}=Ai(),{switchGraph:n}=Zi(),o=Ve(!1),r=je(()=>t.type.startsWith(kc));return{showContextMenu:o,hasContextMenu:r,contextMenuItems:[{label:"Edit Subgraph",value:"editSubgraph"},{label:"Delete Subgraph",value:"deleteSubgraph"}],openContextMenu:()=>{o.value=!0},onContextMenuClick:l=>{const c=t.type.substring(kc.length),u=e.value.editor.graphTemplates.find(d=>d.id===c);if(u)switch(l){case"editSubgraph":n(u);break;case"deleteSubgraph":e.value.editor.removeGraphTemplate(u);break}}}}}),VGn=["data-node-type"],BGn={class:"__title"},FGn={class:"__title-label"},UGn={key:0,class:"__menu"};function qGn(t,e,n,o,r,i){const s=ze("vertical-dots"),a=ze("context-menu");return N(),H("div",{class:"baklava-node --palette","data-node-type":t.type},[S("div",BGn,[S("div",FGn,J(t.title),1),t.hasContextMenu?(N(),H("div",UGn,[ne(s,{class:"--clickable",onPointerdown:e[0]||(e[0]=oe(()=>{},["stop","prevent"])),onClick:oe(t.openContextMenu,["stop","prevent"])},null,8,["onClick"]),ne(a,{modelValue:t.showContextMenu,"onUpdate:modelValue":e[1]||(e[1]=l=>t.showContextMenu=l),x:-100,y:0,items:t.contextMenuItems,onClick:t.onContextMenuClick,onPointerdown:e[2]||(e[2]=oe(()=>{},["stop","prevent"]))},null,8,["modelValue","items","onClick"])])):Z("",!0)])],8,VGn)}const KO=yn($Gn,[["render",qGn]]),GGn={key:0},jGn=On({__name:"NodePalette",setup(t){const{viewModel:e}=Ai(),{x:n,y:o}=eGn(),{transform:r}=dH(),i=uH(e),s=Ui("editorEl"),a=Ve(null),l=je(()=>{if(!a.value||!(s!=null&&s.value))return{};const{left:u,top:d}=s.value.getBoundingClientRect();return{top:`${o.value-d}px`,left:`${n.value-u}px`}}),c=(u,d)=>{a.value={type:u,nodeInformation:d};const f=()=>{const T=fr(new d.type);e.value.displayedGraph.addNode(T);const h=s.value.getBoundingClientRect(),[g,Q]=r(n.value-h.left,o.value-h.top);T.position.x=g,T.position.y=Q,a.value=null,document.removeEventListener("pointerup",f)};document.addEventListener("pointerup",f)};return(u,d)=>(N(),H(xe,null,[S("div",{class:"baklava-node-palette",onContextmenu:d[0]||(d[0]=oe(()=>{},["stop","prevent"]))},[(N(!0),H(xe,null,Pe(gt(i),f=>(N(),H("section",{key:f.name},[f.name!=="default"?(N(),H("h1",GGn,J(f.name),1)):Z("",!0),(N(!0),H(xe,null,Pe(f.nodeTypes,(T,h)=>(N(),ot(KO,{key:h,type:h,title:T.title,onPointerdown:g=>c(h,T)},null,8,["type","title","onPointerdown"]))),128))]))),128))],32),ne(Nr,{name:"fade"},{default:Ge(()=>[a.value?(N(),H("div",{key:0,class:"baklava-dragged-node",style:an(l.value)},[ne(KO,{type:a.value.type,title:a.value.nodeInformation.title},null,8,["type","title"])],4)):Z("",!0)]),_:1})],64))}});let $6;const zGn=new Uint8Array(16);function YGn(){if(!$6&&($6=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!$6))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return $6(zGn)}const er=[];for(let t=0;t<256;++t)er.push((t+256).toString(16).slice(1));function WGn(t,e=0){return er[t[e+0]]+er[t[e+1]]+er[t[e+2]]+er[t[e+3]]+"-"+er[t[e+4]]+er[t[e+5]]+"-"+er[t[e+6]]+er[t[e+7]]+"-"+er[t[e+8]]+er[t[e+9]]+"-"+er[t[e+10]]+er[t[e+11]]+er[t[e+12]]+er[t[e+13]]+er[t[e+14]]+er[t[e+15]]}const KGn=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),ZO={randomUUID:KGn};function P5(t,e,n){if(ZO.randomUUID&&!t)return ZO.randomUUID();t=t||{};const o=t.random||(t.rng||YGn)();return o[6]=o[6]&15|64,o[8]=o[8]&63|128,WGn(o)}const Hc="SAVE_SUBGRAPH";function ZGn(t,e){const n=()=>{const o=t.value;if(!o.template)throw new Error("Graph template property not set");o.template.update(o.save()),o.template.panning=o.panning,o.template.scaling=o.scaling};e.registerCommand(Hc,{canExecute:()=>{var o;return t.value!==((o=t.value.editor)==null?void 0:o.graph)},execute:n})}const XGn={},JGn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},ejn=S("polyline",{points:"6 9 12 15 18 9"},null,-1),tjn=[ejn];function njn(t,e){return N(),H("svg",JGn,tjn)}const rjn=yn(XGn,[["render",njn]]),ijn=On({components:{"i-arrow":rjn},props:{intf:{type:Object,required:!0}},setup(t){const e=Ve(null),n=Ve(!1),o=je(()=>t.intf.items.find(s=>typeof s=="string"?s===t.intf.value:s.value===t.intf.value)),r=je(()=>o.value?typeof o.value=="string"?o.value:o.value.text:""),i=s=>{t.intf.value=typeof s=="string"?s:s.value};return pH(e,()=>{n.value=!1}),{el:e,open:n,selectedItem:o,selectedText:r,setSelected:i}}}),ojn=["title"],sjn={class:"__selected"},ajn={class:"__text"},ljn={class:"__icon"},cjn={class:"__dropdown"},ujn={class:"item --header"},djn=["onClick"];function Tjn(t,e,n,o,r,i){const s=ze("i-arrow");return N(),H("div",{ref:"el",class:Ee(["baklava-select",{"--open":t.open}]),title:t.intf.name,onClick:e[0]||(e[0]=a=>t.open=!t.open)},[S("div",sjn,[S("div",ajn,J(t.selectedText),1),S("div",ljn,[ne(s)])]),ne(Nr,{name:"slide-fade"},{default:Ge(()=>[Le(S("div",cjn,[S("div",ujn,J(t.intf.name),1),(N(!0),H(xe,null,Pe(t.intf.items,(a,l)=>(N(),H("div",{key:l,class:Ee(["item",{"--active":a===t.selectedItem}]),onClick:c=>t.setSelected(a)},J(typeof a=="string"?a:a.text),11,djn))),128))],512),[[An,t.open]])]),_:1})],10,ojn)}const fjn=yn(ijn,[["render",Tjn]]);class pjn extends mn{constructor(e,n,o){super(e,n),this.component=z5(fjn),this.items=o}}const hjn=On({props:{intf:{type:Object,required:!0}}});function mjn(t,e,n,o,r,i){return N(),H("div",null,J(t.intf.value),1)}const gjn=yn(hjn,[["render",mjn]]);class _jn extends mn{constructor(e,n){super(e,n),this.component=z5(gjn),this.setPort(!1)}}const Qjn=On({props:{intf:{type:Object,required:!0},modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(t,{emit:e}){return{v:je({get:()=>t.modelValue,set:o=>{e("update:modelValue",o)}})}}}),vjn=["placeholder","title"];function yjn(t,e,n,o,r,i){return N(),H("div",null,[Le(S("input",{"onUpdate:modelValue":e[0]||(e[0]=s=>t.v=s),type:"text",class:"baklava-input",placeholder:t.intf.name,title:t.intf.name},null,8,vjn),[[Je,t.v]])])}const bjn=yn(Qjn,[["render",yjn]]);class i6 extends mn{constructor(){super(...arguments),this.component=z5(bjn)}}class _H extends $h{constructor(){super(...arguments),this._title="Subgraph Input",this.inputs={name:new i6("Name","Input").setPort(!1)},this.outputs={placeholder:new mn("Connection",void 0)}}}class QH extends Vh{constructor(){super(...arguments),this._title="Subgraph Output",this.inputs={name:new i6("Name","Output").setPort(!1),placeholder:new mn("Connection",void 0)},this.outputs={output:new mn("Output",void 0).setHidden(!0)}}}const vH="CREATE_SUBGRAPH",XO=[wl,Ol];function Ejn(t,e,n){const o=()=>t.value.selectedNodes.filter(i=>!XO.includes(i.type)).length>0,r=()=>{const{viewModel:i}=Ai(),s=t.value,a=t.value.editor;if(s.selectedNodes.length===0)return;const l=s.selectedNodes.filter(C=>!XO.includes(C.type)),c=l.flatMap(C=>Object.values(C.inputs)),u=l.flatMap(C=>Object.values(C.outputs)),d=s.connections.filter(C=>!u.includes(C.from)&&c.includes(C.to)),f=s.connections.filter(C=>u.includes(C.from)&&!c.includes(C.to)),T=s.connections.filter(C=>u.includes(C.from)&&c.includes(C.to)),h=l.map(C=>C.save()),g=T.map(C=>({id:C.id,from:C.from.id,to:C.to.id})),Q=new Map,{xLeft:m,xRight:_,yTop:v}=Sjn(l);for(const[C,A]of d.entries()){const O=new _H;O.inputs.name.value=A.to.name,h.push({...O.save(),position:{x:_-i.value.settings.nodes.defaultWidth-100,y:v+C*200}}),g.push({id:P5(),from:O.outputs.placeholder.id,to:A.to.id}),Q.set(A.to.id,O.graphInterfaceId)}for(const[C,A]of f.entries()){const O=new QH;O.inputs.name.value=A.from.name,h.push({...O.save(),position:{x:m+100,y:v+C*200}}),g.push({id:P5(),from:A.from.id,to:O.inputs.placeholder.id}),Q.set(A.from.id,O.graphInterfaceId)}const b=fr(new x0({connections:g,nodes:h,inputs:[],outputs:[]},a));a.addGraphTemplate(b);const y=a.nodeTypes.get(Ml(b));if(!y)throw new Error("Unable to create subgraph: Could not find corresponding graph node type");s.activeTransactions++;const E=fr(new y.type);s.addNode(E);const x=Math.round(l.map(C=>C.position.x).reduce((C,A)=>C+A,0)/l.length),L=Math.round(l.map(C=>C.position.y).reduce((C,A)=>C+A,0)/l.length);E.position.x=x,E.position.y=L,d.forEach(C=>{s.removeConnection(C),s.addConnection(C.from,E.inputs[Q.get(C.to.id)])}),f.forEach(C=>{s.removeConnection(C),s.addConnection(E.outputs[Q.get(C.from.id)],C.to)}),l.forEach(C=>s.removeNode(C)),s.activeTransactions--,e.canExecuteCommand(Hc)&&e.executeCommand(Hc),n(b),t.value.panning={...s.panning},t.value.scaling=s.scaling};e.registerCommand(vH,{canExecute:o,execute:r})}function Sjn(t){const e=t.reduce((r,i)=>{const s=i.position.x;return s{const s=i.position.y;return s{const s=i.position.x+i.width;return s>r?s:r},-1/0),xRight:e,yTop:n}}class JO{constructor(e,n){this.type=e,e==="addNode"?this.nodeId=n:this.nodeState=n}undo(e){this.type==="addNode"?this.removeNode(e):this.addNode(e)}redo(e){this.type==="addNode"&&this.nodeState?this.addNode(e):this.type==="removeNode"&&this.nodeId&&this.removeNode(e)}addNode(e){const n=e.editor.nodeTypes.get(this.nodeState.type);if(!n)return;const o=new n.type;e.addNode(o),o.load(this.nodeState),this.nodeId=o.id}removeNode(e){const n=e.nodes.find(o=>o.id===this.nodeId);n&&(this.nodeState=n.save(),e.removeNode(n))}}class eM{constructor(e,n){if(this.type=e,e==="addConnection")this.connectionId=n;else{const o=n;this.connectionState={id:o.id,from:o.from.id,to:o.to.id}}}undo(e){this.type==="addConnection"?this.removeConnection(e):this.addConnection(e)}redo(e){this.type==="addConnection"&&this.connectionState?this.addConnection(e):this.type==="removeConnection"&&this.connectionId&&this.removeConnection(e)}addConnection(e){const n=e.findNodeInterface(this.connectionState.from),o=e.findNodeInterface(this.connectionState.to);if(!n||!o)return;const r=e.addConnection(n,o);r&&(r.id=this.connectionState.id),this.connectionId=r==null?void 0:r.id}removeConnection(e){const n=e.connections.find(o=>o.id===this.connectionId);n&&(this.connectionState={id:n.id,from:n.from.id,to:n.to.id},e.removeConnection(n))}}class xjn{constructor(e){if(this.type="transaction",e.length===0)throw new Error("Can't create a transaction with no steps");this.steps=e}undo(e){for(let n=this.steps.length-1;n>=0;n--)this.steps[n].undo(e)}redo(e){for(let n=0;n{if(!i.value)if(a.value)l.value.push(Q);else for(s.value!==r.value.length-1&&(r.value=r.value.slice(0,s.value+1)),r.value.push(Q),s.value++;r.value.length>o.value;)r.value.shift()},u=()=>{a.value=!0},d=()=>{a.value=!1,l.value.length>0&&(c(new xjn(l.value)),l.value=[])},f=()=>r.value.length!==0&&s.value!==-1,T=()=>{f()&&(i.value=!0,r.value[s.value--].undo(t.value),i.value=!1)},h=()=>r.value.length!==0&&s.value{h()&&(i.value=!0,r.value[++s.value].redo(t.value),i.value=!1)};return $n(t,(Q,m)=>{m&&(m.events.addNode.unsubscribe(n),m.events.removeNode.unsubscribe(n),m.events.addConnection.unsubscribe(n),m.events.removeConnection.unsubscribe(n)),Q&&(Q.events.addNode.subscribe(n,_=>{c(new JO("addNode",_.id))}),Q.events.removeNode.subscribe(n,_=>{c(new JO("removeNode",_.save()))}),Q.events.addConnection.subscribe(n,_=>{c(new eM("addConnection",_.id))}),Q.events.removeConnection.subscribe(n,_=>{c(new eM("removeConnection",_))}))},{immediate:!0}),e.registerCommand(qf,{canExecute:f,execute:T}),e.registerCommand(Gf,{canExecute:h,execute:g}),e.registerCommand(qh,{canExecute:()=>!a.value,execute:u}),e.registerCommand(Gh,{canExecute:()=>a.value,execute:d}),e.registerHotkey(["Control","z"],qf),e.registerHotkey(["Control","y"],Gf),fr({maxSteps:o})}const jf="DELETE_NODES";function Cjn(t,e){e.registerCommand(jf,{canExecute:()=>t.value.selectedNodes.length>0,execute(){e.executeCommand(qh);for(let n=t.value.selectedNodes.length-1;n>=0;n--){const o=t.value.selectedNodes[n];t.value.removeNode(o)}e.executeCommand(Gh)}}),e.registerHotkey(["Delete"],jf)}const yH="SWITCH_TO_MAIN_GRAPH";function Ajn(t,e,n){e.registerCommand(yH,{canExecute:()=>t.value!==t.value.editor.graph,execute:()=>{e.executeCommand(Hc),n(t.value.editor.graph)}})}function wjn(t,e,n){Cjn(t,e),Ejn(t,e,n),ZGn(t,e),Ajn(t,e,n)}const zf="COPY",Yf="PASTE",Ojn="CLEAR_CLIPBOARD";function Mjn(t,e,n){const o=Symbol("ClipboardToken"),r=Ve(""),i=Ve(""),s=je(()=>!r.value),a=()=>{r.value="",i.value=""},l=()=>{const d=t.value.selectedNodes.flatMap(T=>[...Object.values(T.inputs),...Object.values(T.outputs)]),f=t.value.connections.filter(T=>d.includes(T.from)||d.includes(T.to)).map(T=>({from:T.from.id,to:T.to.id}));i.value=JSON.stringify(f),r.value=JSON.stringify(t.value.selectedNodes.map(T=>T.save()))},c=(d,f,T)=>{for(const h of d){let g;if((!T||T==="input")&&(g=Object.values(h.inputs).find(Q=>Q.id===f)),!g&&(!T||T==="output")&&(g=Object.values(h.outputs).find(Q=>Q.id===f)),g)return g}},u=()=>{if(s.value)return;const d=new Map,f=JSON.parse(r.value),T=JSON.parse(i.value),h=[],g=[],Q=t.value;n.executeCommand(qh);for(const m of f){const _=e.value.nodeTypes.get(m.type);if(!_){console.warn(`Node type ${m.type} not registered`);return}const v=new _.type,b=v.id;h.push(v),v.hooks.beforeLoad.subscribe(o,y=>{const E=y;return E.position&&(E.position.x+=100,E.position.y+=100),v.hooks.beforeLoad.unsubscribe(o),E}),Q.addNode(v),v.load({...m,id:b}),v.id=b,d.set(m.id,b);for(const y of Object.values(v.inputs)){const E=P5();d.set(y.id,E),y.id=E}for(const y of Object.values(v.outputs)){const E=P5();d.set(y.id,E),y.id=E}}for(const m of T){const _=c(h,d.get(m.from),"output"),v=c(h,d.get(m.to),"input");if(!_||!v)continue;const b=Q.addConnection(_,v);b&&g.push(b)}return t.value.selectedNodes=h,n.executeCommand(Gh),{newNodes:h,newConnections:g}};return n.registerCommand(zf,{canExecute:()=>t.value.selectedNodes.length>0,execute:l}),n.registerHotkey(["Control","c"],zf),n.registerCommand(Yf,{canExecute:()=>!s.value,execute:u}),n.registerHotkey(["Control","v"],Yf),n.registerCommand(Ojn,{canExecute:()=>!0,execute:a}),fr({isEmpty:s})}const Rjn="OPEN_SIDEBAR";function Njn(t,e){e.registerCommand(Rjn,{execute:n=>{t.value.sidebar.nodeId=n,t.value.sidebar.visible=!0},canExecute:()=>!0})}function Djn(t,e){Njn(t,e)}const Ijn={},kjn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},Hjn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),Pjn=S("path",{d:"M9 13l-4 -4l4 -4m-4 4h11a4 4 0 0 1 0 8h-1"},null,-1),$jn=[Hjn,Pjn];function Vjn(t,e){return N(),H("svg",kjn,$jn)}const Bjn=yn(Ijn,[["render",Vjn]]),Fjn={},Ujn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},qjn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),Gjn=S("path",{d:"M15 13l4 -4l-4 -4m4 4h-11a4 4 0 0 0 0 8h1"},null,-1),jjn=[qjn,Gjn];function zjn(t,e){return N(),H("svg",Ujn,jjn)}const Yjn=yn(Fjn,[["render",zjn]]),Wjn={},Kjn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},Zjn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),Xjn=S("line",{x1:"5",y1:"12",x2:"19",y2:"12"},null,-1),Jjn=S("line",{x1:"5",y1:"12",x2:"11",y2:"18"},null,-1),ezn=S("line",{x1:"5",y1:"12",x2:"11",y2:"6"},null,-1),tzn=[Zjn,Xjn,Jjn,ezn];function nzn(t,e){return N(),H("svg",Kjn,tzn)}const rzn=yn(Wjn,[["render",nzn]]),izn={},ozn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},szn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),azn=S("path",{d:"M9 5h-2a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-12a2 2 0 0 0 -2 -2h-2"},null,-1),lzn=S("rect",{x:"9",y:"3",width:"6",height:"4",rx:"2"},null,-1),czn=[szn,azn,lzn];function uzn(t,e){return N(),H("svg",ozn,czn)}const dzn=yn(izn,[["render",uzn]]),Tzn={},fzn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},pzn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),hzn=S("rect",{x:"8",y:"8",width:"12",height:"12",rx:"2"},null,-1),mzn=S("path",{d:"M16 8v-2a2 2 0 0 0 -2 -2h-8a2 2 0 0 0 -2 2v8a2 2 0 0 0 2 2h2"},null,-1),gzn=[pzn,hzn,mzn];function _zn(t,e){return N(),H("svg",fzn,gzn)}const Qzn=yn(Tzn,[["render",_zn]]),vzn={},yzn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},bzn=S("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),Ezn=S("path",{d:"M6 4h10l4 4v10a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2"},null,-1),Szn=S("circle",{cx:"12",cy:"14",r:"2"},null,-1),xzn=S("polyline",{points:"14 4 14 8 8 8 8 4"},null,-1),Lzn=[bzn,Ezn,Szn,xzn];function Czn(t,e){return N(),H("svg",yzn,Lzn)}const Azn=yn(vzn,[["render",Czn]]),wzn={},Ozn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},Mzn=tr('',6),Rzn=[Mzn];function Nzn(t,e){return N(),H("svg",Ozn,Rzn)}const Dzn=yn(wzn,[["render",Nzn]]),Izn={},kzn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},Hzn=tr('',18),Pzn=[Hzn];function $zn(t,e){return N(),H("svg",kzn,Pzn)}const Vzn=yn(Izn,[["render",$zn]]),Bzn={},Fzn={xmlns:"http://www.w3.org/2000/svg",class:"baklava-icon",width:"24",height:"24",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"},Uzn=tr('',6),qzn=[Uzn];function Gzn(t,e){return N(),H("svg",Fzn,qzn)}const jzn=yn(Bzn,[["render",Gzn]]),zzn=On({props:{command:{type:String,required:!0},title:{type:String,required:!0},icon:{type:Object,required:!1,default:void 0}},setup(){const{viewModel:t}=Ai();return{viewModel:t}}}),Yzn=["disabled","title"];function Wzn(t,e,n,o,r,i){return N(),H("button",{class:"baklava-toolbar-entry baklava-toolbar-button",disabled:!t.viewModel.commandHandler.canExecuteCommand(t.command),title:t.title,onClick:e[0]||(e[0]=s=>t.viewModel.commandHandler.executeCommand(t.command))},[t.icon?(N(),ot(Vc(t.icon),{key:0})):(N(),H(xe,{key:1},[Me(J(t.title),1)],64))],8,Yzn)}const Kzn=yn(zzn,[["render",Wzn]]),Zzn=On({components:{ToolbarButton:Kzn},setup(){const{viewModel:t}=Ai();return{isSubgraph:je(()=>t.value.displayedGraph!==t.value.editor.graph),commands:[{command:zf,title:"Copy",icon:Qzn},{command:Yf,title:"Paste",icon:dzn},{command:jf,title:"Delete selected nodes",icon:jzn},{command:qf,title:"Undo",icon:Bjn},{command:Gf,title:"Redo",icon:Yjn},{command:r5,title:"Box Select",icon:Vzn},{command:vH,title:"Create Subgraph",icon:Dzn}],subgraphCommands:[{command:Hc,title:"Save Subgraph",icon:Azn},{command:yH,title:"Back to Main Graph",icon:rzn}]}}});function Xzn(t,e,n,o,r,i){const s=ze("toolbar-button");return N(),H("div",{class:"baklava-toolbar",onContextmenu:e[0]||(e[0]=oe(()=>{},["stop","prevent"]))},[(N(!0),H(xe,null,Pe(t.commands,a=>(N(),ot(s,{key:a.command,command:a.command,title:a.title,icon:a.icon},null,8,["command","title","icon"]))),128)),t.isSubgraph?(N(!0),H(xe,{key:0},Pe(t.subgraphCommands,a=>(N(),ot(s,{key:a.command,command:a.command,title:a.title,icon:a.icon},null,8,["command","title","icon"]))),128)):Z("",!0)],32)}const Jzn=yn(Zzn,[["render",Xzn]]),eYn={class:"connections-container"},tYn=On({__name:"Editor",props:{viewModel:{}},setup(t){const e=t,n=Symbol("EditorToken"),o=a5(e,"viewModel");Pqn(o);const r=Ve(null);fl("editorEl",r);const i=je(()=>e.viewModel.displayedGraph.nodes),s=je(()=>e.viewModel.displayedGraph.nodes.map(L=>lH(a5(L,"position")))),a=je(()=>e.viewModel.displayedGraph.connections),l=je(()=>e.viewModel.displayedGraph.selectedNodes),c=$qn(),u=Vqn(),d=Bqn(o),f=Fqn(r),T=je(()=>({...c.styles.value})),h=Ve(0);e.viewModel.editor.hooks.load.subscribe(n,L=>(h.value++,L));const g=L=>{c.onPointerMove(L),u.onMouseMove(L)},Q=L=>{if(L.button===0){if(f.onPointerDown(L))return;L.target===r.value&&(y(),c.onPointerDown(L)),u.onMouseDown()}},m=L=>{c.onPointerUp(L),u.onMouseUp()},_=L=>{L.key==="Tab"&&L.preventDefault(),e.viewModel.commandHandler.handleKeyDown(L)},v=L=>{e.viewModel.commandHandler.handleKeyUp(L)},b=L=>{["Control","Shift"].some(C=>e.viewModel.commandHandler.pressedKeys.includes(C))||y(),e.viewModel.displayedGraph.selectedNodes.push(L)},y=()=>{e.viewModel.displayedGraph.selectedNodes=[]},E=L=>{for(const C of e.viewModel.displayedGraph.selectedNodes){const A=i.value.indexOf(C),O=s.value[A];O.onPointerDown(L),document.addEventListener("pointermove",O.onPointerMove)}document.addEventListener("pointerup",x)},x=()=>{for(const L of e.viewModel.displayedGraph.selectedNodes){const C=i.value.indexOf(L),A=s.value[C];A.onPointerUp(),document.removeEventListener("pointermove",A.onPointerMove)}document.removeEventListener("pointerup",x)};return(L,C)=>(N(),H("div",{ref_key:"el",ref:r,tabindex:"-1",class:Ee(["baklava-editor",{"baklava-ignore-mouse":!!gt(u).temporaryConnection.value||gt(c).dragging.value,"--temporary-connection":!!gt(u).temporaryConnection.value,"--start-selection-box":gt(f).startSelection}]),onPointermove:oe(g,["self"]),onPointerdown:Q,onPointerup:m,onWheel:C[1]||(C[1]=oe((...A)=>gt(c).onMouseWheel&>(c).onMouseWheel(...A),["self"])),onKeydown:_,onKeyup:v,onContextmenu:C[2]||(C[2]=(...A)=>gt(d).open&>(d).open(...A))},[_n(L.$slots,"background",{},()=>[ne(Gqn)]),_n(L.$slots,"toolbar",{},()=>[L.viewModel.settings.toolbar.enabled?(N(),ot(Jzn,{key:0})):Z("",!0)]),_n(L.$slots,"palette",{},()=>[L.viewModel.settings.palette.enabled?(N(),ot(jGn,{key:0})):Z("",!0)]),(N(),H("svg",eYn,[(N(!0),H(xe,null,Pe(a.value,A=>(N(),H("g",{key:A.id+h.value.toString()},[_n(L.$slots,"connection",{connection:A},()=>[ne(wGn,{connection:A},null,8,["connection"])])]))),128)),_n(L.$slots,"temporaryConnection",{temporaryConnection:gt(u).temporaryConnection.value},()=>[gt(u).temporaryConnection.value?(N(),ot(RGn,{key:0,connection:gt(u).temporaryConnection.value},null,8,["connection"])):Z("",!0)])])),S("div",{class:"node-container",style:an(T.value)},[ne(w2,{name:"fade"},{default:Ge(()=>[(N(!0),H(xe,null,Pe(i.value,(A,O)=>_n(L.$slots,"node",{key:A.id+h.value.toString(),node:A,selected:l.value.includes(A),dragging:s.value[O].dragging.value,onSelect:R=>b(A),onStartDrag:E},()=>[ne(bGn,{node:A,selected:l.value.includes(A),dragging:s.value[O].dragging.value,onSelect:R=>b(A),onStartDrag:E},null,8,["node","selected","dragging","onSelect"])])),128))]),_:3})],4),_n(L.$slots,"sidebar",{},()=>[L.viewModel.settings.sidebar.enabled?(N(),ot(HGn,{key:0})):Z("",!0)]),_n(L.$slots,"minimap",{},()=>[L.viewModel.settings.enableMinimap?(N(),ot(PGn,{key:0})):Z("",!0)]),_n(L.$slots,"contextMenu",{contextMenu:gt(d)},()=>[L.viewModel.settings.contextMenu.enabled?(N(),ot(Uh,{key:0,modelValue:gt(d).show.value,"onUpdate:modelValue":C[0]||(C[0]=A=>gt(d).show.value=A),items:gt(d).items.value,x:gt(d).x.value,y:gt(d).y.value,onClick:gt(d).onClick},null,8,["modelValue","items","x","y","onClick"])):Z("",!0)]),gt(f).isSelecting?(N(),H("div",{key:0,class:"selection-box",style:an(gt(f).getStyles())},null,4)):Z("",!0)],34))}});function nYn(t){const e=Ve([]),n=Ve([]);return{pressedKeys:e,handleKeyDown:s=>{e.value.includes(s.key)||e.value.push(s.key),!(document.activeElement&&aH(document.activeElement))&&n.value.forEach(a=>{var l,c;a.keys.every(u=>e.value.includes(u))&&((l=a.options)!=null&&l.preventDefault&&s.preventDefault(),(c=a.options)!=null&&c.stopPropagation&&s.stopPropagation(),t(a.commandName))})},handleKeyUp:s=>{const a=e.value.indexOf(s.key);a>=0&&e.value.splice(a,1)},registerHotkey:(s,a,l)=>{n.value.push({keys:s,commandName:a,options:l})}}}const rYn=()=>{const t=Ve(new Map),e=s=>t.value.has(s),n=(s,a)=>{if(t.value.has(s))throw new Error(`Command "${s}" already exists`);t.value.set(s,a)},o=(s,a=!1,...l)=>{if(!t.value.has(s)){if(a)throw new Error(`[CommandHandler] Command ${s} not registered`);return}return t.value.get(s).execute(...l)},r=(s,a=!1,...l)=>{if(!t.value.has(s)){if(a)throw new Error(`[CommandHandler] Command ${s} not registered`);return!1}return t.value.get(s).canExecute(l)},i=nYn(o);return fr({hasCommand:e,registerCommand:n,executeCommand:o,canExecuteCommand:r,...i})},iYn=t=>!(t instanceof r6);function oYn(t,e){return{switchGraph:o=>{let r;if(iYn(o))r=new r6(t.value),o.createGraph(r);else{if(o!==t.value.graph)throw new Error("Can only switch using 'Graph' instance when it is the root graph. Otherwise a 'GraphTemplate' must be used.");r=o}e.value&&e.value!==t.value.graph&&e.value.destroy(),r.panning=r.panning??o.panning??{x:0,y:0},r.scaling=r.scaling??o.scaling??1,r.selectedNodes=r.selectedNodes??[],r.sidebar=r.sidebar??{visible:!1,nodeId:"",optionName:""},e.value=r}}}function sYn(t,e){t.position=t.position??{x:0,y:0},t.disablePointerEvents=!1,t.twoColumn=t.twoColumn??!1,t.width=t.width??e.defaultWidth}const aYn=()=>({useStraightConnections:!1,enableMinimap:!1,toolbar:{enabled:!0},palette:{enabled:!0},background:{gridSize:100,gridDivision:5,subGridVisibleThreshold:.6},sidebar:{enabled:!0,width:300,resizable:!0},displayValueOnHover:!1,nodes:{defaultWidth:200,maxWidth:320,minWidth:150,resizable:!1,reverseY:!1},contextMenu:{enabled:!0,additionalItems:[]}});function lYn(t){const e=Ve(new Mqn),n=Symbol("ViewModelToken"),o=Ve(null),r=OP(o),{switchGraph:i}=oYn(e,o),s=je(()=>r.value&&r.value!==e.value.graph),a=fr(aYn()),l=rYn(),c=Ljn(r,l),u=Mjn(r,e,l),d={renderNode:new Ci(null),renderInterface:new Ci(null)};return wjn(r,l,i),Djn(r,l),$n(e,(f,T)=>{T&&(T.events.registerGraph.unsubscribe(n),T.graphEvents.beforeAddNode.unsubscribe(n),f.nodeHooks.beforeLoad.unsubscribe(n),f.nodeHooks.afterSave.unsubscribe(n),f.graphTemplateHooks.beforeLoad.unsubscribe(n),f.graphTemplateHooks.afterSave.unsubscribe(n),f.graph.hooks.load.unsubscribe(n),f.graph.hooks.save.unsubscribe(n)),f&&(f.nodeHooks.beforeLoad.subscribe(n,(h,g)=>(g.position=h.position??{x:0,y:0},g.width=h.width??a.nodes.defaultWidth,g.twoColumn=h.twoColumn??!1,h)),f.nodeHooks.afterSave.subscribe(n,(h,g)=>(h.position=g.position,h.width=g.width,h.twoColumn=g.twoColumn,h)),f.graphTemplateHooks.beforeLoad.subscribe(n,(h,g)=>(g.panning=h.panning,g.scaling=h.scaling,h)),f.graphTemplateHooks.afterSave.subscribe(n,(h,g)=>(h.panning=g.panning,h.scaling=g.scaling,h)),f.graph.hooks.load.subscribe(n,(h,g)=>(g.panning=h.panning,g.scaling=h.scaling,h)),f.graph.hooks.save.subscribe(n,(h,g)=>(h.panning=g.panning,h.scaling=g.scaling,h)),f.graphEvents.beforeAddNode.subscribe(n,h=>sYn(h,{defaultWidth:a.nodes.defaultWidth})),e.value.registerNodeType(_H,{category:"Subgraphs"}),e.value.registerNodeType(QH,{category:"Subgraphs"}),i(f.graph))},{immediate:!0}),fr({editor:e,displayedGraph:r,isSubgraph:s,settings:a,commandHandler:l,history:c,clipboard:u,hooks:d,switchGraph:i})}const cYn=Gl({type:"PersonalityNode",title:"Personality",inputs:{request:()=>new mn("Request",""),agent_name:()=>new pjn("Personality","",m1.state.config.personalities).setPort(!1)},outputs:{response:()=>new mn("Response","")},async calculate({request:t}){console.log(m1.state.config.personalities);let e="";try{e=(await ce.post("/generate",{params:{text:t}})).data}catch(n){console.error(n)}return{display:e,response:e}}}),uYn=Gl({type:"RAGNode",title:"RAG",inputs:{request:()=>new mn("Prompt",""),document_path:()=>new i6("Document path","").setPort(!1)},outputs:{prompt:()=>new mn("Prompt with Data","")},async calculate({request:t,document_path:e}){let n="";try{n=(await ce.get("/rag",{params:{text:t,doc_path:e}})).data}catch(o){console.error(o)}return{response:n}}}),tM=Gl({type:"Task",title:"Task",inputs:{description:()=>new i6("Task description","").setPort(!1)},outputs:{prompt:()=>new mn("Prompt")},calculate({description:t}){return{prompt:t}}}),nM=Gl({type:"TextDisplayNode",title:"TextDisplay",inputs:{text2display:()=>new mn("Input","")},outputs:{response:()=>new _jn("Text","")},async calculate({request:t}){}}),rM=Gl({type:"LLMNode",title:"LLM",inputs:{request:()=>new mn("Request","")},outputs:{response:()=>new mn("Response","")},async calculate({request:t}){console.log(m1.state.config.personalities);let e="";try{e=(await ce.post("/generate",{params:{text:t}})).data}catch(n){console.error(n)}return{display:e,response:e}}}),dYn=Gl({type:"MultichoiceNode",title:"Multichoice",inputs:{question:()=>new mn("Question",""),outputs:()=>new i6("choices, one per line","","").setPort(!1)},outputs:{response:()=>new mn("Response","")}}),TYn=On({components:{"baklava-editor":tYn},setup(){const t=lYn(),e=new kqn(t.editor);t.editor.registerNodeType(cYn),t.editor.registerNodeType(tM),t.editor.registerNodeType(uYn),t.editor.registerNodeType(nM),t.editor.registerNodeType(rM),t.editor.registerNodeType(dYn);const n=Symbol();e.events.afterRun.subscribe(n,a=>{e.pause(),Rqn(a,t.editor),e.resume()}),e.start();function o(a,l,c){const u=new a;return t.displayedGraph.addNode(u),u.position.x=l,u.position.y=c,u}const r=o(tM,300,140),i=o(rM,550,140),s=o(nM,850,140);return t.displayedGraph.addConnection(r.outputs.prompt,i.inputs.request),t.displayedGraph.addConnection(i.outputs.response,s.inputs.text2display),{baklava:t,saveGraph:()=>{const a=e.export();localStorage.setItem("myGraph",JSON.stringify(a))},loadGraph:()=>{const a=JSON.parse(localStorage.getItem("myGraph"));e.import(a)}}}}),fYn={style:{width:"100vw",height:"100vh"}};function pYn(t,e,n,o,r,i){const s=ze("baklava-editor");return N(),H("div",fYn,[ne(s,{"view-model":t.baklava},null,8,["view-model"]),S("button",{onClick:e[0]||(e[0]=(...a)=>t.saveGraph&&t.saveGraph(...a))},"Save Graph"),S("button",{onClick:e[1]||(e[1]=(...a)=>t.loadGraph&&t.loadGraph(...a))},"Load Graph")])}const hYn=Ye(TYn,[["render",pYn]]),mYn={},gYn={style:{width:"100vw",height:"100vh"}},_Yn=["src"];function QYn(t,e,n,o,r,i){return N(),H("div",gYn,[S("iframe",{src:t.$store.state.config.comfyui_base_url,class:"m-0 p-0 w-full h-full"},null,8,_Yn)])}const vYn=Ye(mYn,[["render",QYn]]),yYn={},bYn={style:{width:"100vw",height:"100vh"}},EYn=["src"];function SYn(t,e,n,o,r,i){return N(),H("div",bYn,[S("iframe",{src:t.$store.state.config.sd_base_url,class:"m-0 p-0 w-full h-full"},null,8,EYn)])}const xYn=Ye(yYn,[["render",SYn]]),LYn={name:"AppCard",props:{app:{type:Object,required:!0},isFavorite:{type:Boolean,default:!1}},methods:{formatDate(t){const e={year:"numeric",month:"short",day:"numeric"};return new Date(t).toLocaleDateString(void 0,e)}}},CYn={class:"app-card flex flex-col h-full"},AYn={class:"flex-grow"},wYn={class:"flex items-center mb-4"},OYn=["src"],MYn={class:"font-bold text-xl text-gray-800"},RYn={class:"text-sm text-gray-600"},NYn={class:"text-sm text-gray-600"},DYn={class:"text-sm text-gray-600"},IYn={class:"text-sm text-gray-600"},kYn={class:"text-sm text-gray-600"},HYn={class:"mb-4"},PYn={class:"text-sm text-gray-600 h-20 overflow-y-auto"},$Yn={class:"text-sm text-gray-600 mb-2"},VYn={key:0,class:"mb-4"},BYn={class:"text-xs text-gray-500 italic h-16 overflow-y-auto"},FYn={class:"mt-auto pt-4 border-t"},UYn={class:"flex justify-between items-center flex-wrap"},qYn=["title"],GYn=["fill"];function jYn(t,e,n,o,r,i){return N(),H("div",CYn,[S("div",AYn,[S("div",wYn,[S("img",{src:n.app.icon,alt:"App Icon",class:"w-16 h-16 rounded-full border border-gray-300 mr-4"},null,8,OYn),S("div",null,[S("h3",MYn,J(n.app.name),1),S("p",RYn,"Author: "+J(n.app.author),1),S("p",NYn,"Version: "+J(n.app.version),1),S("p",DYn,"Category: "+J(n.app.category),1),S("p",IYn,"Creation date: "+J(i.formatDate(n.app.creation_date)),1),S("p",kYn,"Last update: "+J(i.formatDate(n.app.last_update_date)),1),S("p",{class:Ee(["text-sm",n.app.is_public?"text-green-600":"text-orange-600"])},J(n.app.is_public?"Public App":"Local App"),3)])]),S("div",HYn,[e[10]||(e[10]=S("h4",{class:"font-semibold mb-1 text-gray-700"},"Description:",-1)),S("p",PYn,J(n.app.description),1)]),S("p",$Yn,"AI Model: "+J(n.app.model_name),1),n.app.disclaimer&&n.app.disclaimer.trim()!==""?(N(),H("div",VYn,[e[11]||(e[11]=S("h4",{class:"font-semibold mb-1 text-gray-700"},"Disclaimer:",-1)),S("p",BYn,J(n.app.disclaimer),1)])):Z("",!0)]),S("div",FYn,[S("div",UYn,[S("button",{onClick:e[0]||(e[0]=oe(s=>t.$emit("toggle-favorite",n.app.name),["stop"])),class:"text-yellow-500 hover:text-yellow-600 transition duration-300 ease-in-out",title:n.isFavorite?"Remove from favorites":"Add to favorites"},[(N(),H("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:n.isFavorite?"currentColor":"none",viewBox:"0 0 24 24",stroke:"currentColor"},e[12]||(e[12]=[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"},null,-1)]),8,GYn))],8,qYn),n.app.installed?(N(),H("button",{key:0,onClick:e[1]||(e[1]=oe(s=>t.$emit("uninstall",n.app.folder_name),["stop"])),class:"text-red-500 hover:text-red-600 transition duration-300 ease-in-out",title:"Uninstall"},e[13]||(e[13]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)]))):n.app.existsInFolder?(N(),H("button",{key:1,onClick:e[2]||(e[2]=oe(s=>t.$emit("delete",n.app.name),["stop"])),class:"text-yellow-500 hover:text-yellow-600 transition duration-300 ease-in-out",title:"Delete"},e[14]||(e[14]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)]))):(N(),H("button",{key:2,onClick:e[3]||(e[3]=oe(s=>t.$emit("install",n.app.folder_name),["stop"])),class:"text-blue-500 hover:text-blue-600 transition duration-300 ease-in-out",title:"Install"},e[15]||(e[15]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4"})],-1)]))),n.app.installed?(N(),H("button",{key:3,onClick:e[4]||(e[4]=oe(s=>t.$emit("edit",n.app),["stop"])),class:"text-purple-500 hover:text-purple-600 transition duration-300 ease-in-out",title:"Edit"},e[16]||(e[16]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"})],-1)]))):Z("",!0),S("button",{onClick:e[5]||(e[5]=oe(s=>t.$emit("download",n.app.folder_name),["stop"])),class:"text-green-500 hover:text-green-600 transition duration-300 ease-in-out",title:"Download"},e[17]||(e[17]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4"})],-1)])),n.app.has_readme?(N(),H("button",{key:4,onClick:e[6]||(e[6]=oe(s=>t.$emit("help",n.app),["stop"])),class:"text-gray-500 hover:text-gray-600 transition duration-300 ease-in-out",title:"Help"},e[18]||(e[18]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M12 21a9 9 0 100-18 9 9 0 000 18z"})],-1)]))):Z("",!0),n.app.installed?(N(),H("button",{key:5,onClick:e[7]||(e[7]=oe(s=>t.$emit("open",n.app),["stop"])),class:"text-indigo-500 hover:text-indigo-600 transition duration-300 ease-in-out",title:"Open"},e[19]||(e[19]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"})],-1)]))):Z("",!0),n.app.has_server&&n.app.installed?(N(),H("button",{key:6,onClick:e[8]||(e[8]=oe(s=>t.$emit("start-server",n.app.folder_name),["stop"])),class:"text-teal-500 hover:text-teal-600 transition duration-300 ease-in-out",title:"Start Server"},e[20]||(e[20]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 12h14M12 5l7 7-7 7"})],-1)]))):Z("",!0),n.app.has_update?(N(),H("button",{key:7,onClick:e[9]||(e[9]=oe(s=>t.$emit("install",n.app.folder_name),["stop"])),class:"relative text-yellow-500 hover:text-yellow-600 transition duration-300 ease-in-out animate-pulse",title:"Update Available"},e[21]||(e[21]=[S("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1),S("span",{class:"absolute top-0 right-0 inline-flex items-center justify-center px-2 py-1 text-xs font-bold leading-none text-red-100 transform translate-x-1/2 -translate-y-1/2 bg-red-600 rounded-full"},"!",-1)]))):Z("",!0)])])])}const zYn=Ye(LYn,[["render",jYn],["__scopeId","data-v-ae134649"]]),YYn={components:{AppCard:zYn},data(){return{apps:[],githubApps:[],favorites:[],selectedCategory:"all",selectedApp:null,appCode:"",loading:!1,message:"",successMessage:!0,searchQuery:"",selectedFile:null,isUploading:!1,error:"",sortBy:"update",sortOrder:"desc",showOnlyInstalled:!1,showOnlyUnInstalled:!1}},computed:{currentCategoryName(){return this.selectedCategory==="all"?"All Apps":this.selectedCategory},combinedApps(){this.apps.map(e=>e.name);const t=new Map(this.apps.map(e=>[e.name,{...e,installed:!0,existsInFolder:!0}]));return this.githubApps.forEach(e=>{t.has(e.name)||t.set(e.name,{...e,installed:!1,existsInFolder:!1})}),Array.from(t.values())},categories(){return[...new Set(this.combinedApps.map(t=>t.category))]},filteredApps(){return this.combinedApps.filter(t=>{const e=t.name.toLowerCase().includes(this.searchQuery.toLowerCase())||t.description.toLowerCase().includes(this.searchQuery.toLowerCase())||t.author.toLowerCase().includes(this.searchQuery.toLowerCase()),n=this.selectedCategory==="all"||t.category===this.selectedCategory,o=this.showOnlyInstalled&&t.installed||this.showOnlyUnInstalled&&!t.installed||!this.showOnlyInstalled&&!this.showOnlyUnInstalled;return e&&n&&o})},sortedAndFilteredApps(){return[...this.filteredApps].sort((t,e)=>{let n=0;switch(this.sortBy){case"name":n=t.name.localeCompare(e.name);break;case"author":n=t.author.localeCompare(e.author);break;case"date":n=this.getDateValue(t.creation_date)-this.getDateValue(e.creation_date);break;case"update":n=this.getDateValue(t.last_update_date)-this.getDateValue(e.last_update_date);break}return this.sortOrder==="asc"?n:-n})},favoriteApps(){return this.combinedApps.filter(t=>this.favorites.includes(t.appName))}},methods:{getDateValue(t){if(!t)return 0;const e=new Date(t);return isNaN(e.getTime())?0:e.getTime()},toggleSortOrder(){this.sortOrder=this.sortOrder==="asc"?"desc":"asc"},toggleFavorite(t){console.log("Toggling favorite"),console.log(t);const e=this.favorites.indexOf(t);e===-1?this.favorites.push(t):this.favorites.splice(e,1),this.saveFavoritesToLocalStorage()},saveFavoritesToLocalStorage(){localStorage.setItem("appZooFavorites",JSON.stringify(this.favorites))},loadFavoritesFromLocalStorage(){const t=localStorage.getItem("appZooFavorites");console.log("savedFavorites",t),t&&(this.favorites=JSON.parse(t))},startServer(t){const e={client_id:this.$store.state.client_id,app_name:t};this.$store.state.messageBox.showBlockingMessage(`Loading server. +This may take some time the first time as some libraries need to be installed.`),ce.post("/apps/start_server",e).then(n=>{this.$store.state.messageBox.hideMessage(),console.log("Server start initiated:",n.data.message),this.$notify({type:"success",title:"Server Starting",text:n.data.message})}).catch(n=>{var o,r;this.$store.state.messageBox.hideMessage(),console.error("Error starting server:",n),this.$notify({type:"error",title:"Server Start Failed",text:((r=(o=n.response)==null?void 0:o.data)==null?void 0:r.detail)||"An error occurred while starting the server"})})},triggerFileInput(){this.$refs.fileInput.click()},onFileSelected(t){this.selectedFile=t.target.files[0],this.message="",this.error="",this.uploadApp()},async uploadApp(){var e,n;if(!this.selectedFile){this.error="Please select a file to upload.";return}this.isUploading=!0,this.message="",this.error="";const t=new FormData;t.append("file",this.selectedFile),t.append("client_id",this.$store.state.client_id);try{const o=await ce.post("/upload_app",t,{headers:{"Content-Type":"multipart/form-data"}});this.message=o.data.message,this.$refs.fileInput.value="",this.selectedFile=null}catch(o){console.error("Error uploading app:",o),this.error=((n=(e=o.response)==null?void 0:e.data)==null?void 0:n.detail)||"Failed to upload the app. Please try again."}finally{this.isUploading=!1}},async fetchApps(){this.loading=!0;try{const t=await ce.get("/apps");this.apps=t.data,this.showMessage("Refresh successful!",!0)}catch{this.showMessage("Failed to refresh apps.",!1)}finally{this.loading=!1}},async openAppsFolder(){this.loading=!0;try{console.log("opening apps folder");const t=await ce.post("/show_apps_folder",{client_id:this.$store.state.client_id})}catch{this.showMessage("Failed to open apps folder.",!1)}finally{this.loading=!1}},async fetchGithubApps(){this.loading=!0;try{const t=await ce.get("/github/apps");this.githubApps=t.data.apps,await this.fetchApps()}catch{this.showMessage("Failed to refresh GitHub apps.",!1)}finally{this.loading=!1}},async handleAppClick(t){if(t.installed){this.selectedApp=t;const e=await ce.get(`/apps/${t.folder_name}/README.md`);this.appCode=Et(e.data)}else this.showMessage(`Please install ${t.folder_name} to view its code.`,!1)},backToZoo(){this.selectedApp=null,this.appCode=""},async installApp(t){this.loading=!0,this.$store.state.messageBox.showBlockingMessage(`Installing app ${t}`);try{await ce.post(`/install/${t}`,{client_id:this.$store.state.client_id}),this.showMessage("Installation succeeded!",!0)}catch{this.showMessage("Installation failed.",!1)}finally{this.loading=!1,this.fetchApps(),this.fetchGithubApps(),this.$store.state.messageBox.hideMessage()}},async uninstallApp(t){this.loading=!0;try{await ce.post(`/uninstall/${t}`,{client_id:this.$store.state.client_id}),this.showMessage("Uninstallation succeeded!",!0)}catch{this.showMessage("Uninstallation failed.",!1)}finally{this.loading=!1,this.fetchApps()}},async deleteApp(t){this.loading=!0;try{await ce.post(`/delete/${t}`,{client_id:this.$store.state.client_id}),this.showMessage("Deletion succeeded!",!0)}catch{this.showMessage("Deletion failed.",!1)}finally{this.loading=!1,this.fetchApps()}},async editApp(t){this.loading=!0;try{const e=await ce.post("/open_app_in_vscode",{client_id:this.$store.state.client_id,app_name:t.folder_name});this.showMessage(e.data.message,!0)}catch{this.showMessage("Failed to open folder in VSCode.",!1)}finally{this.loading=!1}},async downloadApp(t){this.isLoading=!0,this.error=null;try{const e=await ce.post("/download_app",{client_id:this.$store.state.client_id,app_name:t},{responseType:"arraybuffer"}),n=e.headers["content-disposition"],o=n&&n.match(/filename="?(.+)"?/i),r=o?o[1]:"app.zip",i=new Blob([e.data],{type:"application/zip"}),s=window.URL.createObjectURL(i),a=document.createElement("a");a.style.display="none",a.href=s,a.download=r,document.body.appendChild(a),a.click(),window.URL.revokeObjectURL(s),document.body.removeChild(a)}catch(e){console.error("Error downloading app:",e),this.error="Failed to download the app. Please try again."}finally{this.isLoading=!1}},openApp(t){t.installed?window.open(`/apps/${t.folder_name}/index.html?client_id=${this.$store.state.client_id}`,"_blank"):this.showMessage(`Please install ${t.name} before opening.`,!1)},showMessage(t,e){this.message=t,this.successMessage=e,setTimeout(()=>{this.message=""},3e3)}},mounted(){this.fetchGithubApps(),this.loadFavoritesFromLocalStorage()}},WYn={class:"app-zoo background-color w-full p-6 pt-12 min-h-screen overflow-y-auto"},KYn={class:"panels-color shadow-lg rounded-lg p-4 max-w-4xl mx-auto mb-8"},ZYn={class:"flex flex-wrap items-center justify-between gap-4"},XYn={class:"flex items-center space-x-4"},JYn=["disabled"],eWn={key:0},tWn={key:1,class:"error"},nWn={class:"relative flex-grow max-w-md"},rWn={class:"flex items-center space-x-4"},iWn=["value"],oWn={class:"flex items-center space-x-4"},sWn={for:"installed-only",class:"font-semibold"},aWn={for:"installed-only",class:"font-semibold"},lWn={class:"flex items-center space-x-4"},cWn={key:0,class:"flex justify-center items-center space-x-2 my-8","aria-live":"polite"},uWn={key:1,class:"pb-20"},dWn={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8 mb-8"},TWn={class:"text-2xl font-bold mb-4"},fWn={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8"},pWn={key:2,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},hWn={class:"bg-white rounded-lg p-6 w-11/12 h-5/6 flex flex-col"},mWn={class:"flex justify-between items-center mb-4"},gWn={class:"text-2xl font-bold"},_Wn=["srcdoc"],QWn={key:1,class:"text-center text-red-500"};function vWn(t,e,n,o,r,i){const s=ze("app-card");return N(),H("div",WYn,[S("nav",KYn,[S("div",ZYn,[S("div",XYn,[S("button",{onClick:e[0]||(e[0]=(...a)=>i.fetchGithubApps&&i.fetchGithubApps(...a)),class:"btn btn-primary","aria-label":"Refresh apps from GitHub"},e[11]||(e[11]=[S("svg",{class:"w-5 h-5 mr-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1),Me(" Refresh ")])),S("button",{onClick:e[1]||(e[1]=(...a)=>i.openAppsFolder&&i.openAppsFolder(...a)),class:"btn btn-secondary","aria-label":"Open apps folder"},e[12]||(e[12]=[S("svg",{class:"w-5 h-5 mr-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 19a2 2 0 01-2-2V7a2 2 0 012-2h4l2 2h4a2 2 0 012 2v1M5 19h14a2 2 0 002-2v-5a2 2 0 00-2-2H9a2 2 0 00-2 2v5a2 2 0 01-2 2z"})],-1),Me(" Open Folder ")])),S("input",{type:"file",onChange:e[2]||(e[2]=(...a)=>i.onFileSelected&&i.onFileSelected(...a)),accept:".zip",ref:"fileInput",style:{display:"none"}},null,544),S("button",{onClick:e[3]||(e[3]=(...a)=>i.triggerFileInput&&i.triggerFileInput(...a)),disabled:r.isUploading,class:"btn-secondary text-green-500 hover:text-green-600 transition duration-300 ease-in-out",title:"Upload App"},J(r.isUploading?"Uploading...":"Upload App"),9,JYn)]),r.message?(N(),H("p",eWn,J(r.message),1)):Z("",!0),r.error?(N(),H("p",tWn,J(r.error),1)):Z("",!0),S("div",nWn,[Le(S("input",{"onUpdate:modelValue":e[4]||(e[4]=a=>r.searchQuery=a),placeholder:"Search apps...",class:"w-full border-b-2 border-gray-300 px-4 py-2 pl-10 focus:outline-none focus:border-blue-500 transition duration-300 ease-in-out","aria-label":"Search apps"},null,512),[[Je,r.searchQuery]]),e[13]||(e[13]=S("svg",{class:"w-5 h-5 text-gray-400 absolute left-3 top-1/2 transform -translate-y-1/2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})],-1))]),S("div",rWn,[e[15]||(e[15]=S("label",{for:"category-select",class:"font-semibold"},"Category:",-1)),Le(S("select",{id:"category-select","onUpdate:modelValue":e[5]||(e[5]=a=>r.selectedCategory=a),class:"border-2 border-gray-300 rounded-md px-2 py-1"},[e[14]||(e[14]=S("option",{value:"all"},"All Categories",-1)),(N(!0),H(xe,null,Pe(i.categories,a=>(N(),H("option",{key:a,value:a},J(a),9,iWn))),128))],512),[[Dr,r.selectedCategory]])]),S("div",oWn,[S("label",sWn,[Le(S("input",{id:"installed-only",type:"checkbox","onUpdate:modelValue":e[6]||(e[6]=a=>r.showOnlyInstalled=a),class:"mr-2"},null,512),[[vl,r.showOnlyInstalled]]),e[16]||(e[16]=Me(" Show only installed apps "))]),S("label",aWn,[Le(S("input",{id:"uninstalled-only",type:"checkbox","onUpdate:modelValue":e[7]||(e[7]=a=>r.showOnlyUnInstalled=a),class:"mr-2"},null,512),[[vl,r.showOnlyUnInstalled]]),e[17]||(e[17]=Me(" Show only non installed apps "))])]),S("div",lWn,[e[19]||(e[19]=S("label",{for:"sort-select",class:"font-semibold"},"Sort by:",-1)),Le(S("select",{id:"sort-select","onUpdate:modelValue":e[8]||(e[8]=a=>r.sortBy=a),class:"border-2 border-gray-300 rounded-md px-2 py-1"},e[18]||(e[18]=[S("option",{value:"name"},"Name",-1),S("option",{value:"author"},"Author",-1),S("option",{value:"date"},"Creation Date",-1),S("option",{value:"update"},"Last Update",-1)]),512),[[Dr,r.sortBy]]),S("button",{onClick:e[9]||(e[9]=(...a)=>i.toggleSortOrder&&i.toggleSortOrder(...a)),class:"btn btn-secondary"},J(r.sortOrder==="asc"?"↑":"↓"),1)])])]),r.loading?(N(),H("div",cWn,e[20]||(e[20]=[S("div",{class:"animate-spin rounded-full h-10 w-10 border-t-2 border-b-2 border-blue-500"},null,-1),S("span",{class:"text-xl text-gray-700 font-semibold"},"Loading...",-1)]))):(N(),H("div",uWn,[e[21]||(e[21]=S("h2",{class:"text-2xl font-bold mb-4"},"Favorite Apps",-1)),S("div",dWn,[(N(!0),H(xe,null,Pe(i.favoriteApps,a=>(N(),ot(s,{key:a.appName,app:a,onToggleFavorite:i.toggleFavorite,onInstall:i.installApp,onUninstall:i.uninstallApp,onDelete:i.deleteApp,onEdit:i.editApp,onDownload:i.downloadApp,onHelp:i.handleAppClick,onOpen:i.openApp,onStartServer:i.startServer},null,8,["app","onToggleFavorite","onInstall","onUninstall","onDelete","onEdit","onDownload","onHelp","onOpen","onStartServer"]))),128))]),S("h2",TWn,J(i.currentCategoryName)+" ("+J(i.sortedAndFilteredApps.length)+")",1),S("div",fWn,[(N(!0),H(xe,null,Pe(i.sortedAndFilteredApps,a=>(N(),ot(s,{key:a.name,app:a,onToggleFavorite:i.toggleFavorite,onInstall:i.installApp,onUninstall:i.uninstallApp,onDelete:i.deleteApp,onEdit:i.editApp,onDownload:i.downloadApp,onHelp:i.handleAppClick,onOpen:i.openApp,onStartServer:i.startServer},null,8,["app","onToggleFavorite","onInstall","onUninstall","onDelete","onEdit","onDownload","onHelp","onOpen","onStartServer"]))),128))])])),r.selectedApp?(N(),H("div",pWn,[S("div",hWn,[S("div",mWn,[S("h2",gWn,J(r.selectedApp.name),1),S("button",{onClick:e[10]||(e[10]=(...a)=>i.backToZoo&&i.backToZoo(...a)),class:"bg-gray-300 hover:bg-gray-400 px-4 py-2 rounded-lg transition duration-300 ease-in-out"},"Close")]),r.appCode?(N(),H("iframe",{key:0,srcdoc:r.appCode,class:"flex-grow border-none"},null,8,_Wn)):(N(),H("p",QWn,"Please install this app to view its code."))])])):Z("",!0),r.message?(N(),H("div",{key:3,class:Ee(["fixed bottom-4 right-4 px-6 py-3 rounded-lg shadow-md",{"bg-green-100 text-green-800":r.successMessage,"bg-red-100 text-red-800":!r.successMessage}])},J(r.message),3)):Z("",!0)])}const yWn=Ye(YYn,[["render",vWn]]),bWn={components:{PersonalityEntry:Nk},data(){return{personalities:[],githubApps:[],favorites:[],selectedCategory:"all",selectedApp:null,appCode:"",loading:!1,message:"",successMessage:!0,searchQuery:"",selectedFile:null,isUploading:!1,error:"",sortBy:"name",sortOrder:"asc"}},computed:{currentCategoryName(){return this.selectedCategory=="all"?"All Personalities":this.selectedCategory},configFile:{get(){return this.$store.state.config},set(t){this.$store.commit("setConfig",t)}},combinedApps(){this.personalities.map(e=>e.name);const t=new Map(this.personalities.map(e=>[e.name,{...e,installed:!0,existsInFolder:!0}]));return this.githubApps.forEach(e=>{t.has(e.name)||t.set(e.name,{...e,installed:!1,existsInFolder:!1})}),Array.from(t.values())},categories(){return[...new Set(this.combinedApps.map(t=>t.category))].sort((t,e)=>t.localeCompare(e))},filteredApps(){return this.combinedApps.filter(t=>{const e=t.name.toLowerCase().includes(this.searchQuery.toLowerCase())||t.author.toLowerCase().includes(this.searchQuery.toLowerCase())||t.description.toLowerCase().includes(this.searchQuery.toLowerCase()),n=this.selectedCategory==="all"||t.category===this.selectedCategory;return e&&n})},sortedAndFilteredPersonalities(){return[...this.filteredApps].sort((t,e)=>{let n=0;switch(this.sortBy){case"name":n=t.name.localeCompare(e.name);break;case"author":n=t.author.localeCompare(e.author);break;case"date":n=this.getDateValue(t.creation_date)-this.getDateValue(e.creation_date);break;case"update":n=this.getDateValue(t.last_update_date)-this.getDateValue(e.last_update_date);break}return this.sortOrder==="asc"?n:-n})},favoritePersonalities(){return this.combinedApps.filter(t=>this.favorites.includes(t.uid))}},methods:{getDateValue(t){if(!t)return 0;const e=new Date(t);return isNaN(e.getTime())?0:e.getTime()},async onPersonalitySelected(t){if(console.log("on pers",t),this.isLoading&&this.$store.state.toast.showToast("Loading... please wait",4,!1),this.isLoading=!0,console.log("selecting ",t),t){if(t.selected){this.$store.state.toast.showToast("Personality already selected",4,!0),this.isLoading=!1;return}let e=t.language==null?t.full_path:t.full_path+":"+t.language;if(console.log("pth",e),t.isMounted&&this.configFile.personalities.includes(e)){const n=await this.select_personality(t);console.log("pers is mounted",n),n&&n.status&&n.active_personality_id>-1?this.$store.state.toast.showToast(`Selected personality: `+t.name,4,!0):this.$store.state.toast.showToast(`Error on select personality: `+t.name,4,!1),this.isLoading=!1}else console.log("mounting pers"),this.mountPersonality(t);Se(()=>{feather.replace()})}},onModelSelected(t){if(this.isLoading){this.$store.state.toast.showToast("Loading... please wait",4,!1);return}t&&(t.isInstalled?this.update_model(t.model.name).then(e=>{console.log("update_model",e),this.configFile.model_name=t.model.name,e.status?(this.$store.state.toast.showToast(`Selected model: `+t.name,4,!0),Se(()=>{feather.replace(),this.is_loading_zoo=!1}),this.updateModelsZoo(),this.api_get_req("get_model_status").then(n=>{this.$store.commit("setIsModelOk",n)})):(this.$store.state.toast.showToast(`Couldn't select model: @@ -375,4 +375,4 @@ You have the freedom to give, sell, or keep the personas you create for yourself The possibilities are endless, they are now yours to mold and customize as you see fit.`),this.$store.dispatch("refreshPersonalitiesZoo")):this.$store.state.toast.showToast(`Personality couldn't be copied to the custom personalities folder: Verify that the personality is not already copied there.`,4,!1)}).catch(e=>{this.$store.state.toast.showToast(`Personality couldn't be copied to the custom personalities folder: `,4,!1),console.error(e)})},async remountPersonality(t){await this.unmountPersonality(t),await this.mountPersonality(t)},onPersonalityReinstall(t){console.log("on reinstall ",t),this.isLoading=!0,console.log("Personality path:",t.personality.path),ce.post("/reinstall_personality",{client_id:this.$store.state.client_id,name:t.personality.path},{headers:this.posts_headers}).then(e=>{if(e)return this.isLoading=!1,console.log("reinstall_personality",e),e.data.status?this.$store.state.toast.showToast("Personality reinstalled successfully!",4,!0):this.$store.state.toast.showToast("Could not reinstall personality",4,!1),e.data;this.isLoading=!1}).catch(e=>(this.isLoading=!1,this.$store.state.toast.showToast(`Could not reinstall personality -`+e.message,4,!1),{status:!1}))},async handleOpenFolder(t){await ce.post("/open_personality_folder",{client_id:this.$store.state.client_id,personality_folder:t.personality.folder})},showMessage(t,e){this.message=t,this.successMessage=e,setTimeout(()=>{this.message=""},3e3)},loadPersonalities(){this.loading=!0,setTimeout(()=>{this.personalities=this.$store.state.personalities,this.loading=!1},500)}},mounted(){this.loadFavoritesFromLocalStorage(),this.loading=!0,setTimeout(()=>{this.personalities=this.$store.state.personalities,this.loading=!1},500)}},bWn={class:"app-zoo mb-100 pb-100 pt-12 background-color w-full p-6 overflow-y-auto h-screen scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"},EWn={class:"panels-color shadow-lg rounded-lg p-4 max-w-4xl mx-auto mb-8"},SWn={class:"flex flex-wrap items-center justify-between gap-4"},xWn={key:0},LWn={key:1,class:"error"},CWn={class:"relative flex-grow max-w-md"},AWn={class:"flex items-center space-x-4"},wWn=["value"],OWn={class:"flex items-center space-x-4"},MWn={key:0,class:"flex justify-center items-center space-x-2 my-8","aria-live":"polite"},RWn={key:1},NWn={class:"container mx-auto px-4 flex flex-col pb-20"},DWn={key:0},IWn={class:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-8 mb-12"},kWn={class:"container mx-auto px-4 flex flex-col pb-20"},HWn={class:"text-2xl font-bold my-8"},PWn={class:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-8 mb-12"},$Wn={key:2,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50 overflow-y-auto"},VWn={class:"bg-white rounded-lg p-6 w-11/12 h-5/6 flex flex-col"},BWn={class:"flex justify-between items-center mb-4"},FWn={class:"text-2xl font-bold"},UWn=["srcdoc"],qWn={key:1,class:"text-center text-red-500"};function GWn(t,e,n,o,r,i){const s=ze("personality-entry");return N(),H("div",bWn,[S("nav",EWn,[S("div",SWn,[r.message?(N(),H("p",xWn,J(r.message),1)):Z("",!0),r.error?(N(),H("p",LWn,J(r.error),1)):Z("",!0),S("div",CWn,[Le(S("input",{"onUpdate:modelValue":e[0]||(e[0]=a=>r.searchQuery=a),placeholder:"Search personalities...",class:"w-full border-b-2 border-gray-300 px-4 py-2 pl-10 focus:outline-none focus:border-blue-500 transition duration-300 ease-in-out","aria-label":"Search personalities"},null,512),[[Je,r.searchQuery]]),e[5]||(e[5]=S("svg",{class:"w-5 h-5 text-gray-400 absolute left-3 top-1/2 transform -translate-y-1/2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})],-1))]),S("div",AWn,[e[7]||(e[7]=S("label",{for:"category-select",class:"font-semibold"},"Category:",-1)),Le(S("select",{id:"category-select","onUpdate:modelValue":e[1]||(e[1]=a=>r.selectedCategory=a),class:"border-2 border-gray-300 rounded-md px-2 py-1"},[e[6]||(e[6]=S("option",{value:"all"},"All Categories",-1)),(N(!0),H(xe,null,Pe(i.categories,a=>(N(),H("option",{key:a,value:a},J(a),9,wWn))),128))],512),[[Dr,r.selectedCategory]])]),S("div",OWn,[e[9]||(e[9]=S("label",{for:"sort-select",class:"font-semibold"},"Sort by:",-1)),Le(S("select",{id:"sort-select","onUpdate:modelValue":e[2]||(e[2]=a=>r.sortBy=a),class:"border-2 border-gray-300 rounded-md px-2 py-1"},e[8]||(e[8]=[S("option",{value:"name"},"Name",-1),S("option",{value:"author"},"Author",-1),S("option",{value:"date"},"Creation Date",-1),S("option",{value:"update"},"Last Update",-1)]),512),[[Dr,r.sortBy]]),S("button",{onClick:e[3]||(e[3]=(...a)=>i.toggleSortOrder&&i.toggleSortOrder(...a)),class:"btn btn-secondary"},J(r.sortOrder==="asc"?"↑":"↓"),1)])])]),r.loading?(N(),H("div",MWn,e[10]||(e[10]=[S("div",{class:"animate-spin rounded-full h-10 w-10 border-t-2 border-b-2 border-blue-500"},null,-1),S("span",{class:"text-xl text-gray-700 font-semibold"},"Loading...",-1)]))):(N(),H("div",RWn,[S("div",NWn,[i.favoritePersonalities.length>0&&!r.searchQuery?(N(),H("div",DWn,[e[11]||(e[11]=S("h2",{class:"text-2xl font-bold my-8"},"Favorite Personalities",-1)),S("div",IWn,[(N(!0),H(xe,null,Pe(i.favoritePersonalities,a=>(N(),ot(s,{ref_for:!0,ref:"personalitiesZoo",key:a.uid,personality:a,select_language:!0,full_path:a.full_path,selected:i.configFile.active_personality_id==i.configFile.personalities.findIndex(l=>l===a.full_path||l===a.full_path+":"+a.language),"on-selected":i.onPersonalitySelected,"on-mount":i.mountPersonality,"on-un-mount":i.unmountPersonality,"on-remount":i.remountPersonality,"on-edit":i.editPersonality,"on-copy-to-custom":i.copyToCustom,"on-reinstall":i.onPersonalityReinstall,"on-settings":t.onSettingsPersonality,"on-copy-personality-name":t.onCopyPersonalityName,"on-copy-to_custom":t.onCopyToCustom,"on-open-folder":i.handleOpenFolder,"on-toggle-favorite":i.toggleFavorite},null,8,["personality","full_path","selected","on-selected","on-mount","on-un-mount","on-remount","on-edit","on-copy-to-custom","on-reinstall","on-settings","on-copy-personality-name","on-copy-to_custom","on-open-folder","on-toggle-favorite"]))),128))])])):Z("",!0)]),S("div",kWn,[S("h2",HWn,J(i.currentCategoryName)+" ("+J(i.sortedAndFilteredPersonalities.length)+")",1),S("div",PWn,[(N(!0),H(xe,null,Pe(i.sortedAndFilteredPersonalities,a=>(N(),ot(s,{ref_for:!0,ref:"personalitiesZoo",key:a.uid,personality:a,select_language:!0,full_path:a.full_path,selected:i.configFile.active_personality_id==i.configFile.personalities.findIndex(l=>l===a.full_path||l===a.full_path+":"+a.language),"on-selected":i.onPersonalitySelected,"on-mount":i.mountPersonality,"on-un-mount":i.unmountPersonality,"on-remount":i.remountPersonality,"on-edit":i.editPersonality,"on-copy-to-custom":i.copyToCustom,"on-reinstall":i.onPersonalityReinstall,"on-settings":t.onSettingsPersonality,"on-copy-personality-name":t.onCopyPersonalityName,"on-copy-to_custom":t.onCopyToCustom,"on-open-folder":i.handleOpenFolder,"on-toggle-favorite":i.toggleFavorite},null,8,["personality","full_path","selected","on-selected","on-mount","on-un-mount","on-remount","on-edit","on-copy-to-custom","on-reinstall","on-settings","on-copy-personality-name","on-copy-to_custom","on-open-folder","on-toggle-favorite"]))),128))])])])),r.selectedApp?(N(),H("div",$Wn,[S("div",VWn,[S("div",BWn,[S("h2",FWn,J(r.selectedApp.name),1),S("button",{onClick:e[4]||(e[4]=(...a)=>t.backToZoo&&t.backToZoo(...a)),class:"bg-gray-300 hover:bg-gray-400 px-4 py-2 rounded-lg transition duration-300 ease-in-out"},"Close")]),r.appCode?(N(),H("iframe",{key:0,srcdoc:r.appCode,class:"flex-grow border-none"},null,8,UWn)):(N(),H("p",qWn,"Please install this app to view its code."))])])):Z("",!0),r.message?(N(),H("div",{key:3,class:Ee(["fixed bottom-4 right-4 px-6 py-3 rounded-lg shadow-md",{"bg-green-100 text-green-800":r.successMessage,"bg-red-100 text-red-800":!r.successMessage}])},J(r.message),3)):Z("",!0),e[12]||(e[12]=S("div",{class:"h-20"},null,-1))])}const jWn=Ye(yWn,[["render",GWn],["__scopeId","data-v-a7f0fe49"]]),zWn=DU({history:TU("/"),routes:[{path:"/apps_view/",name:"AppsZoo",component:vWn},{path:"/personalities_view/",name:"PersonalitiesZoo",component:jWn},{path:"/auto_sd_view/",name:"AutoSD",component:SYn},{path:"/comfyui_view/",name:"ComfyUI",component:QYn},{path:"/playground/",name:"playground",component:FLn},{path:"/extensions/",name:"extensions",component:ZLn},{path:"/help_view/",name:"help_view",component:aCn},{path:"/settings/",name:"settings",component:$Hn},{path:"/training/",name:"training",component:XHn},{path:"/quantizing/",name:"quantizing",component:iPn},{path:"/",name:"discussions",component:bqn},{path:"/nodes/",name:"nodes",component:pYn}]}),L0=wV(EEn);function YWn(t){const e={};for(const n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}const m1=nB({state(){return{theme_vars:{lollms_title:"LoLLMS",falling_object:"L",activate_dropping_animation:!1,lollms_welcome_short_message:"Welcome to LoLLMS WebUI",lollms_welcome_message:"Embark on a journey through the realm of advanced AI with LoLLMS, your ultimate companion for intelligent conversations and multimodal interactions. Unleash the power of large language models and explore new frontiers in artificial intelligence."},personalities_ready:!1,is_rt_on:!1,language:"english",languages:[],currentTheme:"",personality_editor:null,showPersonalityEditor:!1,selectedPersonality:null,currentPersonConfig:{ai_name:"",ai_author:"",ai_category:"",ai_language:"",ai_description:"",ai_conditionning:"",ai_disclaimer:"",ai_icon:null},posts_headers:{accept:"application/json","Content-Type":"application/json"},client_id:"",leftPanelCollapsed:!1,rightPanelCollapsed:!0,view_mode:localStorage.getItem("lollms_webui_view_mode")||"compact",yesNoDialog:null,universalForm:null,saveConfiguration:null,toast:null,news:null,messageBox:null,api_get_req:null,api_post_req:null,startSpeechRecognition:null,ready:!1,loading_infos:"",loading_progress:0,version:"unknown",settingsChanged:!1,isConnected:!1,isModelOk:!1,isGenerating:!1,config:null,mountedPers:null,mountedPersArr:[],bindingsZoo:[],modelsArr:[],selectedModel:null,personalities:[],diskUsage:null,ramUsage:null,vramUsage:null,modelsZoo:[],installedModels:[],installedBindings:[],currentModel:null,currentBinding:null,databases:[]}},mutations:{updatePersonality(t,e){const n=t.personalities.findIndex(o=>o.full_path===e.full_path);n!==-1?t.personalities[n]=e:console.log("Can't uipdate personality beceause it was Not found:",e.full_path)},setInstalledModels(t,e){t.installedModels=e},setThemeVars(t,e){t.theme_vars=e},setLeftPanelCollapsed(t,e){t.leftPanelCollapsed=e,console.log(`Saving the status of left panel to ${e}`),localStorage.setItem("lollms_webui_left_panel_collapsed",e)},setRightPanelCollapsed(t,e){t.rightPanelCollapsed=e,console.log(`Saving the status of right panel to ${e}`),localStorage.setItem("lollms_webui_right_panel_collapsed",e)},setViewMode(t,e){t.view_mode=e,localStorage.setItem("lollms_webui_view_mode",e)},setpersonalitiesReady(t,e){t.personalities_ready=e},setisRTOn(t,e){t.is_rt_on=e},setLanguages(t,e){t.languages=e},setLanguage(t,e){t.language=e},setIsReady(t,e){t.ready=e},setIsConnected(t,e){t.isConnected=e},setIsModelOk(t,e){t.isModelOk=e},setIsGenerating(t,e){t.isGenerating=e},setConfig(t,e){t.config=e},setPersonalities(t,e){t.personalities=e},setMountedPers(t,e){t.mountedPers=e},setMountedPersArr(t,e){t.mountedPersArr=e},setbindingsZoo(t,e){t.bindingsZoo=e},setModelsArr(t,e){t.modelsArr=e},setselectedModel(t,e){t.selectedModel=e},setDiskUsage(t,e){t.diskUsage=e},setRamUsage(t,e){t.ramUsage=e},setVramUsage(t,e){t.vramUsage=e},setModelsZoo(t,e){t.modelsZoo=e},setCurrentBinding(t,e){t.currentBinding=e},setCurrentModel(t,e){t.currentModel=e},setDatabases(t,e){t.databases=e},setTheme(t){this.currentTheme=t}},getters:{getThemeVars(t){return t.theme_vars},getLeftPanelCollapsed(t){return t.leftPanelCollapsed},getRightPanelCollapsed(t){return t.rightPanelCollapsed},getViewMode(t){return t.view_mode},getpersonalitiesReady(t){return t.personalities_ready},getisRTOn(t){return t.is_rt_on},getLanguages(t){return t.languages},getLanguage(t){return t.language},getIsConnected(t){return t.isConnected},getIsModelOk(t){return t.isModelOk},getIsGenerating(t){return t.isGenerating},getConfig(t){return t.config},getPersonalities(t){return t.personalities},getMountedPersArr(t){return t.mountedPersArr},getMountedPers(t){return t.mountedPers},getbindingsZoo(t){return t.bindingsZoo},getModelsArr(t){return t.modelsArr},getDiskUsage(t){return t.diskUsage},getRamUsage(t){return t.ramUsage},getVramUsage(t){return t.vramUsage},getDatabasesList(t){return t.databases},getModelsZoo(t){return t.modelsZoo},getCyrrentBinding(t){return t.currentBinding},getCurrentModel(t){return t.currentModel}},actions:{async getVersion(){try{let t=await ce.get("/get_lollms_webui_version",{});t&&(t=t.data,t.version_type!=""?this.state.version=`${t.version_main}.${t.version_secondary} ${t.version_type} (${t.version_codename})`:this.state.version=`${t.version_main}.${t.version_secondary} (${t.version_codename})`)}catch{console.error("Coudln't get version")}},async refreshConfig({commit:t}){console.log("Fetching configuration");try{console.log("Fetching configuration with client id: ",this.state.client_id);const e=await bH("get_config",this.state.client_id);e.active_personality_id<0&&(e.active_personality_id=0);let n=e.personalities[e.active_personality_id].split("/");e.personality_category=n[0],e.personality_folder=n[1],console.log("Recovered config"),console.log(e),console.log("Committing config"),console.log(e),console.log(this.state.config),t("setConfig",e)}catch(e){console.log(e.message,"refreshConfig")}},async refreshDatabase({commit:t}){let e=await Zo("list_databases");console.log("databases:",e),t("setDatabases",e)},async fetchisRTOn({commit:t}){const n=(await ce.get("/is_rt_on")).data.status;t("setisRTOn",n)},async fetchLanguages({commit:t}){console.log("get_personality_languages_list",this.state.client_id);const e=await ce.post("/get_personality_languages_list",{client_id:this.state.client_id});console.log("response",e);const n=e.data;console.log("languages",n),t("setLanguages",n)},async fetchLanguage({commit:t}){console.log("get_personality_language",this.state.client_id);const e=await ce.post("/get_personality_language",{client_id:this.state.client_id});console.log("response",e);const n=e.data;console.log("language",n),t("setLanguage",n)},async changeLanguage({commit:t},e){console.log("Changing language to ",e);let n=await ce.post("/set_personality_language",{client_id:this.state.client_id,language:e});console.log("get_personality_languages_list",this.state.client_id),n=await ce.post("/get_personality_languages_list",{client_id:this.state.client_id}),console.log("response",n);const o=n.data;console.log("languages",o),t("setLanguages",o),n=await ce.post("/get_personality_language",{client_id:this.state.client_id}),console.log("response",n);const r=n.data;console.log("language",r),t("setLanguage",r),await this.dispatch("refreshMountedPersonalities"),console.log("Language changed successfully:",r)},async deleteLanguage({commit:t},e){console.log("Deleting ",e);let n=await ce.post("/del_personality_language",{client_id:this.state.client_id,language:e});console.log("get_personality_languages_list",this.state.client_id),n=await ce.post("/get_personality_languages_list",{client_id:this.state.client_id});const o=n.data;t("setLanguages",o),n=await ce.post("/get_personality_language",{client_id:this.state.client_id});const r=n.data;t("setLanguage",r)},async refreshPersonalitiesZoo({commit:t}){let e=[];const n=await Zo("get_all_personalities"),o=Object.keys(n);for(let r=0;r{let c=!1;for(const d of this.state.config.personalities)d.includes(i+"/"+l.folder)&&(c=!0);let u={};return u=l,u.category=i,u.full_path=i+"/"+l.folder,u.isMounted=c,u});e.length==0?e=a:e=e.concat(a)}e.sort((r,i)=>r.name.localeCompare(i.name)),t("setPersonalities",e),console.log("Done loading personalities")},refreshMountedPersonalities({commit:t}){this.state.config.active_personality_id<0&&(this.state.config.active_personality_id=0);let e=[];const n=[];for(let r=0;ra.full_path==i);if(s>=0){let a=YWn(this.state.personalities[s]);a?e.push(a):e.push(this.state.personalities[this.state.personalities.findIndex(l=>l.full_path=="generic/lollms")])}else n.push(r),console.log("Couldn't load personality : ",i)}for(let r=n.length-1;r>=0;r--)this.state.config.personalities.splice(n[r],1),this.state.config.active_personality_id>n[r]&&(this.state.config.active_personality_id-=1);t("setMountedPersArr",e);const o=this.state.personalities[this.state.personalities.findIndex(r=>r.full_path==this.state.config.personalities[this.state.config.active_personality_id])];console.log("Setting current mounted personality: ",o),this.state.mountedPers=o},async refreshBindings({commit:t}){let e=await Zo("list_bindings");console.log("Loaded bindings zoo :",e),this.state.installedBindings=e.filter(o=>o.installed),console.log("Loaded bindings zoo ",this.state.installedBindings),t("setbindingsZoo",e);const n=e.findIndex(o=>o.name==this.state.config.binding_name);n!=-1&&t("setCurrentBinding",e[n])},async refreshModelsZoo({commit:t}){const n=(await ce.get("/get_available_models")).data;t("setModelsZoo",n)},async refreshModelStatus({commit:t}){let e=await Zo("get_model_status");t("setIsModelOk",e.status)},async refreshModels({commit:t}){let e=await Zo("list_models"),n=await Zo("get_active_model");n!=null&&t("setselectedModel",n.model),t("setModelsArr",e),this.state.modelsZoo.map(s=>{s.isInstalled=e.includes(s.name)}),this.state.installedModels=this.state.modelsZoo.filter(s=>s.isInstalled);const r=e.filter(s=>!this.state.modelsZoo.some(a=>a.name===s)).map(s=>({name:s,icon:this.imgBinding,isCustomModel:!0,isInstalled:!0}));this.state.installedModels=[...this.state.installedModels,...r],t("setInstalledModels",this.state.installedModels);const i=this.state.modelsZoo.findIndex(s=>s.name==this.state.config.model_name);i!=-1&&t("setCurrentModel",this.state.modelsZoo[i])},async refreshDiskUsage({commit:t}){this.state.diskUsage=await Zo("disk_usage")},async refreshRamUsage({commit:t}){this.state.ramUsage=await Zo("ram_usage")},async refreshVramUsage({commit:t}){const e=await Zo("vram_usage"),n=[];if(e.nb_gpus>0){for(let r=0;r{this.message=""},3e3)},loadPersonalities(){this.loading=!0,setTimeout(()=>{this.personalities=this.$store.state.personalities,this.loading=!1},500)}},mounted(){this.loadFavoritesFromLocalStorage(),this.loading=!0,setTimeout(()=>{this.personalities=this.$store.state.personalities,this.loading=!1},500)}},EWn={class:"app-zoo mb-100 pb-100 pt-12 background-color w-full p-6 overflow-y-auto h-screen scrollbar-thin scrollbar-track-bg-light-tone scrollbar-thumb-bg-light-tone-panel hover:scrollbar-thumb-primary dark:scrollbar-track-bg-dark-tone dark:scrollbar-thumb-bg-dark-tone-panel dark:hover:scrollbar-thumb-primary active:scrollbar-thumb-secondary"},SWn={class:"panels-color shadow-lg rounded-lg p-4 max-w-4xl mx-auto mb-8"},xWn={class:"flex flex-wrap items-center justify-between gap-4"},LWn={key:0},CWn={key:1,class:"error"},AWn={class:"relative flex-grow max-w-md"},wWn={class:"flex items-center space-x-4"},OWn=["value"],MWn={class:"flex items-center space-x-4"},RWn={key:0,class:"flex justify-center items-center space-x-2 my-8","aria-live":"polite"},NWn={key:1},DWn={class:"container mx-auto px-4 flex flex-col pb-20"},IWn={key:0},kWn={class:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-8 mb-12"},HWn={class:"container mx-auto px-4 flex flex-col pb-20"},PWn={class:"text-2xl font-bold my-8"},$Wn={class:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-8 mb-12"},VWn={key:2,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50 overflow-y-auto"},BWn={class:"bg-white rounded-lg p-6 w-11/12 h-5/6 flex flex-col"},FWn={class:"flex justify-between items-center mb-4"},UWn={class:"text-2xl font-bold"},qWn=["srcdoc"],GWn={key:1,class:"text-center text-red-500"};function jWn(t,e,n,o,r,i){const s=ze("personality-entry");return N(),H("div",EWn,[S("nav",SWn,[S("div",xWn,[r.message?(N(),H("p",LWn,J(r.message),1)):Z("",!0),r.error?(N(),H("p",CWn,J(r.error),1)):Z("",!0),S("div",AWn,[Le(S("input",{"onUpdate:modelValue":e[0]||(e[0]=a=>r.searchQuery=a),placeholder:"Search personalities...",class:"w-full border-b-2 border-gray-300 px-4 py-2 pl-10 focus:outline-none focus:border-blue-500 transition duration-300 ease-in-out","aria-label":"Search personalities"},null,512),[[Je,r.searchQuery]]),e[5]||(e[5]=S("svg",{class:"w-5 h-5 text-gray-400 absolute left-3 top-1/2 transform -translate-y-1/2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},[S("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})],-1))]),S("div",wWn,[e[7]||(e[7]=S("label",{for:"category-select",class:"font-semibold"},"Category:",-1)),Le(S("select",{id:"category-select","onUpdate:modelValue":e[1]||(e[1]=a=>r.selectedCategory=a),class:"border-2 border-gray-300 rounded-md px-2 py-1"},[e[6]||(e[6]=S("option",{value:"all"},"All Categories",-1)),(N(!0),H(xe,null,Pe(i.categories,a=>(N(),H("option",{key:a,value:a},J(a),9,OWn))),128))],512),[[Dr,r.selectedCategory]])]),S("div",MWn,[e[9]||(e[9]=S("label",{for:"sort-select",class:"font-semibold"},"Sort by:",-1)),Le(S("select",{id:"sort-select","onUpdate:modelValue":e[2]||(e[2]=a=>r.sortBy=a),class:"border-2 border-gray-300 rounded-md px-2 py-1"},e[8]||(e[8]=[S("option",{value:"name"},"Name",-1),S("option",{value:"author"},"Author",-1),S("option",{value:"date"},"Creation Date",-1),S("option",{value:"update"},"Last Update",-1)]),512),[[Dr,r.sortBy]]),S("button",{onClick:e[3]||(e[3]=(...a)=>i.toggleSortOrder&&i.toggleSortOrder(...a)),class:"btn btn-secondary"},J(r.sortOrder==="asc"?"↑":"↓"),1)])])]),r.loading?(N(),H("div",RWn,e[10]||(e[10]=[S("div",{class:"animate-spin rounded-full h-10 w-10 border-t-2 border-b-2 border-blue-500"},null,-1),S("span",{class:"text-xl text-gray-700 font-semibold"},"Loading...",-1)]))):(N(),H("div",NWn,[S("div",DWn,[i.favoritePersonalities.length>0&&!r.searchQuery?(N(),H("div",IWn,[e[11]||(e[11]=S("h2",{class:"text-2xl font-bold my-8"},"Favorite Personalities",-1)),S("div",kWn,[(N(!0),H(xe,null,Pe(i.favoritePersonalities,a=>(N(),ot(s,{ref_for:!0,ref:"personalitiesZoo",key:a.uid,personality:a,select_language:!0,full_path:a.full_path,selected:i.configFile.active_personality_id==i.configFile.personalities.findIndex(l=>l===a.full_path||l===a.full_path+":"+a.language),"on-selected":i.onPersonalitySelected,"on-mount":i.mountPersonality,"on-un-mount":i.unmountPersonality,"on-remount":i.remountPersonality,"on-edit":i.editPersonality,"on-copy-to-custom":i.copyToCustom,"on-reinstall":i.onPersonalityReinstall,"on-settings":t.onSettingsPersonality,"on-copy-personality-name":t.onCopyPersonalityName,"on-copy-to_custom":t.onCopyToCustom,"on-open-folder":i.handleOpenFolder,"on-toggle-favorite":i.toggleFavorite},null,8,["personality","full_path","selected","on-selected","on-mount","on-un-mount","on-remount","on-edit","on-copy-to-custom","on-reinstall","on-settings","on-copy-personality-name","on-copy-to_custom","on-open-folder","on-toggle-favorite"]))),128))])])):Z("",!0)]),S("div",HWn,[S("h2",PWn,J(i.currentCategoryName)+" ("+J(i.sortedAndFilteredPersonalities.length)+")",1),S("div",$Wn,[(N(!0),H(xe,null,Pe(i.sortedAndFilteredPersonalities,a=>(N(),ot(s,{ref_for:!0,ref:"personalitiesZoo",key:a.uid,personality:a,select_language:!0,full_path:a.full_path,selected:i.configFile.active_personality_id==i.configFile.personalities.findIndex(l=>l===a.full_path||l===a.full_path+":"+a.language),"on-selected":i.onPersonalitySelected,"on-mount":i.mountPersonality,"on-un-mount":i.unmountPersonality,"on-remount":i.remountPersonality,"on-edit":i.editPersonality,"on-copy-to-custom":i.copyToCustom,"on-reinstall":i.onPersonalityReinstall,"on-settings":t.onSettingsPersonality,"on-copy-personality-name":t.onCopyPersonalityName,"on-copy-to_custom":t.onCopyToCustom,"on-open-folder":i.handleOpenFolder,"on-toggle-favorite":i.toggleFavorite},null,8,["personality","full_path","selected","on-selected","on-mount","on-un-mount","on-remount","on-edit","on-copy-to-custom","on-reinstall","on-settings","on-copy-personality-name","on-copy-to_custom","on-open-folder","on-toggle-favorite"]))),128))])])])),r.selectedApp?(N(),H("div",VWn,[S("div",BWn,[S("div",FWn,[S("h2",UWn,J(r.selectedApp.name),1),S("button",{onClick:e[4]||(e[4]=(...a)=>t.backToZoo&&t.backToZoo(...a)),class:"bg-gray-300 hover:bg-gray-400 px-4 py-2 rounded-lg transition duration-300 ease-in-out"},"Close")]),r.appCode?(N(),H("iframe",{key:0,srcdoc:r.appCode,class:"flex-grow border-none"},null,8,qWn)):(N(),H("p",GWn,"Please install this app to view its code."))])])):Z("",!0),r.message?(N(),H("div",{key:3,class:Ee(["fixed bottom-4 right-4 px-6 py-3 rounded-lg shadow-md",{"bg-green-100 text-green-800":r.successMessage,"bg-red-100 text-red-800":!r.successMessage}])},J(r.message),3)):Z("",!0),e[12]||(e[12]=S("div",{class:"h-20"},null,-1))])}const zWn=Ye(bWn,[["render",jWn],["__scopeId","data-v-a7f0fe49"]]),YWn=DU({history:TU("/"),routes:[{path:"/apps_view/",name:"AppsZoo",component:yWn},{path:"/personalities_view/",name:"PersonalitiesZoo",component:zWn},{path:"/auto_sd_view/",name:"AutoSD",component:xYn},{path:"/comfyui_view/",name:"ComfyUI",component:vYn},{path:"/playground/",name:"playground",component:FLn},{path:"/extensions/",name:"extensions",component:ZLn},{path:"/help_view/",name:"help_view",component:aCn},{path:"/settings/",name:"settings",component:VHn},{path:"/training/",name:"training",component:JHn},{path:"/quantizing/",name:"quantizing",component:oPn},{path:"/",name:"discussions",component:Eqn},{path:"/nodes/",name:"nodes",component:hYn}]}),L0=wV(EEn);function WWn(t){const e={};for(const n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}const m1=nB({state(){return{theme_vars:{lollms_title:"LoLLMS",falling_object:"L",activate_dropping_animation:!1,lollms_welcome_short_message:"Welcome to LoLLMS WebUI",lollms_welcome_message:"Embark on a journey through the realm of advanced AI with LoLLMS, your ultimate companion for intelligent conversations and multimodal interactions. Unleash the power of large language models and explore new frontiers in artificial intelligence."},personalities_ready:!1,is_rt_on:!1,language:"english",languages:[],currentTheme:"",personality_editor:null,showPersonalityEditor:!1,selectedPersonality:null,currentPersonConfig:{ai_name:"",ai_author:"",ai_category:"",ai_language:"",ai_description:"",ai_conditionning:"",ai_disclaimer:"",ai_icon:null},posts_headers:{accept:"application/json","Content-Type":"application/json"},client_id:"",leftPanelCollapsed:!1,rightPanelCollapsed:!0,view_mode:localStorage.getItem("lollms_webui_view_mode")||"compact",yesNoDialog:null,universalForm:null,saveConfiguration:null,toast:null,news:null,messageBox:null,api_get_req:null,api_post_req:null,startSpeechRecognition:null,ready:!1,loading_infos:"",loading_progress:0,version:"unknown",settingsChanged:!1,isConnected:!1,isModelOk:!1,isGenerating:!1,config:null,mountedPers:null,mountedPersArr:[],bindingsZoo:[],modelsArr:[],selectedModel:null,personalities:[],diskUsage:null,ramUsage:null,vramUsage:null,modelsZoo:[],installedModels:[],installedBindings:[],currentModel:null,currentBinding:null,databases:[]}},mutations:{updatePersonality(t,e){const n=t.personalities.findIndex(o=>o.full_path===e.full_path);n!==-1?t.personalities[n]=e:console.log("Can't uipdate personality beceause it was Not found:",e.full_path)},setInstalledModels(t,e){t.installedModels=e},setThemeVars(t,e){t.theme_vars=e},setLeftPanelCollapsed(t,e){t.leftPanelCollapsed=e,console.log(`Saving the status of left panel to ${e}`),localStorage.setItem("lollms_webui_left_panel_collapsed",e)},setRightPanelCollapsed(t,e){t.rightPanelCollapsed=e,console.log(`Saving the status of right panel to ${e}`),localStorage.setItem("lollms_webui_right_panel_collapsed",e)},setViewMode(t,e){t.view_mode=e,localStorage.setItem("lollms_webui_view_mode",e)},setpersonalitiesReady(t,e){t.personalities_ready=e},setisRTOn(t,e){t.is_rt_on=e},setLanguages(t,e){t.languages=e},setLanguage(t,e){t.language=e},setIsReady(t,e){t.ready=e},setIsConnected(t,e){t.isConnected=e},setIsModelOk(t,e){t.isModelOk=e},setIsGenerating(t,e){t.isGenerating=e},setConfig(t,e){t.config=e},setPersonalities(t,e){t.personalities=e},setMountedPers(t,e){t.mountedPers=e},setMountedPersArr(t,e){t.mountedPersArr=e},setbindingsZoo(t,e){t.bindingsZoo=e},setModelsArr(t,e){t.modelsArr=e},setselectedModel(t,e){t.selectedModel=e},setDiskUsage(t,e){t.diskUsage=e},setRamUsage(t,e){t.ramUsage=e},setVramUsage(t,e){t.vramUsage=e},setModelsZoo(t,e){t.modelsZoo=e},setCurrentBinding(t,e){t.currentBinding=e},setCurrentModel(t,e){t.currentModel=e},setDatabases(t,e){t.databases=e},setTheme(t){this.currentTheme=t}},getters:{getThemeVars(t){return t.theme_vars},getLeftPanelCollapsed(t){return t.leftPanelCollapsed},getRightPanelCollapsed(t){return t.rightPanelCollapsed},getViewMode(t){return t.view_mode},getpersonalitiesReady(t){return t.personalities_ready},getisRTOn(t){return t.is_rt_on},getLanguages(t){return t.languages},getLanguage(t){return t.language},getIsConnected(t){return t.isConnected},getIsModelOk(t){return t.isModelOk},getIsGenerating(t){return t.isGenerating},getConfig(t){return t.config},getPersonalities(t){return t.personalities},getMountedPersArr(t){return t.mountedPersArr},getMountedPers(t){return t.mountedPers},getbindingsZoo(t){return t.bindingsZoo},getModelsArr(t){return t.modelsArr},getDiskUsage(t){return t.diskUsage},getRamUsage(t){return t.ramUsage},getVramUsage(t){return t.vramUsage},getDatabasesList(t){return t.databases},getModelsZoo(t){return t.modelsZoo},getCyrrentBinding(t){return t.currentBinding},getCurrentModel(t){return t.currentModel}},actions:{async getVersion(){try{let t=await ce.get("/get_lollms_webui_version",{});t&&(t=t.data,t.version_type!=""?this.state.version=`${t.version_main}.${t.version_secondary} ${t.version_type} (${t.version_codename})`:this.state.version=`${t.version_main}.${t.version_secondary} (${t.version_codename})`)}catch{console.error("Coudln't get version")}},async refreshConfig({commit:t}){console.log("Fetching configuration");try{console.log("Fetching configuration with client id: ",this.state.client_id);const e=await bH("get_config",this.state.client_id);e.active_personality_id<0&&(e.active_personality_id=0);let n=e.personalities[e.active_personality_id].split("/");e.personality_category=n[0],e.personality_folder=n[1],console.log("Recovered config"),console.log(e),console.log("Committing config"),console.log(e),console.log(this.state.config),t("setConfig",e)}catch(e){console.log(e.message,"refreshConfig")}},async refreshDatabase({commit:t}){let e=await Zo("list_databases");console.log("databases:",e),t("setDatabases",e)},async fetchisRTOn({commit:t}){const n=(await ce.get("/is_rt_on")).data.status;t("setisRTOn",n)},async fetchLanguages({commit:t}){console.log("get_personality_languages_list",this.state.client_id);const e=await ce.post("/get_personality_languages_list",{client_id:this.state.client_id});console.log("response",e);const n=e.data;console.log("languages",n),t("setLanguages",n)},async fetchLanguage({commit:t}){console.log("get_personality_language",this.state.client_id);const e=await ce.post("/get_personality_language",{client_id:this.state.client_id});console.log("response",e);const n=e.data;console.log("language",n),t("setLanguage",n)},async changeLanguage({commit:t},e){console.log("Changing language to ",e);let n=await ce.post("/set_personality_language",{client_id:this.state.client_id,language:e});console.log("get_personality_languages_list",this.state.client_id),n=await ce.post("/get_personality_languages_list",{client_id:this.state.client_id}),console.log("response",n);const o=n.data;console.log("languages",o),t("setLanguages",o),n=await ce.post("/get_personality_language",{client_id:this.state.client_id}),console.log("response",n);const r=n.data;console.log("language",r),t("setLanguage",r),await this.dispatch("refreshMountedPersonalities"),console.log("Language changed successfully:",r)},async deleteLanguage({commit:t},e){console.log("Deleting ",e);let n=await ce.post("/del_personality_language",{client_id:this.state.client_id,language:e});console.log("get_personality_languages_list",this.state.client_id),n=await ce.post("/get_personality_languages_list",{client_id:this.state.client_id});const o=n.data;t("setLanguages",o),n=await ce.post("/get_personality_language",{client_id:this.state.client_id});const r=n.data;t("setLanguage",r)},async refreshPersonalitiesZoo({commit:t}){let e=[];const n=await Zo("get_all_personalities"),o=Object.keys(n);for(let r=0;r{let c=!1;for(const d of this.state.config.personalities)d.includes(i+"/"+l.folder)&&(c=!0);let u={};return u=l,u.category=i,u.full_path=i+"/"+l.folder,u.isMounted=c,u});e.length==0?e=a:e=e.concat(a)}e.sort((r,i)=>r.name.localeCompare(i.name)),t("setPersonalities",e),console.log("Done loading personalities")},refreshMountedPersonalities({commit:t}){this.state.config.active_personality_id<0&&(this.state.config.active_personality_id=0);let e=[];const n=[];for(let r=0;ra.full_path==i);if(s>=0){let a=WWn(this.state.personalities[s]);a?e.push(a):e.push(this.state.personalities[this.state.personalities.findIndex(l=>l.full_path=="generic/lollms")])}else n.push(r),console.log("Couldn't load personality : ",i)}for(let r=n.length-1;r>=0;r--)this.state.config.personalities.splice(n[r],1),this.state.config.active_personality_id>n[r]&&(this.state.config.active_personality_id-=1);t("setMountedPersArr",e);const o=this.state.personalities[this.state.personalities.findIndex(r=>r.full_path==this.state.config.personalities[this.state.config.active_personality_id])];console.log("Setting current mounted personality: ",o),this.state.mountedPers=o},async refreshBindings({commit:t}){let e=await Zo("list_bindings");console.log("Loaded bindings zoo :",e),this.state.installedBindings=e.filter(o=>o.installed),console.log("Loaded bindings zoo ",this.state.installedBindings),t("setbindingsZoo",e);const n=e.findIndex(o=>o.name==this.state.config.binding_name);n!=-1&&t("setCurrentBinding",e[n])},async refreshModelsZoo({commit:t}){const n=(await ce.get("/get_available_models")).data;t("setModelsZoo",n)},async refreshModelStatus({commit:t}){let e=await Zo("get_model_status");t("setIsModelOk",e.status)},async refreshModels({commit:t}){let e=await Zo("list_models"),n=await Zo("get_active_model");n!=null&&t("setselectedModel",n.model),t("setModelsArr",e),this.state.modelsZoo.map(s=>{s.isInstalled=e.includes(s.name)}),this.state.installedModels=this.state.modelsZoo.filter(s=>s.isInstalled);const r=e.filter(s=>!this.state.modelsZoo.some(a=>a.name===s)).map(s=>({name:s,icon:this.imgBinding,isCustomModel:!0,isInstalled:!0}));this.state.installedModels=[...this.state.installedModels,...r],t("setInstalledModels",this.state.installedModels);const i=this.state.modelsZoo.findIndex(s=>s.name==this.state.config.model_name);i!=-1&&t("setCurrentModel",this.state.modelsZoo[i])},async refreshDiskUsage({commit:t}){this.state.diskUsage=await Zo("disk_usage")},async refreshRamUsage({commit:t}){this.state.ramUsage=await Zo("ram_usage")},async refreshVramUsage({commit:t}){const e=await Zo("vram_usage"),n=[];if(e.nb_gpus>0){for(let r=0;r - License: see project LICENSE - Touched: 2022 -*/.hljs-meta,.hljs-comment{color:#565f89}.hljs-tag,.hljs-doctag,.hljs-selector-id,.hljs-selector-class,.hljs-regexp,.hljs-template-tag,.hljs-selector-pseudo,.hljs-selector-attr,.hljs-variable.language_,.hljs-deletion{color:#f7768e}.hljs-variable,.hljs-template-variable,.hljs-number,.hljs-literal,.hljs-type,.hljs-params,.hljs-link{color:#ff9e64}.hljs-built_in,.hljs-attribute{color:#e0af68}.hljs-selector-tag{color:#2ac3de}.hljs-keyword,.hljs-title.function_,.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-subst,.hljs-property{color:#7dcfff}.hljs-selector-tag{color:#73daca}.hljs-quote,.hljs-string,.hljs-symbol,.hljs-bullet,.hljs-addition{color:#9ece6a}.hljs-code,.hljs-formula,.hljs-section{color:#7aa2f7}.hljs-name,.hljs-keyword,.hljs-operator,.hljs-char.escape_,.hljs-attr{color:#bb9af7}.hljs-punctuation{color:#c0caf5}.hljs{background:#1a1b26;color:#9aa5ce}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}/*! - Theme: GitHub - Description: Light theme as seen on github.com - Author: github.com - Maintainer: @Hirse - Updated: 2021-05-15 - - Outdated base version: https://github.com/primer/github-syntax-light - Current colors taken from GitHub's CSS -*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}.code-block-button[data-v-6c0ead0d]{border-radius:.25rem;padding:.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.code-block-button[data-v-6c0ead0d]:hover{background-color:var(--color-primary);--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.code-block-button[data-v-6c0ead0d]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: var(--color-primary);--tw-ring-offset-width: 1px}.code-block-button[data-v-6c0ead0d]:disabled{cursor:not-allowed;opacity:.5}.code-block-button[data-v-6c0ead0d]:hover:disabled{background-color:transparent;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.code-block-button[data-v-6c0ead0d]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.code-block-button[data-v-6c0ead0d]:hover:is(.dark *){background-color:var(--color-primary)}.code-block-button[data-v-6c0ead0d]:hover:disabled:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.feather-small[data-v-6c0ead0d]{display:inline-block;height:.75rem;width:.75rem;vertical-align:middle}.hljs[data-v-6c0ead0d]{background:none!important;padding:0!important;margin:0!important}.code-block-container[data-v-6c0ead0d]{position:relative}.code-content-flex[data-v-6c0ead0d]{align-items:stretch}.line-numbers[data-v-6c0ead0d]{flex-shrink:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow-y:hidden;white-space:pre;border-right-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));padding:.5rem;text-align:right;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.line-numbers[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.line-numbers[data-v-6c0ead0d]{min-height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none}.code-content[data-v-6c0ead0d]{flex-grow:1;overflow-x:auto;overflow-y:hidden;white-space:pre-wrap;overflow-wrap:break-word;padding:.5rem}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-track{background-color:var(--scrollbar-track);border-radius:var(--scrollbar-track-radius)}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-track:hover{background-color:var(--scrollbar-track-hover, var(--scrollbar-track))}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-track:active{background-color:var(--scrollbar-track-active, var(--scrollbar-track-hover, var(--scrollbar-track)))}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:var(--scrollbar-thumb-radius)}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover, var(--scrollbar-thumb))}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-thumb-active, var(--scrollbar-thumb-hover, var(--scrollbar-thumb)))}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-corner{background-color:var(--scrollbar-corner);border-radius:var(--scrollbar-corner-radius)}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-corner:hover{background-color:var(--scrollbar-corner-hover, var(--scrollbar-corner))}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-corner:active{background-color:var(--scrollbar-corner-active, var(--scrollbar-corner-hover, var(--scrollbar-corner)))}.code-content[data-v-6c0ead0d]{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb, initial) var(--scrollbar-track, initial)}.code-content[data-v-6c0ead0d]::-webkit-scrollbar{display:block;width:8px;height:8px}.code-content[data-v-6c0ead0d]{--scrollbar-track: transparent;--scrollbar-thumb: #9CA3AF}.code-content[data-v-6c0ead0d]:focus{outline:2px solid transparent;outline-offset:2px}.code-content[data-v-6c0ead0d]:is(.dark *){--scrollbar-thumb: #6B7280}.code-content[data-v-6c0ead0d]{min-height:1.5em;caret-color:currentColor;color:#1f2937;background-color:#fff}.dark .code-content[data-v-6c0ead0d]{color:#e5e7eb;background-color:#1f2937}.code-content[data-v-6c0ead0d]::-webkit-scrollbar{height:8px}.code-content[data-v-6c0ead0d]::-webkit-scrollbar-thumb{border-radius:4px}.animate-spin[data-v-6c0ead0d]{animation:spin-6c0ead0d 1s linear infinite}@keyframes spin-6c0ead0d{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.execute-button[data-v-6c0ead0d]{display:inline-flex;align-items:center;justify-content:center}.dark .dark\:hidden[data-v-6c0ead0d]{display:none}.dark .dark\:inline[data-v-6c0ead0d]{display:inline}.hidden[data-v-6c0ead0d]{display:none}.code-block-button i[data-feather][data-v-6c0ead0d],.code-block-button img[data-v-6c0ead0d]{vertical-align:middle}.parameter-item[data-v-6c0ead0d]{margin-bottom:.5rem}.parameter-item>div[data-v-6c0ead0d]:last-child{margin-left:.5rem}.execution-output-content a[data-v-6c0ead0d]{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.execution-output-content a[data-v-6c0ead0d]:hover{text-decoration-line:underline}.execution-output-content a[data-v-6c0ead0d]:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.execution-output-content h1[data-v-6c0ead0d]{margin-top:.5rem;margin-bottom:.5rem;font-size:1.25rem;line-height:1.75rem;font-weight:700}.execution-output-content h2[data-v-6c0ead0d]{margin-top:.375rem;margin-bottom:.375rem;font-size:1.125rem;line-height:1.75rem;font-weight:600}.execution-output-content h3[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;font-size:1rem;line-height:1.5rem;font-weight:600}.execution-output-content h4[data-v-6c0ead0d],.execution-output-content h5[data-v-6c0ead0d],.execution-output-content h6[data-v-6c0ead0d]{margin-top:.125rem;margin-bottom:.125rem;font-weight:600}.execution-output-content p[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem}.execution-output-content ul[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;margin-left:1rem;list-style-position:inside;list-style-type:disc}.execution-output-content ol[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;margin-left:1rem;list-style-position:inside;list-style-type:decimal}.execution-output-content li[data-v-6c0ead0d]{margin-top:.125rem;margin-bottom:.125rem}.execution-output-content code[data-v-6c0ead0d]:not(pre>code){border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));padding:.125rem .25rem;font-family:JetBrains Mono,Consolas,monospace;font-size:.875rem;line-height:1.25rem}.execution-output-content code[data-v-6c0ead0d]:not(pre>code):is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.execution-output-content pre[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;overflow-x:auto;border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));padding:.5rem;font-family:JetBrains Mono,Consolas,monospace;font-size:.875rem;line-height:1.25rem}.execution-output-content pre[data-v-6c0ead0d]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.execution-output-content pre>code[data-v-6c0ead0d]{background-color:transparent;padding:0;font-size:.875rem;line-height:1.25rem}.execution-output-content blockquote[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;border-left-width:4px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));padding-left:.5rem;font-style:italic;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.execution-output-content blockquote[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.execution-output-content table[data-v-6c0ead0d]{margin-top:.5rem;margin-bottom:.5rem;width:100%;border-collapse:collapse;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));font-size:.875rem;line-height:1.25rem}.execution-output-content table[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.execution-output-content th[data-v-6c0ead0d],.execution-output-content td[data-v-6c0ead0d]{border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));padding:.375rem;text-align:left}.execution-output-content th[data-v-6c0ead0d]:is(.dark *),.execution-output-content td[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.execution-output-content th[data-v-6c0ead0d]{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));font-weight:600}.execution-output-content th[data-v-6c0ead0d]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.execution-output-content img[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;height:auto;max-width:100%;border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.execution-output-content img[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.execution-output-content svg[data-v-6c0ead0d]{margin-top:.25rem;margin-bottom:.25rem;height:auto;max-width:100%}.execution-output-content hr[data-v-6c0ead0d]{margin-top:.5rem;margin-bottom:.5rem;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.execution-output-content hr[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.execution-output-content.hljs[data-v-6c0ead0d]{color:#1f2937;background-color:#fff}.dark .execution-output-content.hljs[data-v-6c0ead0d]{color:#e5e7eb;background-color:#1f2937}.search-replace-panel[data-v-6c0ead0d]{border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.search-replace-panel[data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.search-replace-panel input[type=text][data-v-6c0ead0d]{border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:.25rem .5rem;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.search-replace-panel input[type=text][data-v-6c0ead0d]:focus{border-color:var(--color-primary);outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: var(--color-primary)}.search-replace-panel input[type=text][data-v-6c0ead0d]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.search-replace-panel input[type=text][data-v-6c0ead0d]{min-width:80px}.search-replace-panel .search-status[data-v-6c0ead0d]{white-space:nowrap;padding-left:.25rem;padding-right:.25rem;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.search-replace-panel .search-status[data-v-6c0ead0d]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.search-replace-panel .search-status[data-v-6c0ead0d]{min-width:50px;text-align:center}.search-replace-panel .search-button[data-v-6c0ead0d]{padding:.125rem .25rem;font-size:.75rem;line-height:1rem}.search-replace-panel .search-button i[data-feather][data-v-6c0ead0d]{height:.875rem;width:.875rem}.search-replace-panel .code-block-button[data-v-6c0ead0d]{padding:.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.search-replace-panel .code-block-button[data-v-6c0ead0d]:hover{background-color:var(--color-primary);--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.search-replace-panel .code-block-button[data-v-6c0ead0d]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.search-replace-panel .code-block-button[data-v-6c0ead0d]:hover:is(.dark *){background-color:var(--color-primary)}.search-replace-panel .code-block-button[data-v-6c0ead0d]:disabled{cursor:not-allowed;opacity:.5}.search-replace-panel .code-block-button[data-v-6c0ead0d]:disabled:hover{background-color:transparent;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.search-replace-panel .code-block-button[data-v-6c0ead0d]:disabled:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.code-content[data-v-6c0ead0d]::-moz-selection{background-color:#c3ddfd;color:#000}.code-content[data-v-6c0ead0d]::selection{background-color:#c3ddfd;color:#000}.dark .code-content[data-v-6c0ead0d]::-moz-selection{background-color:#1e429f;color:#fff}.dark .code-content[data-v-6c0ead0d]::selection{background-color:#1e429f;color:#fff}.dark .code-content.hljs[data-v-6c0ead0d],.dark .execution-output-content.hljs[data-v-6c0ead0d]{color:#a9b1d6}.dark .hljs-meta[data-v-6c0ead0d]{color:#ff9e64}.dark .hljs-comment[data-v-6c0ead0d]{color:#565f89;font-style:italic}.dark .hljs-tag[data-v-6c0ead0d],.dark .hljs-tag .hljs-name[data-v-6c0ead0d],.dark .hljs-tag .hljs-attr[data-v-6c0ead0d]{color:#f7768e}.dark .hljs-keyword[data-v-6c0ead0d],.dark .hljs-selector-tag[data-v-6c0ead0d],.dark .hljs-literal[data-v-6c0ead0d],.dark .hljs-name[data-v-6c0ead0d]{color:#bb9af7}.dark .hljs-deletion[data-v-6c0ead0d],.dark .hljs-number[data-v-6c0ead0d],.dark .hljs-attribute[data-v-6c0ead0d],.dark .hljs-variable[data-v-6c0ead0d],.dark .hljs-template-variable[data-v-6c0ead0d],.dark .hljs-symbol[data-v-6c0ead0d]{color:#ff9e64}.dark .hljs-section[data-v-6c0ead0d],.dark .hljs-title[data-v-6c0ead0d],.dark .hljs-type[data-v-6c0ead0d]{color:#7aa2f7}.dark .hljs-string[data-v-6c0ead0d],.dark .hljs-subst[data-v-6c0ead0d],.dark .hljs-regexp[data-v-6c0ead0d],.dark .hljs-link[data-v-6c0ead0d],.dark .hljs-addition[data-v-6c0ead0d],.dark .hljs-selector-id[data-v-6c0ead0d],.dark .hljs-selector-class[data-v-6c0ead0d]{color:#9ece6a}.dark .hljs-built_in[data-v-6c0ead0d],.dark .hljs-bullet[data-v-6c0ead0d],.dark .hljs-code[data-v-6c0ead0d],.dark .hljs-formula[data-v-6c0ead0d]{color:#7dcfff}.dark .hljs-emphasis[data-v-6c0ead0d]{font-style:italic}.dark .hljs-strong[data-v-6c0ead0d]{font-weight:700}html:not(.dark) .code-content.hljs[data-v-6c0ead0d],html:not(.dark) .execution-output-content.hljs[data-v-6c0ead0d]{color:#24292e}html:not(.dark) .hljs-meta[data-v-6c0ead0d]{color:#6a737d}html:not(.dark) .hljs-comment[data-v-6c0ead0d]{color:#6a737d;font-style:italic}html:not(.dark) .hljs-tag[data-v-6c0ead0d]{color:#22863a}html:not(.dark) .hljs-tag .hljs-name[data-v-6c0ead0d],html:not(.dark) .hljs-tag .hljs-attr[data-v-6c0ead0d]{color:#22863a}html:not(.dark) .hljs-keyword[data-v-6c0ead0d],html:not(.dark) .hljs-selector-tag[data-v-6c0ead0d],html:not(.dark) .hljs-literal[data-v-6c0ead0d],html:not(.dark) .hljs-name[data-v-6c0ead0d]{color:#d73a49}html:not(.dark) .hljs-deletion[data-v-6c0ead0d],html:not(.dark) .hljs-number[data-v-6c0ead0d],html:not(.dark) .hljs-attribute[data-v-6c0ead0d],html:not(.dark) .hljs-variable[data-v-6c0ead0d],html:not(.dark) .hljs-template-variable[data-v-6c0ead0d],html:not(.dark) .hljs-symbol[data-v-6c0ead0d]{color:#005cc5}html:not(.dark) .hljs-section[data-v-6c0ead0d],html:not(.dark) .hljs-title[data-v-6c0ead0d],html:not(.dark) .hljs-type[data-v-6c0ead0d]{color:#6f42c1}html:not(.dark) .hljs-string[data-v-6c0ead0d],html:not(.dark) .hljs-subst[data-v-6c0ead0d],html:not(.dark) .hljs-regexp[data-v-6c0ead0d],html:not(.dark) .hljs-link[data-v-6c0ead0d],html:not(.dark) .hljs-addition[data-v-6c0ead0d],html:not(.dark) .hljs-selector-id[data-v-6c0ead0d],html:not(.dark) .hljs-selector-class[data-v-6c0ead0d]{color:#032f62}html:not(.dark) .hljs-built_in[data-v-6c0ead0d],html:not(.dark) .hljs-bullet[data-v-6c0ead0d],html:not(.dark) .hljs-code[data-v-6c0ead0d],html:not(.dark) .hljs-formula[data-v-6c0ead0d]{color:#e36209}html:not(.dark) .hljs-emphasis[data-v-6c0ead0d]{font-style:italic}html:not(.dark) .hljs-strong[data-v-6c0ead0d]{font-weight:700}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! - Theme: GitHub Dark - Description: Dark theme as seen on github.com - Author: github.com - Maintainer: @Hirse - Updated: 2021-05-15 - - Outdated base version: https://github.com/primer/github-syntax-dark - Current colors taken from GitHub's CSS -*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.dark .dark\:prose-invert[data-v-4e52743a]{--tw-prose-headings: #F3F4F6;--tw-prose-links: #76A9FA;--tw-prose-code: #D1D5DB;--tw-prose-pre-code: #D1D5DB;--tw-prose-pre-bg: rgba(0, 0, 0, .2);--tw-prose-quotes: #9CA3AF;--tw-prose-quote-borders: #4B5563}.prose h1[data-v-4e52743a],.prose h2[data-v-4e52743a],.prose h3[data-v-4e52743a],.prose h4[data-v-4e52743a],.prose h5[data-v-4e52743a],.prose h6[data-v-4e52743a]{margin-top:1.25rem;margin-bottom:.5rem;font-weight:600}.prose h1[data-v-4e52743a]{font-size:1.25rem;line-height:1.75rem}.prose h2[data-v-4e52743a]{font-size:1.125rem;line-height:1.75rem}.prose h3[data-v-4e52743a]{font-size:1rem;line-height:1.5rem}.prose p[data-v-4e52743a]{margin-top:.75rem;margin-bottom:.75rem;line-height:1.625}.prose ul[data-v-4e52743a],.prose ol[data-v-4e52743a]{margin-top:.75rem;margin-bottom:.75rem;padding-left:1.5rem}.prose li>p[data-v-4e52743a]{margin-top:.25rem;margin-bottom:.25rem}.prose code[data-v-4e52743a]:not(pre code){border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));padding:.125rem .25rem;font-family:JetBrains Mono,Consolas,monospace;font-size:.875rem;line-height:1.25rem}.prose code[data-v-4e52743a]:not(pre code):before{--tw-content: none;content:var(--tw-content)}.prose code[data-v-4e52743a]:not(pre code):after{--tw-content: none;content:var(--tw-content)}.prose code[data-v-4e52743a]:not(pre code):is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.prose pre[data-v-4e52743a]{margin-top:1rem;margin-bottom:1rem;overflow-x:auto;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));padding:1rem;--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.prose pre[data-v-4e52743a]:is(.dark *){background-color:#11182780}.prose pre code[data-v-4e52743a]{background-color:transparent;padding:0;font-size:.875rem;line-height:1.25rem}.prose blockquote[data-v-4e52743a]{margin-top:1rem;margin-bottom:1rem;border-left-width:4px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));padding-top:.25rem;padding-bottom:.25rem;padding-left:1rem;font-style:italic;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.prose blockquote[data-v-4e52743a]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.prose a[data-v-4e52743a]{overflow-wrap:break-word;--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.prose a[data-v-4e52743a]:hover{text-decoration-line:underline}.prose a[data-v-4e52743a]:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.prose[data-v-4e52743a]::-webkit-scrollbar{height:.5rem;width:.5rem}.prose[data-v-4e52743a]::-webkit-scrollbar-track{border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.prose[data-v-4e52743a]:is(.dark *)::-webkit-scrollbar-track{background-color:#37415180}.prose[data-v-4e52743a]::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity));-webkit-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.prose[data-v-4e52743a]::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.prose[data-v-4e52743a]:is(.dark *)::-webkit-scrollbar-thumb{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.prose[data-v-4e52743a]:is(.dark *)::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.prose[data-v-4e52743a]{scroll-behavior:smooth}@keyframes bounce-4e52743a{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce[data-v-4e52743a]{animation:bounce-4e52743a 1s infinite}.math[data-v-3ade7b33]{display:inline-block}.mathjax_block[data-v-3ade7b33]{display:block}.progress-bar-container[data-v-ae2d8fdf]{background-color:#f0f0f0;border-radius:4px;height:8px;overflow:hidden}.progress-bar[data-v-ae2d8fdf]{background-color:#3498db;height:100%;transition:width .3s ease}.custom-scrollbar[data-v-481e83c1]{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.5) transparent}.custom-scrollbar[data-v-481e83c1]::-webkit-scrollbar{width:8px;height:8px}.custom-scrollbar[data-v-481e83c1]::-webkit-scrollbar-track{background-color:transparent}.custom-scrollbar[data-v-481e83c1]::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-481e83c1]:is(.dark *)::-webkit-scrollbar-thumb{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-481e83c1]::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-481e83c1]:is(.dark *)::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.range-thumb[data-v-481e83c1]{margin-top:-.25rem;height:1rem;width:1rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark .range-thumb[data-v-481e83c1]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.switch-thumb[data-v-481e83c1]{position:absolute;top:.125rem;left:.125rem;height:1.25rem;width:1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.peer:checked~.switch-thumb[data-v-481e83c1]{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~div[data-v-481e83c1]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.dark .peer:checked~div[data-v-481e83c1]{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.toastItem-enter-active[data-v-46f379e5],.toastItem-leave-active[data-v-46f379e5]{transition:all .5s ease}.toastItem-enter-from[data-v-46f379e5],.toastItem-leave-to[data-v-46f379e5]{opacity:0;transform:translate(-30px)}.topbar-container[data-v-67d4295d]{position:fixed;top:0;left:0;right:0;z-index:1000}.topbar[data-v-67d4295d]{background-color:#ffffff1a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:transform .3s ease-in-out;display:flex;justify-content:center}.topbar-hidden[data-v-67d4295d]{transform:translateY(-100%)}.topbar-content[data-v-67d4295d]{display:flex;justify-content:space-between;align-items:center;max-width:1200px;width:100%}.pin-button[data-v-67d4295d]{background-color:transparent;border:none;cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center}.pin-button svg[data-v-67d4295d]{width:24px;height:24px;transition:transform .3s ease}.pin-button:hover svg[data-v-67d4295d]{transform:scale(1.2)}.placeholder[data-v-67d4295d]{height:10px}.topbar-container[data-v-67d4295d]{position:relative;width:100%}.hover-zone[data-v-67d4295d]{opacity:0}.error[data-v-67d4295d]{color:red;margin-left:1rem}.overlay[data-v-c3cec55e]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0006;z-index:1000;cursor:pointer}.card-container.scale-110[data-v-c3cec55e]{z-index:1001}.card-container[data-v-c3cec55e],.shrunk-card[data-v-c3cec55e]{transition-property:transform,background-color,border-color,color,box-shadow,background-opacity,-webkit-backdrop-filter;transition-property:transform,background-color,border-color,color,box-shadow,background-opacity,backdrop-filter;transition-property:transform,background-color,border-color,color,box-shadow,background-opacity,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:ease-in-out;transition-duration:.3s}.card-container[data-v-c3cec55e]:focus-within,.shrunk-card[data-v-c3cec55e]:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px;--tw-ring-offset-color: transparent}.card-container[data-v-c3cec55e],.shrunk-card[data-v-c3cec55e],button[data-v-c3cec55e]{outline:none}.dropdown-shadow[data-v-6c3ea3a5]{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}:root.dark .dropdown-shadow[data-v-6c3ea3a5]{box-shadow:0 4px 6px -1px #ffffff1a,0 2px 4px -1px #ffffff0f}select[data-v-721d5f23]{width:200px}body[data-v-721d5f23]{background-color:#fafafa;font-family:sans-serif}.container[data-v-721d5f23]{margin:4px auto;width:800px}.settings[data-v-721d5f23]{position:fixed;top:0;right:0;width:500px;background-color:#fff;z-index:1000;overflow-y:auto;height:100%}.slider-container[data-v-721d5f23]{margin-top:20px}.slider-value[data-v-721d5f23]{display:inline-block;margin-left:10px;color:#6b7280;font-size:14px}.small-button[data-v-721d5f23]{padding:.5rem .75rem;font-size:.875rem}.active-tab[data-v-dd0910af]{font-weight:700}.help-view[data-v-b2cccf53]{display:flex;flex-direction:column}@media (min-width: 768px){.help-view[data-v-b2cccf53]{flex-direction:row}}.left-bar[data-v-b2cccf53]{scrollbar-width:thin;scrollbar-color:#888 #f1f1f1}.left-bar[data-v-b2cccf53]::-webkit-scrollbar{width:10px}.left-bar[data-v-b2cccf53]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.left-bar[data-v-b2cccf53]::-webkit-scrollbar-thumb{background:#888;border-radius:10px;border:2px solid #f1f1f1}.left-bar[data-v-b2cccf53]::-webkit-scrollbar-thumb:hover{background:#555}.main-content[data-v-b2cccf53]{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s}.big-card[data-v-b2cccf53]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.big-card[data-v-b2cccf53]:hover{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.help-content[data-v-b2cccf53]{padding:1rem}.main-content[data-v-b2cccf53]::-webkit-scrollbar,.help-content[data-v-b2cccf53]::-webkit-scrollbar{width:12px}.main-content[data-v-b2cccf53]::-webkit-scrollbar-track,.help-content[data-v-b2cccf53]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:12px}.main-content[data-v-b2cccf53]::-webkit-scrollbar-thumb,.help-content[data-v-b2cccf53]::-webkit-scrollbar-thumb{background:#888;border-radius:12px;border:3px solid #f1f1f1}.main-content[data-v-b2cccf53]::-webkit-scrollbar-thumb:hover,.help-content[data-v-b2cccf53]::-webkit-scrollbar-thumb:hover{background:#555}@media (max-width: 768px){.left-bar[data-v-b2cccf53]{position:fixed;top:0;left:0;z-index:20;height:100vh;width:16rem;--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width: 768px){.left-bar[data-v-b2cccf53]{width:18rem;--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}.main-content[data-v-b2cccf53]{margin-left:0;padding:1.5rem}.left-bar.open[data-v-b2cccf53]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.big-card[data-v-b2cccf53]{padding:1.5rem}h1[data-v-b2cccf53]{font-size:2.25rem;line-height:2.5rem}}.folder-button[data-v-095d6dfb]{display:flex;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;border-radius:.5rem;border-width:2px;border-style:dashed;padding:1rem;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;transition-property:all;min-height:100px}.folder-button[data-v-095d6dfb]:hover{border-style:solid;--tw-bg-opacity: .5;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.folder-button span[data-v-095d6dfb]{line-height:1.2}.border-blue-500[data-v-095d6dfb]:hover{--tw-bg-opacity: 1;background-color:rgb(235 245 255 / var(--tw-bg-opacity))}.border-blue-500[data-v-095d6dfb]:hover:is(.dark *){background-color:#23387633}.border-green-500[data-v-095d6dfb]:hover{--tw-bg-opacity: 1;background-color:rgb(243 250 247 / var(--tw-bg-opacity))}.border-green-500[data-v-095d6dfb]:hover:is(.dark *){background-color:#01473733}.border-yellow-500[data-v-095d6dfb]:hover{--tw-bg-opacity: 1;background-color:rgb(253 253 234 / var(--tw-bg-opacity))}.border-yellow-500[data-v-095d6dfb]:hover:is(.dark *){background-color:#63311233}.border-purple-500[data-v-095d6dfb]:hover{--tw-bg-opacity: 1;background-color:rgb(246 245 255 / var(--tw-bg-opacity))}.border-purple-500[data-v-095d6dfb]:hover:is(.dark *){background-color:#4a1d9633}.border-red-500[data-v-095d6dfb]:hover{--tw-bg-opacity: 1;background-color:rgb(253 242 242 / var(--tw-bg-opacity))}.border-red-500[data-v-095d6dfb]:hover:is(.dark *){background-color:#771d1d33}.transition-all[data-v-095d6dfb]{transition-property:all}.duration-300[data-v-095d6dfb]{transition-duration:.3s}.input-field[data-v-29a3f94a]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-29a3f94a]:focus{border-color:var(--color-primary);outline:2px solid transparent;outline-offset:2px;--tw-ring-color: var(--color-primary) }.input-field[data-v-29a3f94a]:disabled{cursor:not-allowed;opacity:.5}.input-field[data-v-29a3f94a]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}@media (min-width: 640px){.input-field[data-v-29a3f94a]{font-size:.875rem;line-height:1.25rem}}.setting-item[data-v-3d0b320b]{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem;padding-bottom:.5rem}@media (min-width: 768px){.setting-item[data-v-3d0b320b]{flex-direction:row;align-items:center;gap:1rem}}.setting-label[data-v-3d0b320b]{display:block;width:100%;flex-shrink:0;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label[data-v-3d0b320b]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label[data-v-3d0b320b]{width:33.333333%}}@media (min-width: 1024px){.setting-label[data-v-3d0b320b]{width:25%}}.input-field[data-v-3d0b320b]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-3d0b320b]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field[data-v-3d0b320b]:disabled{opacity:.5}.input-field[data-v-3d0b320b]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field[data-v-3d0b320b]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}@media (min-width: 640px){.input-field[data-v-3d0b320b]{font-size:.875rem;line-height:1.25rem}}.toggle-item[data-v-3d0b320b]{display:flex;align-items:center;justify-content:space-between;border-radius:.5rem;padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.toggle-item[data-v-3d0b320b]:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.toggle-item[data-v-3d0b320b]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.toggle-label[data-v-3d0b320b]{margin-right:1rem;flex:1 1 0%;cursor:pointer;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.toggle-label[data-v-3d0b320b]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.toggle-description[data-v-3d0b320b]{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-description[data-v-3d0b320b]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.button-primary[data-v-3d0b320b]{cursor:pointer;border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));padding:.5rem 1rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.button-primary[data-v-3d0b320b]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary[data-v-3d0b320b]:disabled{cursor:not-allowed;opacity:.5}.button-danger[data-v-3d0b320b]{cursor:pointer;border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity));padding:.5rem 1rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.button-danger[data-v-3d0b320b]:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.button-danger[data-v-3d0b320b]:disabled{cursor:not-allowed;opacity:.5}.setting-item[data-v-52537129]{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem;padding-bottom:.5rem}@media (min-width: 768px){.setting-item[data-v-52537129]{flex-direction:row;align-items:center;gap:1rem}}.setting-label[data-v-52537129]{display:block;width:100%;flex-shrink:0;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label[data-v-52537129]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label[data-v-52537129]{width:33.333333%}}@media (min-width: 1024px){.setting-label[data-v-52537129]{width:25%}}.setting-label-inline[data-v-52537129]{margin-bottom:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:500;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.setting-label-inline[data-v-52537129]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.input-field[data-v-52537129]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-52537129]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field[data-v-52537129]:disabled{opacity:.5}.input-field[data-v-52537129]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}@media (min-width: 640px){.input-field[data-v-52537129]{font-size:.875rem;line-height:1.25rem}}.input-field-sm[data-v-52537129]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.375rem .625rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field-sm[data-v-52537129]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field-sm[data-v-52537129]:disabled{opacity:.5}.input-field-sm[data-v-52537129]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field-sm[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.range-input[data-v-52537129]{height:.5rem;width:100%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));accent-color:#1C64F2}.range-input[data-v-52537129]:disabled{opacity:.5}.range-input[data-v-52537129]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.toggle-item[data-v-52537129]{display:flex;align-items:center;justify-content:space-between;border-radius:.5rem;padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.toggle-item[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.toggle-item[data-v-52537129]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.toggle-label[data-v-52537129]{margin-right:1rem;flex:1 1 0%;cursor:pointer;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.toggle-label[data-v-52537129]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.toggle-description[data-v-52537129]{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-description[data-v-52537129]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.button-base[data-v-52537129]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-base[data-v-52537129]:disabled{opacity:.5}.button-base[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-base-sm[data-v-52537129]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base-sm[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-base-sm[data-v-52537129]:disabled{opacity:.5}.button-base-sm[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-primary[data-v-52537129]:disabled{opacity:.5}.button-primary[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.button-secondary[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-secondary[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-secondary[data-v-52537129]:disabled{opacity:.5}.button-secondary[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-secondary[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.button-secondary[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity))}.button-secondary[data-v-52537129]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.button-secondary[data-v-52537129]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.button-success[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-success[data-v-52537129]:disabled{opacity:.5}.button-success[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-success[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}.button-danger[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-danger[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-danger[data-v-52537129]:disabled{opacity:.5}.button-danger[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-danger[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.button-danger[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity))}.button-primary-sm[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary-sm[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-primary-sm[data-v-52537129]:disabled{opacity:.5}.button-primary-sm[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary-sm[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary-sm[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.button-secondary-sm[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-secondary-sm[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-secondary-sm[data-v-52537129]:disabled{opacity:.5}.button-secondary-sm[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-secondary-sm[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.button-secondary-sm[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity))}.button-secondary-sm[data-v-52537129]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.button-secondary-sm[data-v-52537129]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.button-success-sm[data-v-52537129]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success-sm[data-v-52537129]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-success-sm[data-v-52537129]:disabled{opacity:.5}.button-success-sm[data-v-52537129]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-success-sm[data-v-52537129]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success-sm[data-v-52537129]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}[data-v-4777608e]:root{--color-primary: #3b82f6;--color-primary-rgb: 59, 130, 246}.dark[data-v-4777608e]:root{--color-primary: #60a5fa;--color-primary-rgb: 96, 165, 250}.setting-item[data-v-4777608e]{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem;padding-bottom:.5rem}@media (min-width: 768px){.setting-item[data-v-4777608e]{flex-direction:row;align-items:center;gap:1rem}}.setting-label[data-v-4777608e]{display:block;width:100%;flex-shrink:0;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label[data-v-4777608e]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label[data-v-4777608e]{width:33.333333%}}@media (min-width: 1024px){.setting-label[data-v-4777608e]{width:25%}}.input-field-sm[data-v-4777608e]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.375rem .625rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field-sm[data-v-4777608e]:focus{border-color:var(--color-primary);outline:2px solid transparent;outline-offset:2px;--tw-ring-color: var(--color-primary)}.input-field-sm[data-v-4777608e]:disabled{opacity:.5}.input-field-sm[data-v-4777608e]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]{height:.5rem;width:100%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]:disabled{opacity:.5}.range-input[data-v-4777608e]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]{accent-color:var(--color-primary)}.range-input[data-v-4777608e]::-webkit-slider-thumb{height:1rem;width:1rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:9999px;--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);-webkit-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background-color:var(--color-primary)}.range-input[data-v-4777608e]::-moz-range-thumb{height:1rem;width:1rem;cursor:pointer;border-radius:9999px;border-style:none;--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);-moz-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background-color:var(--color-primary)}.range-input[data-v-4777608e]:disabled::-webkit-slider-thumb{cursor:not-allowed;--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]:disabled:is(.dark *)::-webkit-slider-thumb{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]:disabled::-moz-range-thumb{cursor:not-allowed;--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]:disabled:is(.dark *)::-moz-range-thumb{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.range-input[data-v-4777608e]:focus{outline:2px solid transparent;outline-offset:2px}.range-input[data-v-4777608e]:focus::-webkit-slider-thumb{box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(var(--color-primary-rgb),.5)}.dark .range-input[data-v-4777608e]:focus::-webkit-slider-thumb{box-shadow:0 0 0 2px #1f2937,0 0 0 4px rgba(var(--color-primary-rgb),.5)}.range-input[data-v-4777608e]:focus::-moz-range-thumb{box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(var(--color-primary-rgb),.5)}.dark .range-input[data-v-4777608e]:focus::-moz-range-thumb{box-shadow:0 0 0 2px #1f2937,0 0 0 4px rgba(var(--color-primary-rgb),.5)}.toggle-item[data-v-4777608e]{display:flex;align-items:center;justify-content:space-between;border-radius:.5rem;padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.toggle-item[data-v-4777608e]:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.toggle-item[data-v-4777608e]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.toggle-label[data-v-4777608e]{margin-right:1rem;flex:1 1 0%;cursor:pointer;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.toggle-label[data-v-4777608e]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.toggle-description[data-v-4777608e]{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-description[data-v-4777608e]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.setting-item-grid[data-v-a1a76c2e]{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));align-items:center;-moz-column-gap:1rem;column-gap:1rem;row-gap:.25rem;padding-top:.25rem;padding-bottom:.25rem}@media (min-width: 768px){.setting-item-grid[data-v-a1a76c2e]{grid-template-columns:minmax(150px,25%) 1fr}}.setting-label[data-v-a1a76c2e]{padding-right:.5rem;text-align:left;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label[data-v-a1a76c2e]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label[data-v-a1a76c2e]{text-align:right}}.setting-input-group[data-v-a1a76c2e]{display:flex;align-items:center;gap:.5rem}.input-field[data-v-a1a76c2e]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-a1a76c2e]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field[data-v-a1a76c2e]:disabled{opacity:.5}.input-field[data-v-a1a76c2e]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.input-field-sm[data-v-a1a76c2e]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.375rem .625rem;font-size:.75rem;line-height:1rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field-sm[data-v-a1a76c2e]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field-sm[data-v-a1a76c2e]:disabled{opacity:.5}.input-field-sm[data-v-a1a76c2e]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field-sm[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.toggle-item[data-v-a1a76c2e]{display:flex;align-items:center;justify-content:space-between;border-radius:.5rem;padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.toggle-item[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.toggle-item[data-v-a1a76c2e]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.toggle-label[data-v-a1a76c2e]{margin-right:1rem;flex:1 1 0%;cursor:pointer;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.toggle-label[data-v-a1a76c2e]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.toggle-description[data-v-a1a76c2e]{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-description[data-v-a1a76c2e]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.button-base[data-v-a1a76c2e]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-base[data-v-a1a76c2e]:disabled{opacity:.5}.button-base[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-base-sm[data-v-a1a76c2e]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base-sm[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-base-sm[data-v-a1a76c2e]:disabled{opacity:.5}.button-base-sm[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-primary[data-v-a1a76c2e]:disabled{opacity:.5}.button-primary[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.button-secondary[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-secondary[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-secondary[data-v-a1a76c2e]:disabled{opacity:.5}.button-secondary[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-secondary[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.button-secondary[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity))}.button-secondary[data-v-a1a76c2e]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.button-secondary[data-v-a1a76c2e]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.button-success[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-success[data-v-a1a76c2e]:disabled{opacity:.5}.button-success[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-success[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}.button-danger[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-danger[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-danger[data-v-a1a76c2e]:disabled{opacity:.5}.button-danger[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-danger[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.button-danger[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity))}.button-primary-sm[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary-sm[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-primary-sm[data-v-a1a76c2e]:disabled{opacity:.5}.button-primary-sm[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary-sm[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary-sm[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.button-secondary-sm[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-secondary-sm[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-secondary-sm[data-v-a1a76c2e]:disabled{opacity:.5}.button-secondary-sm[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-secondary-sm[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.button-secondary-sm[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity))}.button-secondary-sm[data-v-a1a76c2e]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.button-secondary-sm[data-v-a1a76c2e]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.button-success-sm[data-v-a1a76c2e]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success-sm[data-v-a1a76c2e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-success-sm[data-v-a1a76c2e]:disabled{opacity:.5}.button-success-sm[data-v-a1a76c2e]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-success-sm[data-v-a1a76c2e]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success-sm[data-v-a1a76c2e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}[data-feather][data-v-720de39c]{vertical-align:middle;width:1em;height:1em;stroke-width:2}@keyframes spin-720de39c{to{transform:rotate(360deg)}}.animate-spin[data-v-720de39c]{animation:spin-720de39c 1s linear infinite}@keyframes pulse-720de39c{50%{opacity:.5}}.animate-pulse[data-v-720de39c]{animation:pulse-720de39c 2s cubic-bezier(.4,0,.6,1) infinite}.line-clamp-3[data-v-720de39c]{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.input-field[data-v-62a84717]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-62a84717]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.input-field[data-v-62a84717]:disabled{opacity:.5}.input-field[data-v-62a84717]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.input-field[data-v-62a84717]:is(.dark *)::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.input-field[data-v-62a84717]:is(.dark *)::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.binding-entry-processing[data-v-62a84717]{opacity:.7;pointer-events:none}.bg-primary-light[data-v-62a84717]{background-color:#e0f2fe}.dark .bg-primary-dark\/20[data-v-62a84717]{background-color:#3b82f633}.border-primary-dark\/30[data-v-62a84717]{border-color:#2563eb4d}.focus\:ring-primary-dark\/50[data-v-62a84717]:focus{--tw-ring-color: rgba(37, 99, 235, .5)}.dark .fill-primary[data-v-62a84717]{fill:#3b82f6}.fill-primary[data-v-62a84717]{fill:#2563eb}.interactive-menu-container[data-v-e42afcb4]{position:relative;display:inline-block;text-align:left;--menu-trigger-bg: #F3F4F6;--menu-trigger-text: #4B5563;--menu-trigger-hover-bg: #E5E7EB;--menu-trigger-hover-text: #1F2937;--menu-trigger-focus-ring: #6875F5;--menu-dropdown-bg: #ffffff;--menu-dropdown-border: rgb(0 0 0 / 5%);--menu-dropdown-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--menu-item-text: #374151;--menu-item-hover-bg: #E5EDFF;--menu-item-hover-text: #111827;--menu-item-icon-color: #6B7280;--menu-item-icon-hover-color: #374151;--menu-item-checkmark-color: #5850EC}.dark .interactive-menu-container[data-v-e42afcb4]{--menu-trigger-bg: #374151;--menu-trigger-text: #9CA3AF;--menu-trigger-hover-bg: #4B5563;--menu-trigger-hover-text: #E5E7EB;--menu-dropdown-bg: #1F2937;--menu-dropdown-border: rgb(255 255 255 / 10%);--menu-item-text: #E5E7EB;--menu-item-hover-bg: #362F78;--menu-item-hover-text: #F3F4F6;--menu-item-icon-color: #9CA3AF;--menu-item-icon-hover-color: #E5E7EB;--menu-item-checkmark-color: #8DA2FB}.interactive-menu-trigger[data-v-e42afcb4]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;padding:.25rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1);background-color:var(--menu-trigger-bg);color:var(--menu-trigger-text);line-height:0;border:none;cursor:pointer}.interactive-menu-trigger[data-v-e42afcb4]:hover{background-color:var(--menu-trigger-hover-bg);color:var(--menu-trigger-hover-text)}.interactive-menu-trigger[data-v-e42afcb4]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px;ring-color:var(--menu-trigger-focus-ring)}.interactive-menu-trigger-icon[data-v-e42afcb4]{height:1.25rem;width:1.25rem}.interactive-menu-trigger-text[data-v-e42afcb4]{padding-left:.25rem;padding-right:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:600}.interactive-menu-dropdown[data-v-e42afcb4]{position:absolute;z-index:50;margin-top:.5rem;width:14rem;border-radius:.375rem;--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.interactive-menu-dropdown[data-v-e42afcb4]:focus{outline:2px solid transparent;outline-offset:2px}.interactive-menu-dropdown[data-v-e42afcb4]{background-color:var(--menu-dropdown-bg);ring-color:var(--menu-dropdown-border);box-shadow:var(--menu-dropdown-shadow);min-width:14rem;max-height:75vh;overflow-y:auto}.interactive-menu-list[data-v-e42afcb4]{margin:0;list-style-type:none;padding:0;padding-top:.25rem;padding-bottom:.25rem}.interactive-menu-item[data-v-e42afcb4]{display:flex;cursor:pointer;align-items:center;white-space:nowrap;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;color:var(--menu-item-text);min-height:2.25rem}.interactive-menu-item[data-v-e42afcb4]:hover,.interactive-menu-item[data-v-e42afcb4]:focus{background-color:var(--menu-item-hover-bg);color:var(--menu-item-hover-text);outline:none}.interactive-menu-item:hover .interactive-menu-item-icon-container[data-v-e42afcb4],.interactive-menu-item:focus .interactive-menu-item-icon-container[data-v-e42afcb4]{color:var(--menu-item-icon-hover-color)}.interactive-menu-item-checkmark-placeholder[data-v-e42afcb4]{margin-right:.5rem;display:flex;width:1rem;flex-shrink:0;align-items:center;justify-content:center}.interactive-menu-item-checkmark-icon[data-v-e42afcb4]{height:1rem;width:1rem;color:var(--menu-item-checkmark-color)}.interactive-menu-item-icon-container[data-v-e42afcb4]{margin-right:.5rem;display:flex;width:1rem;flex-shrink:0;align-items:center;justify-content:center;color:var(--menu-item-icon-color);transition:color .15s ease-in-out}.interactive-menu-item-icon[data-v-e42afcb4]{height:1rem;width:1rem}.interactive-menu-item-icon-text[data-v-e42afcb4]{font-size:.75rem;line-height:1rem;font-weight:700}.interactive-menu-item-icon-placeholder[data-v-e42afcb4]{display:inline-block;height:1rem;width:1rem}.interactive-menu-item-name[data-v-e42afcb4]{flex:1 1 0%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.interactive-menu-transition-enter-active[data-v-e42afcb4]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.1s;transition-timing-function:cubic-bezier(0,0,.2,1)}.interactive-menu-transition-enter-from[data-v-e42afcb4]{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:0}.interactive-menu-transition-enter-to[data-v-e42afcb4]{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:1}.interactive-menu-transition-leave-active[data-v-e42afcb4]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:75ms;transition-timing-function:cubic-bezier(.4,0,1,1)}.interactive-menu-transition-leave-from[data-v-e42afcb4]{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:1}.interactive-menu-transition-leave-to[data-v-e42afcb4]{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:0}.interactive-menu-dropdown[data-v-e42afcb4]::-webkit-scrollbar{width:6px}.interactive-menu-dropdown[data-v-e42afcb4]::-webkit-scrollbar-track{background:transparent}.interactive-menu-dropdown[data-v-e42afcb4]::-webkit-scrollbar-thumb{background-color:#9ca3af66;border-radius:3px}.dark .interactive-menu-dropdown[data-v-e42afcb4]::-webkit-scrollbar-thumb{background-color:#4b556380}.interactive-menu-dropdown[data-v-e42afcb4]{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.4) transparent}.dark .interactive-menu-dropdown[data-v-e42afcb4]{scrollbar-color:rgba(75,85,99,.5) transparent}[aria-disabled=true][data-v-1f7c2197]{cursor:not-allowed}.button-base-sm[data-v-1f7c2197]{display:inline-flex;align-items:center;justify-content:center;border-radius:.25rem;border-width:1px;border-color:transparent;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base-sm[data-v-1f7c2197]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-base-sm[data-v-1f7c2197]:disabled{opacity:.5}.button-base-sm[data-v-1f7c2197]:focus:is(.dark *){--tw-ring-offset-color: #111827 }.button-primary-sm[data-v-1f7c2197]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.25rem;border-width:1px;border-color:transparent;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary-sm[data-v-1f7c2197]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-primary-sm[data-v-1f7c2197]:disabled{opacity:.5}.button-primary-sm[data-v-1f7c2197]:focus:is(.dark *){--tw-ring-offset-color: #111827 }.button-primary-sm[data-v-1f7c2197]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary-sm[data-v-1f7c2197]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity)) }.button-success-sm[data-v-1f7c2197]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.25rem;border-width:1px;border-color:transparent;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success-sm[data-v-1f7c2197]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-success-sm[data-v-1f7c2197]:disabled{opacity:.5}.button-success-sm[data-v-1f7c2197]:focus:is(.dark *){--tw-ring-offset-color: #111827 }.button-success-sm[data-v-1f7c2197]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success-sm[data-v-1f7c2197]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity)) }.button-danger-sm[data-v-1f7c2197]{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.25rem;border-width:1px;border-color:transparent;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-danger-sm[data-v-1f7c2197]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-danger-sm[data-v-1f7c2197]:disabled{opacity:.5}.button-danger-sm[data-v-1f7c2197]:focus:is(.dark *){--tw-ring-offset-color: #111827 }.button-danger-sm[data-v-1f7c2197]:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.button-danger-sm[data-v-1f7c2197]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity)) }.button-secondary-sm[data-v-1f7c2197]{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.25rem;border-width:1px;border-color:transparent;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-secondary-sm[data-v-1f7c2197]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-secondary-sm[data-v-1f7c2197]:disabled{opacity:.5}.button-secondary-sm[data-v-1f7c2197]:focus:is(.dark *){--tw-ring-offset-color: #111827 }.button-secondary-sm[data-v-1f7c2197]:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.button-secondary-sm[data-v-1f7c2197]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity)) }.button-secondary-sm[data-v-1f7c2197]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.button-secondary-sm[data-v-1f7c2197]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}[data-feather][data-v-1f7c2197]{display:inline-block;height:1rem;width:1rem;vertical-align:middle}.fade-enter-active[data-v-f43216be],.fade-leave-active[data-v-f43216be]{transition:opacity .3s}.fade-enter[data-v-f43216be],.fade-leave-to[data-v-f43216be]{opacity:0}.input-field[data-v-8f6b5014]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-8f6b5014]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field[data-v-8f6b5014]:disabled{opacity:.5}.input-field[data-v-8f6b5014]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.input-field-sm[data-v-8f6b5014]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.375rem .625rem;font-size:.75rem;line-height:1rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field-sm[data-v-8f6b5014]:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.input-field-sm[data-v-8f6b5014]:disabled{opacity:.5}.input-field-sm[data-v-8f6b5014]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.input-field-sm[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.setting-label-inline[data-v-8f6b5014]{margin-bottom:.25rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label-inline[data-v-8f6b5014]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.button-base-sm[data-v-8f6b5014]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base-sm[data-v-8f6b5014]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-base-sm[data-v-8f6b5014]:disabled{opacity:.5}.button-base-sm[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary-sm[data-v-8f6b5014]{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-primary-sm[data-v-8f6b5014]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-primary-sm[data-v-8f6b5014]:disabled{opacity:.5}.button-primary-sm[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-primary-sm[data-v-8f6b5014]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.button-primary-sm[data-v-8f6b5014]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.button-success-sm[data-v-8f6b5014]{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-success-sm[data-v-8f6b5014]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-success-sm[data-v-8f6b5014]:disabled{opacity:.5}.button-success-sm[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-success-sm[data-v-8f6b5014]:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.button-success-sm[data-v-8f6b5014]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}.button-danger-sm[data-v-8f6b5014]{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-danger-sm[data-v-8f6b5014]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.button-danger-sm[data-v-8f6b5014]:disabled{opacity:.5}.button-danger-sm[data-v-8f6b5014]:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.button-danger-sm[data-v-8f6b5014]:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.button-danger-sm[data-v-8f6b5014]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity))}.model-grid-enter-active[data-v-8f6b5014],.model-grid-leave-active[data-v-8f6b5014]{transition:all .5s ease}.model-grid-enter-from[data-v-8f6b5014],.model-grid-leave-to[data-v-8f6b5014]{opacity:0;transform:translateY(15px)}.bg-primary-light[data-v-8f6b5014]{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}.dark .bg-primary-dark\/20[data-v-8f6b5014]:is(.dark *){background-color:#3f83f833}.border-primary-dark\/30[data-v-8f6b5014]{border-color:#3f83f84d}[data-feather].w-4[data-v-8f6b5014]{display:inline-block;vertical-align:middle}[data-feather].animate-spin[data-v-8f6b5014]{animation:spin-8f6b5014 1s linear infinite}@keyframes spin-8f6b5014{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.custom-scrollbar[data-v-84eb42ea]::-webkit-scrollbar{width:8px}.custom-scrollbar[data-v-84eb42ea]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar[data-v-84eb42ea]::-webkit-scrollbar-thumb{background-color:#9ca3af80;border-radius:4px;border:2px solid transparent;background-clip:content-box}.custom-scrollbar[data-v-84eb42ea]::-webkit-scrollbar-thumb:hover{background-color:#6b7280b3}.dark .custom-scrollbar[data-v-84eb42ea]::-webkit-scrollbar-thumb{background-color:#4b556399}.dark .custom-scrollbar[data-v-84eb42ea]::-webkit-scrollbar-thumb:hover{background-color:#374151cc}.custom-scrollbar[data-v-84eb42ea]{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.5) transparent}.dark .custom-scrollbar[data-v-84eb42ea]{scrollbar-color:rgba(75,85,99,.6) transparent}.prose[data-v-84eb42ea] :where(code):not(:where([class~=not-prose] *)):before,.prose[data-v-84eb42ea] :where(code):not(:where([class~=not-prose] *)):after{content:""}.prose[data-v-84eb42ea] :where(pre){background-color:#f3f4f6;padding:.75em 1em;border-radius:.375rem;overflow-x:auto}.dark .prose[data-v-84eb42ea] :where(pre){background-color:#374151}.prose[data-v-84eb42ea] :where(pre code){background-color:transparent;padding:0;font-size:.875em;color:inherit}.flex button [data-feather][data-v-84eb42ea],.flex .interactive-menu-trigger [data-feather][data-v-84eb42ea]{width:1rem;height:1rem;stroke-width:2}.flex button .flex [data-feather][data-v-84eb42ea]{width:.75rem;height:.75rem;margin-right:.25rem;stroke-width:2}button[title=Help] [data-feather=help-circle][data-v-84eb42ea],.interactive-menu-trigger [data-feather=more-vertical][data-v-84eb42ea]{width:1.25rem;height:1.25rem}.input-field[data-v-963fb20e]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field[data-v-963fb20e]:focus{border-color:var(--color-primary);outline:2px solid transparent;outline-offset:2px;--tw-ring-color: var(--color-primary) }.input-field[data-v-963fb20e]:disabled{opacity:.5}.input-field[data-v-963fb20e]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.button-base-sm[data-v-963fb20e]{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-base-sm[data-v-963fb20e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-base-sm[data-v-963fb20e]:disabled{opacity:.5}.button-danger-sm[data-v-963fb20e]{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;border-color:transparent;padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-danger-sm[data-v-963fb20e]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px }.button-danger-sm[data-v-963fb20e]:disabled{opacity:.5}.button-danger-sm[data-v-963fb20e]:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.button-danger-sm[data-v-963fb20e]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity)) }.setting-item[data-v-99271729]{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem;padding-bottom:.5rem}@media (min-width: 768px){.setting-item[data-v-99271729]{flex-direction:row;align-items:center;gap:1rem}}.setting-label[data-v-99271729]{display:block;width:100%;flex-shrink:0;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.setting-label[data-v-99271729]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label[data-v-99271729]{width:33.333333%}}@media (min-width: 1024px){.setting-label[data-v-99271729]{width:25%}}.input-field-sm[data-v-99271729]{display:block;width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:.375rem .625rem;font-size:.875rem;line-height:1.25rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field-sm[data-v-99271729]:focus{border-color:var(--color-primary);outline:2px solid transparent;outline-offset:2px;--tw-ring-color: var(--color-primary) }.input-field-sm[data-v-99271729]:disabled{opacity:.5}.input-field-sm[data-v-99271729]:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.range-input[data-v-99271729]{height:.5rem;width:100%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));accent-color:var(--color-primary)}.range-input[data-v-99271729]:disabled{opacity:.5}.range-input[data-v-99271729]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.toggle-item[data-v-99271729]{display:flex;align-items:center;justify-content:space-between;border-radius:.5rem;padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.toggle-item[data-v-99271729]:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.toggle-item[data-v-99271729]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.toggle-label[data-v-99271729]{margin-right:1rem;flex:1 1 0%;cursor:pointer;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.toggle-label[data-v-99271729]:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.toggle-description[data-v-99271729]{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-description[data-v-99271729]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.icon-button[data-v-9889ee74]{border-radius:9999px;padding:.375rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity));transition-duration:.15s}.icon-button[data-v-9889ee74]:active{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.icon-button[data-v-9889ee74]:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.icon-button[data-v-9889ee74]:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.icon-button[data-v-9889ee74]:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.panels-color[data-v-9889ee74]{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.panels-color[data-v-9889ee74]:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.control-buttons[data-v-2b3580ce]{position:absolute;top:0;right:0;height:100%;display:flex;align-items:center;transform:translate(100%);transition:transform .3s}.group:hover .control-buttons[data-v-2b3580ce]{transform:translate(0)}.control-buttons-inner[data-v-2b3580ce]{display:flex;gap:10px;align-items:center;background-color:#fff;padding:8px;border-radius:0 0 0 8px;box-shadow:0 2px 8px #0000001a}.json-tree[data-v-0535817b]{font-family:monospace;font-size:14px;line-height:1.5;margin-left:20px}.tree-node[data-v-0535817b]{position:relative}.node-label[data-v-0535817b]{cursor:pointer;padding:2px 0}.node-label[data-v-0535817b]:hover{background-color:#f0f0f0}.toggle-icon[data-v-0535817b]{display:inline-block;width:20px;color:#666}.node-content[data-v-0535817b]{border-left:1px dotted #ccc;margin-left:7px;padding-left:13px}.key[data-v-0535817b]{color:#881391;margin-right:5px}.value[data-v-0535817b]{padding:2px 4px}.value.string[data-v-0535817b]{color:#22863a}.value.number[data-v-0535817b]{color:#005cc5}.value.boolean[data-v-0535817b]{color:#d73a49}.value.null[data-v-0535817b]{color:#6a737d}.bracket[data-v-0535817b]{color:#444;margin-left:5px}.bracket-close[data-v-0535817b]{color:#444;margin-left:7px}.json-viewer[data-v-6fbe5047]{border:1px solid #ddd;border-radius:4px;margin:10px;background:#fff}.viewer-header[data-v-6fbe5047]{padding:8px 12px;background:#f5f5f5;cursor:pointer;border-bottom:1px solid #ddd}.viewer-header[data-v-6fbe5047]:hover{background:#eee}.toggle-icon[data-v-6fbe5047]{display:inline-block;width:20px;color:#666}.title[data-v-6fbe5047]{font-weight:700;color:#333}.viewer-content[data-v-6fbe5047]{padding:10px}.border-t-primary[data-v-2cb174d6]{border-color:#e2e8f0;border-top-color:currentColor}@keyframes spin-2cb174d6{to{transform:rotate(360deg)}}.animate-spin[data-v-2cb174d6]{animation:spin-2cb174d6 .8s linear infinite}.expand-button[data-v-1a0adb61]{margin-left:10px;margin-right:10px;background:none;border:none;padding:0;cursor:pointer}.htmljs[data-v-1a0adb61]{background:none}@keyframes fadeIn-1a0adb61{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn[data-v-1a0adb61]{animation:fadeIn-1a0adb61 .5s ease-out forwards}details[open] summary[data-v-1a0adb61]~*{animation:slideDown-1a0adb61 .3s ease-in-out}details summary[data-v-1a0adb61]::marker{display:none}details summary[data-v-1a0adb61]::-webkit-details-marker{display:none}@keyframes slideDown-1a0adb61{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.custom-scrollbar[data-v-41cc1849]::-webkit-scrollbar{width:.5rem}.custom-scrollbar[data-v-41cc1849]::-webkit-scrollbar-track{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-41cc1849]:is(.dark *)::-webkit-scrollbar-track{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-41cc1849]::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-41cc1849]:is(.dark *)::-webkit-scrollbar-thumb{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-41cc1849]::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.custom-scrollbar[data-v-41cc1849]:is(.dark *)::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}@keyframes spin-slow-385263fc{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin-slow[data-v-385263fc]{animation:spin-slow-385263fc 3s linear infinite}.personalities-hover-area[data-v-385263fc]{position:relative;padding-top:10px}.custom-scrollbar[data-v-385263fc]{scrollbar-width:thin;scrollbar-color:rgba(155,155,155,.5) transparent}.custom-scrollbar[data-v-385263fc]::-webkit-scrollbar{width:6px}.custom-scrollbar[data-v-385263fc]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar[data-v-385263fc]::-webkit-scrollbar-thumb{background-color:#9b9b9b80;border-radius:20px;border:transparent}.list-move[data-v-385263fc],.list-enter-active[data-v-385263fc],.list-leave-active[data-v-385263fc]{transition:all .5s ease}.list-enter-from[data-v-385263fc]{transform:translatey(-30px)}.list-leave-to[data-v-385263fc]{opacity:0;transform:translatey(30px)}.list-leave-active[data-v-385263fc]{position:absolute}@keyframes rolling-ball-861ce6fc{0%{transform:translate(-50px) rotate(0)}25%{transform:translate(0) rotate(90deg)}50%{transform:translate(50px) rotate(180deg)}75%{transform:translate(0) rotate(270deg)}to{transform:translate(-50px) rotate(360deg)}}@keyframes bounce-861ce6fc{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes fade-in-up-861ce6fc{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-rolling-ball[data-v-861ce6fc]{animation:rolling-ball-861ce6fc 4s infinite ease-in-out,bounce-861ce6fc 1s infinite ease-in-out}.animate-fade-in-up[data-v-861ce6fc]{animation:fade-in-up-861ce6fc 1.5s ease-out}.floating-button-container[data-v-861ce6fc]{position:fixed;bottom:30px;right:30px;z-index:9999}.floating-button[data-v-861ce6fc]{position:fixed;bottom:30px;right:30px;width:100px;height:100px;border-radius:50%;background-color:#ff4500e6;display:flex;justify-content:center;align-items:center;box-shadow:0 0 30px #ff4500cc;animation:pulse-861ce6fc 1.5s infinite,glow-861ce6fc 2s infinite,wobble-861ce6fc 3s infinite;overflow:hidden;z-index:9999;transition:all .3s ease}.floating-button[data-v-861ce6fc]:hover{transform:scale(1.2) rotate(5deg);background-color:#ff4500}.tooltip[data-v-861ce6fc]{position:absolute;background-color:#000c;color:#fff;padding:8px 12px;border-radius:8px;font-size:16px;font-weight:700;white-space:nowrap;opacity:0;transition:opacity .3s ease,transform .3s ease;pointer-events:none;top:-50px;left:50%;transform:translate(-50%) scale(.9)}.floating-button:hover .tooltip[data-v-861ce6fc]{opacity:1;transform:translate(-50%) scale(1)}@keyframes pulse-861ce6fc{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes glow-861ce6fc{0%{box-shadow:0 0 30px #ff4500cc}50%{box-shadow:0 0 60px #ff4500,0 0 90px #ff450099}to{box-shadow:0 0 30px #ff4500cc}}@keyframes wobble-861ce6fc{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.hidden[data-v-861ce6fc]{display:none}.popup-container[data-v-425d1bc4]{background-color:#fff;color:#333;border-radius:8px;box-shadow:0 4px 6px #0000001a;padding:24px;width:100%;height:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.close-button[data-v-425d1bc4]{position:absolute;top:16px;right:16px;background-color:#3490dc;color:#fff;font-weight:700;padding:8px 16px;border-radius:8px;cursor:pointer;transition:background-color .3s ease}.close-button[data-v-425d1bc4]:hover{background-color:#2779bd}.iframe-content[data-v-425d1bc4]{width:100%;height:80%;border:none;margin-bottom:16px}.checkbox-container[data-v-425d1bc4]{display:flex;align-items:center;justify-content:center}.styled-checkbox[data-v-425d1bc4]{width:24px;height:24px;accent-color:#3490dc;cursor:pointer}.checkbox-label[data-v-425d1bc4]{margin-left:8px;font-size:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fade-enter-active[data-v-425d1bc4],.fade-leave-active[data-v-425d1bc4]{transition:opacity .5s}.fade-enter[data-v-425d1bc4],.fade-leave-to[data-v-425d1bc4]{opacity:0}.glow-effect[data-v-70cef6eb]{box-shadow:0 0 5px 2px #00ffffb3;animation:glow-70cef6eb 1.5s ease-in-out infinite alternate}@keyframes glow-70cef6eb{0%{box-shadow:0 0 5px 2px #00ffffb3}to{box-shadow:0 0 20px 2px #00ffffb3}}.fixed.inset-0[data-v-6f262cbb]{background-color:#0006}.bg-white[data-v-6f262cbb]{max-width:56rem;box-shadow:0 10px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.changelog-header[data-v-6f262cbb]{display:flex;align-items:center;justify-content:space-between;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:1rem;border-top-left-radius:.5rem;border-top-right-radius:.5rem}.header-title[data-v-6f262cbb]{font-size:1.25rem;line-height:1.75rem;font-weight:600;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.close-btn[data-v-6f262cbb]{border-radius:9999px;padding:.25rem;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.close-btn[data-v-6f262cbb]:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.changelog-content[data-v-6f262cbb]{flex:1 1 0%;overflow-y:auto;padding:1.5rem;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}.changelog-content[data-v-6f262cbb] h1,.changelog-content[data-v-6f262cbb] h2,.changelog-content[data-v-6f262cbb] h3,.changelog-content[data-v-6f262cbb] h4,.changelog-content[data-v-6f262cbb] h5,.changelog-content[data-v-6f262cbb] h6{margin-bottom:.75rem;margin-top:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.changelog-content[data-v-6f262cbb] h1:first-child,.changelog-content[data-v-6f262cbb] h2:first-child,.changelog-content[data-v-6f262cbb] h3:first-child,.changelog-content[data-v-6f262cbb] h4:first-child,.changelog-content[data-v-6f262cbb] h5:first-child,.changelog-content[data-v-6f262cbb] h6:first-child{margin-top:0}.changelog-content[data-v-6f262cbb] h1{margin-bottom:1rem;border-bottom-width:1px;padding-bottom:.5rem;font-size:1.5rem;line-height:2rem}.changelog-content[data-v-6f262cbb] h2{margin-bottom:.75rem;border-bottom-width:1px;padding-bottom:.25rem;font-size:1.25rem;line-height:1.75rem}.changelog-content[data-v-6f262cbb] h3{font-size:1.125rem;line-height:1.75rem}.changelog-content[data-v-6f262cbb] h4{font-size:1rem;line-height:1.5rem}.changelog-content[data-v-6f262cbb] p{margin-bottom:1rem}.changelog-content[data-v-6f262cbb] ul,.changelog-content[data-v-6f262cbb] ol{margin-bottom:1rem;padding-left:1.5rem}.changelog-content[data-v-6f262cbb] li{margin-bottom:.25rem}.changelog-content[data-v-6f262cbb] ul{list-style-type:disc}.changelog-content[data-v-6f262cbb] ol{list-style-type:decimal}.changelog-content[data-v-6f262cbb] code{border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));padding:.125rem .25rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity));font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace}.changelog-content[data-v-6f262cbb] pre{margin-bottom:1rem;overflow-x:auto;border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:1rem;font-size:.875rem;line-height:1.25rem;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace}.changelog-content[data-v-6f262cbb] pre code{border-style:none;background-color:transparent;padding:0;font-size:.875rem;line-height:1.25rem}.changelog-content[data-v-6f262cbb] blockquote{margin-top:1rem;margin-bottom:1rem;border-left-width:4px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-style:italic;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.changelog-content[data-v-6f262cbb] a{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.changelog-content[data-v-6f262cbb] a:hover{--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity));text-decoration-line:underline}.changelog-footer[data-v-6f262cbb]{display:flex;justify-content:flex-end;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:1rem;border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.action-btn[data-v-6f262cbb]{border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));padding:.5rem 1.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.action-btn[data-v-6f262cbb]:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.action-btn[data-v-6f262cbb]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.action-btn[data-v-6f262cbb]:active{--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.personalities-container[data-v-0b856c53]{position:relative}.skills-lib-icon[data-v-0b856c53]{position:absolute;top:-2px;right:-2px;z-index:10;font-size:5px;width:2px;height:2px}.skills-lib-icon i[data-v-0b856c53]{width:2px;height:2px}@keyframes giggle-0b856c53{0%,to{transform:translate(0) rotate(0) scale(1)}25%{transform:translate(-5px) rotate(-10deg) scale(1.05)}50%{transform:translate(5px) rotate(10deg) scale(.95)}75%{transform:translate(-5px) rotate(-10deg) scale(1.05)}}.animate-giggle[data-v-0b856c53]{animation:giggle-0b856c53 1.5s infinite ease-in-out}.custom-scrollbar[data-v-0b856c53]{scrollbar-width:thin;scrollbar-color:rgba(155,155,155,.5) transparent}.custom-scrollbar[data-v-0b856c53]::-webkit-scrollbar{width:8px}.custom-scrollbar[data-v-0b856c53]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar[data-v-0b856c53]::-webkit-scrollbar-thumb{background-color:#9b9b9b80;border-radius:20px;border:transparent}@keyframes custom-pulse-0b856c53{0%,to{box-shadow:0 0 #3b82f680}50%{box-shadow:0 0 0 15px #3b82f600}}.animate-pulse[data-v-0b856c53]{animation:custom-pulse-0b856c53 2s infinite}.slide-right-enter-active[data-v-0b856c53],.slide-right-leave-active[data-v-0b856c53]{transition:transform .3s ease}.slide-right-enter[data-v-0b856c53],.slide-right-leave-to[data-v-0b856c53]{transform:translate(-100%)}.slide-left-enter-active[data-v-0b856c53],.slide-left-leave-active[data-v-0b856c53]{transition:transform .3s ease}.slide-left-enter[data-v-0b856c53],.slide-left-leave-to[data-v-0b856c53]{transform:translate(100%)}.fade-and-fly-enter-active[data-v-0b856c53]{animation:fade-and-fly-enter-0b856c53 .5s ease}.fade-and-fly-leave-active[data-v-0b856c53]{animation:fade-and-fly-leave-0b856c53 .5s ease}@keyframes fade-and-fly-enter-0b856c53{0%{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fade-and-fly-leave-0b856c53{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-20px) scale(1.2)}}.list-move[data-v-0b856c53],.list-enter-active[data-v-0b856c53],.list-leave-active[data-v-0b856c53]{transition:all .5s ease}.list-enter-from[data-v-0b856c53]{transform:translatey(-30px)}.list-leave-to[data-v-0b856c53]{opacity:0;transform:translatey(30px)}.list-leave-active[data-v-0b856c53]{position:absolute}@keyframes float-0b856c53{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.animate-float[data-v-0b856c53]{animation:float-0b856c53 linear infinite}@keyframes star-move-0b856c53{0%{transform:translate(0) rotate(0)}50%{transform:translate(20px,20px) rotate(180deg)}to{transform:translate(0) rotate(360deg)}}.animate-star[data-v-0b856c53]{animation:star-move-0b856c53 linear infinite}@keyframes fall-0b856c53{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(calc(100vh + 20px)) rotate(360deg);opacity:0}}.animate-fall[data-v-0b856c53]{animation:fall-0b856c53 linear infinite}@keyframes glow-0b856c53{0%,to{text-shadow:0 0 5px rgba(66,153,225,.5),0 0 10px rgba(66,153,225,.5)}50%{text-shadow:0 0 20px rgba(66,153,225,.8),0 0 30px rgba(66,153,225,.8)}}.animate-glow[data-v-0b856c53]{animation:glow-0b856c53 2s ease-in-out infinite}@media (prefers-color-scheme: dark){@keyframes glow-0b856c53{0%,to{text-shadow:0 0 5px rgba(147,197,253,.5),0 0 10px rgba(147,197,253,.5)}50%{text-shadow:0 0 20px rgba(147,197,253,.8),0 0 30px rgba(147,197,253,.8)}0%,to{text-shadow:0 0 5px rgba(147,197,253,.5),0 0 10px rgba(147,197,253,.5)}50%{text-shadow:0 0 20px rgba(147,197,253,.8),0 0 30px rgba(147,197,253,.8)}}}@keyframes roll-0b856c53{0%{transform:translate(-50%) rotate(0)}to{transform:translate(50%) rotate(360deg)}}.animate-roll[data-v-0b856c53]{animation:roll-0b856c53 4s linear infinite}.toolbar[data-v-0b856c53]{position:relative;width:100%}.toolbar-container[data-v-0b856c53]{display:flex;height:2.5rem;align-items:center}.toolbar-button[data-v-0b856c53]{cursor:pointer;border-style:none;background-color:transparent;padding:.5rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.toolbar-button[data-v-0b856c53]:hover{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.menu-container[data-v-0b856c53]{position:relative}.expandable-menu[data-v-0b856c53]{position:absolute;top:100%;left:.625rem;flex-direction:column;border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.menu-container:hover .expandable-menu[data-v-0b856c53],.menu-visible[data-v-0b856c53]{display:flex}.menu-item[data-v-0b856c53]{background:none;border:none;cursor:pointer;padding:8px;color:#333;transition:background-color .3s}.menu-item[data-v-0b856c53]:hover{background-color:#f0f0f0}.dot[data-v-0b856c53]{width:10px;height:10px;border-radius:50%}.dot-green[data-v-0b856c53]{background-color:green}.dot-red[data-v-0b856c53]{background-color:red}.animate-pulse[data-v-0b856c53]{animation:pulse-0b856c53 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse-0b856c53{0%,to{opacity:1}50%{opacity:.7}}.logo-container[data-v-0b856c53]{position:relative;width:48px;height:48px}.logo-image[data-v-0b856c53]{width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover}@keyframes bounce-0b856c53{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce[data-v-0b856c53]{animation:bounce-0b856c53 1s infinite}@keyframes roll-and-bounce-0b856c53{0%,to{transform:translate(0) rotate(0)}45%{transform:translate(100px) rotate(360deg)}50%{transform:translate(90px) rotate(390deg)}55%{transform:translate(100px) rotate(360deg)}95%{transform:translate(0) rotate(0)}}@keyframes spin-0b856c53{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--baklava-control-color-primary: #e28b46;--baklava-control-color-error: #d00000;--baklava-control-color-background: #2c3748;--baklava-control-color-foreground: white;--baklava-control-color-hover: #455670;--baklava-control-color-active: #556986;--baklava-control-color-disabled-foreground: #666c75;--baklava-control-border-radius: 3px;--baklava-sidebar-color-background: #1b202c;--baklava-sidebar-color-foreground: white;--baklava-node-color-background: #1b202c;--baklava-node-color-foreground: white;--baklava-node-color-hover: #e28c4677;--baklava-node-color-selected: var(--baklava-control-color-primary);--baklava-node-color-resize-handle: var(--baklava-control-color-background);--baklava-node-title-color-background: #151a24;--baklava-node-title-color-foreground: white;--baklava-group-node-title-color-background: #215636;--baklava-group-node-title-color-foreground: white;--baklava-node-interface-port-tooltip-color-foreground: var(--baklava-control-color-primary);--baklava-node-interface-port-tooltip-color-background: var(--baklava-editor-background-pattern-black);--baklava-node-border-radius: 6px;--baklava-color-connection-default: #737f96;--baklava-color-connection-allowed: #48bc79;--baklava-color-connection-forbidden: #bc4848;--baklava-editor-background-pattern-default: #202b3c;--baklava-editor-background-pattern-line: #263140;--baklava-editor-background-pattern-black: #263140;--baklava-context-menu-background: #1b202c;--baklava-context-menu-shadow: 0 0 8px rgba(0, 0, 0, .65);--baklava-toolbar-background: #1b202caa;--baklava-toolbar-foreground: white;--baklava-node-palette-background: #1b202caa;--baklava-node-palette-foreground: white;--baklava-selectionbox-color-border: var(--baklava-node-color-background);--baklava-selectionbox-color-background: var(--baklava-node-color-hover);--baklava-visual-transition: .1s linear}.baklava-button{background-color:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);transition:background-color var(--baklava-visual-transition);border:none;padding:.45em .35em;border-radius:var(--baklava-control-border-radius);font-size:inherit;cursor:pointer;overflow-x:hidden}.baklava-button:hover{background-color:var(--baklava-control-color-hover)}.baklava-button:active{background-color:var(--baklava-control-color-primary)}.baklava-button.--block{width:100%}.baklava-checkbox{display:flex;padding:.35em 0;cursor:pointer;overflow-x:hidden;align-items:center}.baklava-checkbox .__checkmark-container{display:flex;background-color:var(--baklava-control-color-background);border-radius:var(--baklava-control-border-radius);transition:background-color var(--baklava-visual-transition);width:18px;height:18px}.baklava-checkbox:hover .__checkmark-container{background-color:var(--baklava-control-color-hover)}.baklava-checkbox:active .__checkmark-container{background-color:var(--baklava-control-color-active)}.baklava-checkbox .__checkmark{stroke-dasharray:15;stroke-dashoffset:15;stroke:var(--baklava-control-color-foreground);stroke-width:2px;fill:none;transition:stroke-dashoffset var(--baklava-visual-transition)}.baklava-checkbox.--checked .__checkmark{stroke-dashoffset:0}.baklava-checkbox.--checked .__checkmark-container{background-color:var(--baklava-control-color-primary)}.baklava-checkbox .__label{margin-left:.5rem}.baklava-context-menu{color:var(--baklava-control-color-foreground);position:absolute;display:inline-block;z-index:100;background-color:var(--baklava-context-menu-background);box-shadow:var(--baklava-context-menu-shadow);border-radius:0 0 var(--baklava-control-border-radius) var(--baklava-control-border-radius);min-width:6rem;width:-moz-max-content;width:max-content}.baklava-context-menu>.item{display:flex;align-items:center;padding:.35em 1em;transition:background .05s linear;position:relative}.baklava-context-menu>.item>.__label{flex:1 1 auto}.baklava-context-menu>.item>.__submenu-icon{margin-left:.75rem}.baklava-context-menu>.item.--disabled{color:var(--baklava-control-color-hover)}.baklava-context-menu>.item:not(.--header):not(.--active):not(.--disabled):hover{background:var(--baklava-control-color-primary)}.baklava-context-menu>.item.--active{background:var(--baklava-control-color-primary)}.baklava-context-menu.--nested{left:100%;top:0}.baklava-context-menu.--flipped-x.--nested{left:unset;right:100%}.baklava-context-menu.--flipped-y.--nested{top:unset;bottom:0}.baklava-context-menu>.divider{margin:.35em 0;height:1px;background-color:var(--baklava-control-color-hover)}.baklava-icon{display:block;height:100%}.baklava-icon.--clickable{cursor:pointer;transition:color var(--baklava-visual-transition)}.baklava-icon.--clickable:hover{color:var(--baklava-control-color-primary)}.baklava-input{background-color:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);caret-color:var(--baklava-control-color-primary);border:none;border-radius:var(--baklava-control-border-radius);padding:.45em .75em;width:100%;transition:background-color var(--baklava-visual-transition);font-size:inherit;font:inherit}.baklava-input:hover{background-color:var(--baklava-control-color-hover)}.baklava-input:active{background-color:var(--baklava-control-color-active)}.baklava-input:focus-visible{outline:1px solid var(--baklava-control-color-primary)}.baklava-input[type=number]::-webkit-inner-spin-button,.baklava-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.baklava-input.--invalid{box-shadow:0 0 2px 2px var(--baklava-control-color-error)}.baklava-num-input{background:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);border-radius:var(--baklava-control-border-radius);width:100%;display:grid;grid-template-columns:20px 1fr 20px}.baklava-num-input>.__button{display:flex;flex:0 0 auto;width:20px;justify-content:center;align-items:center;transition:background var(--baklava-visual-transition);cursor:pointer}.baklava-num-input>.__button:hover{background-color:var(--baklava-control-color-hover)}.baklava-num-input>.__button:active{background-color:var(--baklava-control-color-active)}.baklava-num-input>.__button.--dec{grid-area:1/1/span 1/span 1}.baklava-num-input>.__button.--dec>svg{transform:rotate(90deg)}.baklava-num-input>.__button.--inc{grid-area:1/3/span 1/span 1}.baklava-num-input>.__button.--inc>svg{transform:rotate(-90deg)}.baklava-num-input>.__button path{stroke:var(--baklava-control-color-foreground);fill:var(--baklava-control-color-foreground)}.baklava-num-input>.__content{grid-area:1/2/span 1/span 1;display:inline-flex;cursor:pointer;max-width:100%;min-width:0;align-items:center;transition:background-color var(--baklava-visual-transition)}.baklava-num-input>.__content:hover{background-color:var(--baklava-control-color-hover)}.baklava-num-input>.__content:active{background-color:var(--baklava-control-color-active)}.baklava-num-input>.__content>.__label,.baklava-num-input>.__content>.__value{margin:.35em 0;padding:0 .5em}.baklava-num-input>.__content>.__label{flex:1;min-width:0;overflow:hidden}.baklava-num-input>.__content>.__value{text-align:right}.baklava-num-input>.__content>input{background-color:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);caret-color:var(--baklava-control-color-primary);padding:.35em;width:100%}.baklava-select{width:100%;position:relative;color:var(--baklava-control-color-foreground)}.baklava-select.--open>.__selected{border-bottom-left-radius:0;border-bottom-right-radius:0}.baklava-select.--open>.__selected>.__icon{transform:rotate(180deg)}.baklava-select>.__selected{background-color:var(--baklava-control-color-background);padding:.35em .75em;border-radius:var(--baklava-control-border-radius);transition:background var(--baklava-visual-transition);min-height:1.7em;display:flex;align-items:center;cursor:pointer}.baklava-select>.__selected:hover{background:var(--baklava-control-color-hover)}.baklava-select>.__selected:active{background:var(--baklava-control-color-active)}.baklava-select>.__selected>.__text{flex:1 0 auto;flex-basis:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.baklava-select>.__selected>.__icon{flex:0 0 auto;display:flex;justify-content:center;align-items:center;transition:transform .25s ease;width:18px;height:18px}.baklava-select>.__selected>.__icon path{stroke:var(--baklava-control-color-foreground);fill:var(--baklava-control-color-foreground)}.baklava-select>.__dropdown{position:absolute;top:100%;left:0;right:0;z-index:10;background-color:var(--baklava-context-menu-background);filter:drop-shadow(0 0 4px black);border-radius:0 0 var(--baklava-control-border-radius) var(--baklava-control-border-radius);max-height:15em;overflow-y:scroll}.baklava-select>.__dropdown::-webkit-scrollbar{width:0px;background:transparent}.baklava-select>.__dropdown>.item{padding:.35em .35em .35em 1em;transition:background .05s linear}.baklava-select>.__dropdown>.item:not(.--header):not(.--active){cursor:pointer}.baklava-select>.__dropdown>.item:not(.--header):not(.--active):hover{background:var(--baklava-control-color-hover)}.baklava-select>.__dropdown>.item.--active{background:var(--baklava-control-color-primary)}.baklava-select>.__dropdown>.item.--header{color:var(--baklava-control-color-disabled-foreground);border-bottom:1px solid var(--baklava-control-color-disabled-foreground);padding:.5em .35em .5em 1em}.baklava-slider{background:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);border-radius:var(--baklava-control-border-radius);position:relative;cursor:pointer}.baklava-slider>.__content{display:flex;position:relative}.baklava-slider>.__content>.__label,.baklava-slider>.__content>.__value{flex:1 1 auto;margin:.35em 0;padding:0 .5em;text-overflow:ellipsis}.baklava-slider>.__content>.__value{text-align:right}.baklava-slider>.__content>input{background-color:var(--baklava-control-color-background);color:var(--baklava-control-color-foreground);caret-color:var(--baklava-control-color-primary);padding:.35em;width:100%}.baklava-slider>.__slider{position:absolute;top:0;bottom:0;left:0;background-color:var(--baklava-control-color-primary);border-radius:var(--baklava-control-border-radius)}.baklava-connection{stroke:var(--baklava-color-connection-default);stroke-width:2px;fill:none}.baklava-connection.--temporary{stroke-width:4px;stroke-dasharray:5 5;stroke-dashoffset:0;animation:dash 1s linear infinite;transform:translateY(-1px)}@keyframes dash{to{stroke-dashoffset:20}}.baklava-connection.--allowed{stroke:var(--baklava-color-connection-allowed)}.baklava-connection.--forbidden{stroke:var(--baklava-color-connection-forbidden)}.baklava-minimap{position:absolute;height:15%;width:15%;min-width:150px;max-width:90%;top:20px;right:20px;z-index:900}.baklava-editor{width:100%;height:100%;position:relative;overflow:hidden;outline:none!important;font-family:Lato,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:15px;touch-action:none}.baklava-editor .background{background-color:var(--baklava-editor-background-pattern-default);background-image:linear-gradient(var(--baklava-editor-background-pattern-black) 2px,transparent 2px),linear-gradient(90deg,var(--baklava-editor-background-pattern-black) 2px,transparent 2px),linear-gradient(var(--baklava-editor-background-pattern-line) 1px,transparent 1px),linear-gradient(90deg,var(--baklava-editor-background-pattern-line) 1px,transparent 1px);background-repeat:repeat;width:100%;height:100%;pointer-events:none!important}.baklava-editor .selection-box{position:absolute;border:1px solid var(--baklava-selectionbox-color-border);background-color:var(--baklava-selectionbox-color-background);pointer-events:none;opacity:.5}.baklava-editor.--start-selection-box{cursor:crosshair}.baklava-editor *:not(input):not(textarea){user-select:none;-moz-user-select:none;-webkit-user-select:none;touch-action:none}.baklava-editor .input-user-select{user-select:auto;-moz-user-select:auto;-webkit-user-select:auto}.baklava-editor *,.baklava-editor *:after,.baklava-editor *:before{box-sizing:border-box}.baklava-editor.--temporary-connection{cursor:crosshair}.baklava-editor .connections-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none!important}.baklava-editor .node-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.baklava-editor .node-container *{pointer-events:all}.baklava-ignore-mouse *{pointer-events:none!important}.baklava-ignore-mouse .__port{pointer-events:all!important}.baklava-node-interface{padding:.25em 0;position:relative}.baklava-node-interface .__port{position:absolute;width:10px;height:10px;background:#fff;border-radius:50%;top:calc(50% - 5px);cursor:crosshair}.baklava-node-interface .__port.--selected{outline:2px var(--baklava-color-connection-default) solid;outline-offset:4px}.baklava-node-interface.--input{text-align:left;padding-left:.5em}.baklava-node-interface.--input .__port{left:-1.1em}.baklava-node-interface.--output{text-align:right;padding-right:.5em}.baklava-node-interface.--output .__port{right:-1.1em}.baklava-node-interface .__tooltip{position:absolute;left:5px;top:15px;transform:translate(-50%);background:var(--baklava-node-interface-port-tooltip-color-background);color:var(--baklava-node-interface-port-tooltip-color-foreground);padding:.25em .5em;text-align:center;z-index:2}.baklava-node-palette{position:absolute;left:0;top:60px;width:250px;height:calc(100% - 60px);z-index:3;padding:2rem;overflow-y:auto;background:var(--baklava-node-palette-background);color:var(--baklava-node-palette-foreground)}.baklava-node-palette h1{margin-top:2rem}.baklava-node.--palette{position:unset;margin:1rem 0;cursor:grab}.baklava-node.--palette:first-child{margin-top:0}.baklava-node.--palette .__title{padding:.5rem;border-radius:var(--baklava-node-border-radius)}.baklava-dragged-node{position:absolute;width:calc(250px - 4rem);height:40px;z-index:4;pointer-events:none}.baklava-node{background:var(--baklava-node-color-background);color:var(--baklava-node-color-foreground);border:1px solid transparent;border-radius:var(--baklava-node-border-radius);position:absolute;box-shadow:0 0 4px #000c;transition:border-color var(--baklava-visual-transition),box-shadow var(--baklava-visual-transition);width:var(--width)}.baklava-node:hover{border-color:var(--baklava-node-color-hover)}.baklava-node:hover .__resize-handle:after{opacity:1}.baklava-node.--selected{z-index:5;border-color:var(--baklava-node-color-selected)}.baklava-node.--dragging{box-shadow:0 0 12px #000c}.baklava-node.--dragging>.__title{cursor:grabbing}.baklava-node>.__title{display:flex;background:var(--baklava-node-title-color-background);color:var(--baklava-node-title-color-foreground);padding:.4em .75em;border-radius:var(--baklava-node-border-radius) var(--baklava-node-border-radius) 0 0;cursor:grab}.baklava-node>.__title>*:first-child{flex-grow:1}.baklava-node>.__title>.__title-label{pointer-events:none}.baklava-node>.__title>.__menu{position:relative;cursor:initial}.baklava-node[data-node-type^=__baklava_]>.__title{background:var(--baklava-group-node-title-color-background);color:var(--baklava-group-node-title-color-foreground)}.baklava-node>.__content{padding:.75em}.baklava-node>.__content.--reverse-y{display:flex;flex-direction:column-reverse}.baklava-node>.__content>div>div{margin:.5em 0}.baklava-node.--two-column>.__content{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;grid-template-areas:". ." ". ."}.baklava-node.--two-column>.__content>.__inputs{grid-row:1;grid-column:1}.baklava-node.--two-column>.__content>.__outputs{grid-row:1;grid-column:2}.baklava-node .__resize-handle{position:absolute;right:0;bottom:0;width:1rem;height:1rem;transform:translate(50%);cursor:ew-resize}.baklava-node .__resize-handle:after{content:"";position:absolute;bottom:0;left:-.5rem;width:1rem;height:1rem;opacity:0;border-bottom-right-radius:var(--baklava-node-border-radius);transition:opacity var(--baklava-visual-transition);background:linear-gradient(-45deg,transparent 10%,var(--baklava-node-color-resize-handle) 10%,var(--baklava-node-color-resize-handle) 15%,transparent 15%,transparent 30%,var(--baklava-node-color-resize-handle) 30%,var(--baklava-node-color-resize-handle) 35%,transparent 35%,transparent 50%,var(--baklava-node-color-resize-handle) 50%,var(--baklava-node-color-resize-handle) 55%,transparent 55%)}.baklava-sidebar{position:absolute;height:100%;width:25%;min-width:300px;max-width:90%;top:0;right:0;z-index:1000;background-color:var(--baklava-sidebar-color-background);color:var(--baklava-sidebar-color-foreground);box-shadow:none;overflow-x:hidden;padding:1em;transform:translate(100%);transition:transform .5s;display:flex;flex-direction:column}.baklava-sidebar.--open{transform:translate(0);box-shadow:0 0 15px #000}.baklava-sidebar .__resizer{position:absolute;left:0;top:0;height:100%;width:4px;cursor:col-resize}.baklava-sidebar .__header{display:flex;align-items:center}.baklava-sidebar .__header .__node-name{margin-left:.5rem}.baklava-sidebar .__close{font-size:2em;border:none;background:none;color:inherit;cursor:pointer}.baklava-sidebar .__interface{margin:.5em 0}.baklava-toolbar{position:absolute;left:0;top:0;width:100%;height:60px;z-index:3;padding:.5rem 2rem;background:var(--baklava-toolbar-background);color:var(--baklava-toolbar-foreground);display:flex;align-items:center}.baklava-toolbar-entry{margin-left:.5rem;margin-right:.5rem}.baklava-toolbar-button{color:var(--baklava-toolbar-foreground);background:none;border:none;transition:color var(--baklava-visual-transition)}.baklava-toolbar-button:not([disabled]){cursor:pointer}.baklava-toolbar-button:hover:not([disabled]){color:var(--baklava-control-color-primary)}.baklava-toolbar-button[disabled]{color:var(--baklava-control-color-disabled-foreground)}.slide-fade-enter-active,.slide-fade-leave-active{transition:all .1s ease-out}.slide-fade-enter-from,.slide-fade-leave-to{transform:translateY(5px);opacity:0}.fade-enter-active,.fade-leave-active{transition:opacity .1s ease-out!important}.fade-enter-from,.fade-leave-to{opacity:0}.loading-indicator[data-v-a7f0fe49]{display:flex;justify-content:center;align-items:center;height:100px;font-size:1.2em;color:#666}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(63 131 248 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(63 131 248 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,Outfit,PTSans,Roboto,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,Consolas,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.tooltip-arrow,.tooltip-arrow:before{position:absolute;width:8px;height:8px;background:inherit}.tooltip-arrow{visibility:hidden}.tooltip-arrow:before{content:"";visibility:visible;transform:rotate(45deg)}[data-tooltip-style^=light]+.tooltip>.tooltip-arrow:before{border-style:solid;border-color:#e5e7eb}[data-tooltip-style^=light]+.tooltip[data-popper-placement^=top]>.tooltip-arrow:before{border-bottom-width:1px;border-right-width:1px}[data-tooltip-style^=light]+.tooltip[data-popper-placement^=right]>.tooltip-arrow:before{border-bottom-width:1px;border-left-width:1px}[data-tooltip-style^=light]+.tooltip[data-popper-placement^=bottom]>.tooltip-arrow:before{border-top-width:1px;border-left-width:1px}[data-tooltip-style^=light]+.tooltip[data-popper-placement^=left]>.tooltip-arrow:before{border-top-width:1px;border-right-width:1px}.tooltip[data-popper-placement^=top]>.tooltip-arrow{bottom:-4px}.tooltip[data-popper-placement^=bottom]>.tooltip-arrow{top:-4px}.tooltip[data-popper-placement^=left]>.tooltip-arrow{right:-4px}.tooltip[data-popper-placement^=right]>.tooltip-arrow{left:-4px}.tooltip.invisible>.tooltip-arrow:before{visibility:hidden}[data-popper-arrow],[data-popper-arrow]:before{position:absolute;width:8px;height:8px;background:inherit}[data-popper-arrow]{visibility:hidden}[data-popper-arrow]:before{content:"";visibility:visible;transform:rotate(45deg)}[data-popper-arrow]:after{content:"";visibility:visible;transform:rotate(45deg);position:absolute;width:9px;height:9px;background:inherit}[role=tooltip]>[data-popper-arrow]:before{border-style:solid;border-color:#e5e7eb}.dark [role=tooltip]>[data-popper-arrow]:before{border-style:solid;border-color:#4b5563}[role=tooltip]>[data-popper-arrow]:after{border-style:solid;border-color:#e5e7eb}.dark [role=tooltip]>[data-popper-arrow]:after{border-style:solid;border-color:#4b5563}[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]:before{border-bottom-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]:after{border-bottom-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]:before{border-bottom-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]:after{border-bottom-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]:before{border-top-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]:after{border-top-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]:before{border-top-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]:after{border-top-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]{bottom:-5px}[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]{top:-5px}[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]{right:-5px}[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]{left:-5px}[role=tooltip].invisible>[data-popper-arrow]:before{visibility:hidden}[role=tooltip].invisible>[data-popper-arrow]:after{visibility:hidden}[type=text],[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],[multiple],textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}[type=text]:focus,[type=email]:focus,[type=url]:focus,[type=password]:focus,[type=number]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=month]:focus,[type=search]:focus,[type=tel]:focus,[type=time]:focus,[type=week]:focus,[multiple]:focus,textarea:focus,select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: #1C64F2;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#1c64f2}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em}select:not([size]){background-image:url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 10 6'%3e %3cpath stroke='%236B7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m1 1 4 4 4-4'/%3e %3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:.75em .75em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple]{background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#1c64f2;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: #1C64F2;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked,.dark [type=checkbox]:checked,.dark [type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:.55em .55em;background-position:center;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 12'%3e %3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M1 5.917 5.724 10.5 15 1.5'/%3e %3c/svg%3e");background-repeat:no-repeat;background-size:.55em .55em;-webkit-print-color-adjust:exact;print-color-adjust:exact}[type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");background-size:1em 1em}.dark [type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");background-size:1em 1em}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 12'%3e %3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M1 5.917 5.724 10.5 15 1.5'/%3e %3c/svg%3e");background-color:currentColor;border-color:transparent;background-position:center;background-repeat:no-repeat;background-size:.55em .55em;-webkit-print-color-adjust:exact;print-color-adjust:exact}[type=checkbox]:indeterminate:hover,[type=checkbox]:indeterminate:focus{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px auto inherit}input[type=file]::file-selector-button{color:#fff;background:#1f2937;border:0;font-weight:500;font-size:.875rem;cursor:pointer;padding:.625rem 1rem .625rem 2rem;margin-inline-start:-1rem;margin-inline-end:1rem}input[type=file]::file-selector-button:hover{background:#374151}.dark input[type=file]::file-selector-button{color:#fff;background:#4b5563}.dark input[type=file]::file-selector-button:hover{background:#6b7280}input[type=range]::-webkit-slider-thumb{height:1.25rem;width:1.25rem;background:#1c64f2;border-radius:9999px;border:0;appearance:none;-moz-appearance:none;-webkit-appearance:none;cursor:pointer}input[type=range]:disabled::-webkit-slider-thumb{background:#9ca3af}.dark input[type=range]:disabled::-webkit-slider-thumb{background:#6b7280}input[type=range]:focus::-webkit-slider-thumb{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1px;--tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity))}input[type=range]::-moz-range-thumb{height:1.25rem;width:1.25rem;background:#1c64f2;border-radius:9999px;border:0;appearance:none;-moz-appearance:none;-webkit-appearance:none;cursor:pointer}input[type=range]:disabled::-moz-range-thumb{background:#9ca3af}.dark input[type=range]:disabled::-moz-range-thumb{background:#6b7280}input[type=range]::-moz-range-progress{background:#3f83f8}input[type=range]::-ms-fill-lower{background:#3f83f8}.toggle-bg:after{content:"";position:absolute;top:.125rem;left:.125rem;background:#fff;border-color:#d1d5db;border-width:1px;border-radius:9999px;height:1.25rem;width:1.25rem;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-duration:.15s;box-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color)}input:checked+.toggle-bg:after{transform:translate(100%);border-color:#fff}input:checked+.toggle-bg{background:#1c64f2;border-color:#1c64f2}*{scrollbar-color:initial;scrollbar-width:initial}body{min-height:100vh;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #e0eaff var(--tw-gradient-from-position);--tw-gradient-to: rgb(224 234 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #f0e6ff var(--tw-gradient-to-position)}body:is(.dark *){background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #0f2647 var(--tw-gradient-from-position);--tw-gradient-to: rgb(15 38 71 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #1e1b4b var(--tw-gradient-to-position)}html{scroll-behavior:smooth}body{font-family:Roboto,sans-serif}.\!container{width:100%!important;margin-right:auto!important;margin-left:auto!important;padding-right:2rem!important;padding-left:2rem!important}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.context-menu{position:absolute;z-index:1000;min-width:150px;border-radius:0;border-width:1px;--tw-border-opacity: 1;border-color:rgb(14 159 110 / var(--tw-border-opacity));background-color:rgb(1 71 55 / var(--tw-bg-opacity));--tw-bg-opacity: .9;padding-top:.5rem;padding-bottom:.5rem;font-family:JetBrains Mono,Consolas,monospace;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-shadow-color: rgb(14 159 110 / .5);--tw-shadow: var(--tw-shadow-colored)}.context-menu:is(.dark *){--tw-border-opacity: 1;border-color:rgb(49 196 141 / var(--tw-border-opacity));background-color:rgb(5 46 22 / var(--tw-bg-opacity));--tw-bg-opacity: .9;--tw-shadow-color: rgb(49 196 141 / .5);--tw-shadow: var(--tw-shadow-colored)}.context-menu:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-10;background-image:linear-gradient(to bottom,var(--tw-gradient-stops));--tw-gradient-from: rgb(14 159 110 / .1) var(--tw-gradient-from-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(14 159 110 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(14 159 110 / .05) var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: transparent var(--tw-gradient-to-position);background-size:100% 1000px;opacity:.3;--tw-content: "";content:var(--tw-content)}.setting-item{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding-top:.5rem;padding-bottom:.5rem}@media (min-width: 768px){.setting-item{flex-direction:row;align-items:center;gap:1rem}}.setting-label{flex-shrink:0;margin-bottom:.25rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.setting-label:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}@media (min-width: 768px){.setting-label{width:12rem}}.toggle-item{margin-top:.5rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:.5rem;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(195 221 253 / var(--tw-border-opacity));padding-bottom:.5rem;padding-top:.75rem}.toggle-item:is(.dark *){--tw-border-opacity: 1;border-color:rgb(26 86 219 / var(--tw-border-opacity))}@media (min-width: 640px){.toggle-item{flex-direction:row;align-items:center}}.toggle-label{margin-bottom:0!important;margin-right:1rem;flex-grow:1;cursor:pointer;margin-bottom:.25rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.toggle-label:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.toggle-description{margin-top:.25rem;display:block;font-size:.75rem;line-height:1rem;font-weight:400;--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.toggle-description:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}input[type=range]::-webkit-slider-thumb{height:1.25rem;width:1.25rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));-webkit-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}input[type=range]:is(.dark *)::-webkit-slider-thumb{--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}input[type=range]::-webkit-slider-thumb{margin-top:-6px}input[type=range]::-moz-range-thumb{height:1.25rem;width:1.25rem;cursor:pointer;border-radius:9999px;border-style:none;--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));-moz-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}input[type=range]:is(.dark *)::-moz-range-thumb{--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}input[type=range]::-webkit-slider-runnable-track{height:.5rem;width:100%;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}input[type=range]:is(.dark *)::-webkit-slider-runnable-track{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}input[type=range]::-moz-range-track{height:.5rem;width:100%;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}input[type=range]:is(.dark *)::-moz-range-track{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.btn-success{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));display:flex;align-items:center;border-radius:.5rem;padding:.5rem 1rem;font-weight:600;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-success:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.btn-success:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(132 225 188 / var(--tw-ring-opacity))}.btn-success:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(14 159 110 / var(--tw-bg-opacity))}.btn-success:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity))}.btn-success:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(3 84 63 / var(--tw-ring-opacity))}.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.input-sm{font-size:.875rem;line-height:1.25rem;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));padding:.5rem 1rem}.input-sm:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.input-sm:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.input-sm:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(118 169 250 / var(--tw-ring-opacity))}.range-input{height:.5rem;width:100%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.range-input:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.range-input::-webkit-slider-thumb{height:1.25rem;width:1.25rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));-webkit-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.range-input:is(.dark *)::-webkit-slider-thumb{--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}.range-input::-webkit-slider-thumb{margin-top:-6px}.range-input::-moz-range-thumb{height:1.25rem;width:1.25rem;cursor:pointer;border-radius:9999px;border-style:none;--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));-moz-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.range-input:is(.dark *)::-moz-range-thumb{--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.not-sr-only{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.-inset-1{top:-.25rem;right:-.25rem;bottom:-.25rem;left:-.25rem}.inset-0{top:0;right:0;bottom:0;left:0}.inset-y-0{top:0;bottom:0}.-bottom-0\.5{bottom:-.125rem}.-bottom-1{bottom:-.25rem}.-bottom-1\.5{bottom:-.375rem}.-bottom-2{bottom:-.5rem}.-bottom-4{bottom:-1rem}.-left-1\.5{left:-.375rem}.-right-0\.5{right:-.125rem}.-right-1{right:-.25rem}.-right-1\.5{right:-.375rem}.-top-1{top:-.25rem}.-top-1\.5{top:-.375rem}.bottom-0{bottom:0}.bottom-1\.5{bottom:.375rem}.bottom-16{bottom:4rem}.bottom-2{bottom:.5rem}.bottom-2\.5{bottom:.625rem}.bottom-20{bottom:5rem}.bottom-4{bottom:1rem}.bottom-5{bottom:1.25rem}.bottom-6{bottom:1.5rem}.bottom-8{bottom:2rem}.bottom-\[60px\]{bottom:60px}.bottom-full{bottom:100%}.left-0{left:0}.left-0\.5{left:.125rem}.left-1\/2{left:50%}.left-2{left:.5rem}.left-2\.5{left:.625rem}.left-20{left:5rem}.left-3{left:.75rem}.right-0{right:0}.right-2{right:.5rem}.right-2\.5{right:.625rem}.right-20{right:5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-0\.5{top:.125rem}.top-1{top:.25rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-20{top:5rem}.top-3{top:.75rem}.top-full{top:100%}.isolate{isolation:isolate}.isolation-auto{isolation:auto}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[1001\]{z-index:1001}.z-\[100\]{z-index:100}.col-span-2{grid-column:span 2 / span 2}.float-right{float:right}.float-left{float:left}.float-none{float:none}.clear-left{clear:left}.clear-right{clear:right}.clear-both{clear:both}.clear-none{clear:none}.-m-1{margin:-.25rem}.-m-px{margin:-1px}.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-4{margin:1rem}.-mx-1\.5{margin-left:-.375rem;margin-right:-.375rem}.-mx-5{margin-left:-1.25rem;margin-right:-1.25rem}.-my-1\.5{margin-top:-.375rem;margin-bottom:-.375rem}.mx-0{margin-left:0;margin-right:0}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.my-8{margin-top:2rem;margin-bottom:2rem}.\!mb-0{margin-bottom:0!important}.\!mt-0{margin-top:0!important}.-mb-px{margin-bottom:-1px}.-mr-1{margin-right:-.25rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0{margin-left:0}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-72{margin-left:18rem}.ml-auto{margin-left:auto}.mr-0{margin-right:0}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-0{margin-top:0}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.box-border{box-sizing:border-box}.box-content{box-sizing:content-box}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.inline-table{display:inline-table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row-group{display:table-row-group}.table-row{display:table-row}.flow-root{display:flow-root}.grid{display:grid}.inline-grid{display:inline-grid}.contents{display:contents}.list-item{display:list-item}.hidden{display:none}.h-0{height:0px}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-36{height:9rem}.h-4{height:1rem}.h-4\/5{height:80%}.h-48{height:12rem}.h-5{height:1.25rem}.h-5\/6{height:83.333333%}.h-56{height:14rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[200px\]{height:200px}.h-\[400px\]{height:400px}.h-\[70vh\]{height:70vh}.h-auto{height:auto}.h-full{height:100%}.h-modal{height:calc(100% - 2rem)}.h-px{height:1px}.h-screen{height:100vh}.max-h-0{max-height:0px}.max-h-32{max-height:8rem}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-60{max-height:15rem}.max-h-72{max-height:18rem}.max-h-80{max-height:20rem}.max-h-96{max-height:24rem}.max-h-\[400px\]{max-height:400px}.max-h-\[500px\]{max-height:500px}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.max-h-full{max-height:100%}.min-h-0{min-height:0px}.min-h-\[200px\]{min-height:200px}.min-h-\[220px\]{min-height:220px}.min-h-\[3rem\]{min-height:3rem}.min-h-\[44px\]{min-height:44px}.min-h-\[500px\]{min-height:500px}.min-h-\[80px\]{min-height:80px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-0\.5{width:.125rem}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-11\/12{width:91.666667%}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-36{width:9rem}.w-4{width:1rem}.w-4\/5{width:80%}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[15rem\]{width:15rem}.w-\[16rem\]{width:16rem}.w-\[300px\]{width:300px}.w-\[500px\]{width:500px}.w-\[95\%\]{width:95%}.w-\[this-is\\\\\]{width:this-is\\}.w-\[this-is\]{width:this-is}.w-\[weird-and-invalid\]{width:weird-and-invalid}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.min-w-0{min-width:0px}.min-w-\[24rem\]{min-width:24rem}.min-w-\[300px\]{min-width:300px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[24rem\]{max-width:24rem}.max-w-\[300px\]{max-width:300px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.\!flex-none{flex:none!important}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.grow{flex-grow:1}.table-auto{table-layout:auto}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.border-separate{border-collapse:separate}.origin-left{transform-origin:left}.origin-top-right{transform-origin:top right}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-2{--tw-translate-y: -.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\/2{--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-1\/2{--tw-translate-y: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-x-0{--tw-scale-x: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\!transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.transform,.transform-cpu{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform-gpu{transform:translate3d(var(--tw-translate-x),var(--tw-translate-y),0) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform-none{transform:none}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-help{cursor:help}.cursor-move{cursor:move}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.touch-auto{touch-action:auto}.touch-none{touch-action:none}.touch-pan-x{--tw-pan-x: pan-x;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pan-left{--tw-pan-x: pan-left;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pan-right{--tw-pan-x: pan-right;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pan-y{--tw-pan-y: pan-y;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pan-up{--tw-pan-y: pan-up;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pan-down{--tw-pan-y: pan-down;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-pinch-zoom{--tw-pinch-zoom: pinch-zoom;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.touch-manipulation{touch-action:manipulation}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.select-auto{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.resize-none{resize:none}.resize-y{resize:vertical}.resize-x{resize:horizontal}.resize{resize:both}.snap-none{scroll-snap-type:none}.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}.snap-y{scroll-snap-type:y var(--tw-scroll-snap-strictness)}.snap-both{scroll-snap-type:both var(--tw-scroll-snap-strictness)}.snap-mandatory{--tw-scroll-snap-strictness: mandatory}.snap-proximity{--tw-scroll-snap-strictness: proximity}.snap-start{scroll-snap-align:start}.snap-end{scroll-snap-align:end}.snap-center{scroll-snap-align:center}.snap-align-none{scroll-snap-align:none}.snap-normal{scroll-snap-stop:normal}.snap-always{scroll-snap-stop:always}.list-inside{list-style-position:inside}.list-outside{list-style-position:outside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.break-before-auto{-moz-column-break-before:auto;break-before:auto}.break-before-avoid{-moz-column-break-before:avoid;break-before:avoid}.break-before-all{-moz-column-break-before:all;break-before:all}.break-before-avoid-page{-moz-column-break-before:avoid;break-before:avoid-page}.break-before-page{-moz-column-break-before:page;break-before:page}.break-before-left{-moz-column-break-before:left;break-before:left}.break-before-right{-moz-column-break-before:right;break-before:right}.break-before-column{-moz-column-break-before:column;break-before:column}.break-inside-auto{-moz-column-break-inside:auto;break-inside:auto}.break-inside-avoid{-moz-column-break-inside:avoid;break-inside:avoid}.break-inside-avoid-page{break-inside:avoid-page}.break-inside-avoid-column{-moz-column-break-inside:avoid;break-inside:avoid-column}.break-after-auto{-moz-column-break-after:auto;break-after:auto}.break-after-avoid{-moz-column-break-after:avoid;break-after:avoid}.break-after-all{-moz-column-break-after:all;break-after:all}.break-after-avoid-page{-moz-column-break-after:avoid;break-after:avoid-page}.break-after-page{-moz-column-break-after:page;break-after:page}.break-after-left{-moz-column-break-after:left;break-after:left}.break-after-right{-moz-column-break-after:right;break-after:right}.break-after-column{-moz-column-break-after:column;break-after:column}.grid-flow-row{grid-auto-flow:row}.grid-flow-col{grid-auto-flow:column}.grid-flow-dense{grid-auto-flow:dense}.grid-flow-row-dense{grid-auto-flow:row dense}.grid-flow-col-dense{grid-auto-flow:column dense}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.flex-nowrap{flex-wrap:nowrap}.place-content-center{place-content:center}.place-content-start{place-content:start}.place-content-end{place-content:end}.place-content-between{place-content:space-between}.place-content-around{place-content:space-around}.place-content-evenly{place-content:space-evenly}.place-content-baseline{place-content:baseline}.place-content-stretch{place-content:stretch}.place-items-start{place-items:start}.place-items-end{place-items:end}.place-items-center{place-items:center}.place-items-baseline{place-items:baseline}.place-items-stretch{place-items:stretch}.content-center{align-content:center}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-between{align-content:space-between}.content-around{align-content:space-around}.content-evenly{align-content:space-evenly}.content-baseline{align-content:baseline}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.\!items-center{align-items:center!important}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.\!justify-start{justify-content:flex-start!important}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.justify-items-start{justify-items:start}.justify-items-end{justify-items:end}.justify-items-center{justify-items:center}.justify-items-stretch{justify-items:stretch}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-4{row-gap:1rem}.-space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-.75rem * var(--tw-space-x-reverse));margin-left:calc(-.75rem * calc(1 - var(--tw-space-x-reverse)))}.-space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-1rem * var(--tw-space-x-reverse));margin-left:calc(-1rem * calc(1 - var(--tw-space-x-reverse)))}.-space-x-px>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-1px * var(--tw-space-x-reverse));margin-left:calc(-1px * calc(1 - var(--tw-space-x-reverse)))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.space-y-reverse>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 1}.space-x-reverse>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 1}.divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-y-reverse>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 1}.divide-x-reverse>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 1}.divide-solid>:not([hidden])~:not([hidden]){border-style:solid}.divide-dashed>:not([hidden])~:not([hidden]){border-style:dashed}.divide-dotted>:not([hidden])~:not([hidden]){border-style:dotted}.divide-double>:not([hidden])~:not([hidden]){border-style:double}.divide-none>:not([hidden])~:not([hidden]){border-style:none}.divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(243 244 246 / var(--tw-divide-opacity))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity))}.place-self-auto{place-self:auto}.place-self-start{place-self:start}.place-self-end{place-self:end}.place-self-center{place-self:center}.place-self-stretch{place-self:stretch}.self-auto{align-self:auto}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.self-baseline{align-self:baseline}.justify-self-auto{justify-self:auto}.justify-self-start{justify-self:start}.justify-self-end{justify-self:end}.justify-self-center{justify-self:center}.justify-self-stretch{justify-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-clip{overflow:clip}.overflow-visible{overflow:visible}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.overflow-x-clip{overflow-x:clip}.overflow-y-clip{overflow-y:clip}.overflow-x-visible{overflow-x:visible}.overflow-y-visible{overflow-y:visible}.overflow-x-scroll{overflow-x:scroll}.overflow-y-scroll{overflow-y:scroll}.overscroll-auto{overscroll-behavior:auto}.overscroll-contain{overscroll-behavior:contain}.overscroll-none{overscroll-behavior:none}.overscroll-y-auto{overscroll-behavior-y:auto}.overscroll-y-contain{overscroll-behavior-y:contain}.overscroll-y-none{overscroll-behavior-y:none}.overscroll-x-auto{overscroll-behavior-x:auto}.overscroll-x-contain{overscroll-behavior-x:contain}.overscroll-x-none{overscroll-behavior-x:none}.scroll-auto{scroll-behavior:auto}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overflow-ellipsis,.text-ellipsis{text-overflow:ellipsis}.text-clip{text-overflow:clip}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-normal{overflow-wrap:normal;word-break:normal}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.\!rounded-full{border-radius:9999px!important}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-md{border-bottom-right-radius:.375rem;border-bottom-left-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-l-lg{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-r-lg{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.rounded-bl{border-bottom-left-radius:.25rem}.rounded-br{border-bottom-right-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.rounded-tr{border-top-right-radius:.25rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\[3px\]{border-width:3px}.border-x{border-left-width:1px;border-right-width:1px}.border-y{border-top-width:1px;border-bottom-width:1px}.\!border-t-0{border-top-width:0px!important}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-t-0{border-top-width:0px}.border-t-2{border-top-width:2px}.border-t-4{border-top-width:4px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-dotted{border-style:dotted}.border-double{border-style:double}.border-hidden{border-style:hidden}.border-none{border-style:none}.border-bg-dark{border-color:var(--color-bg-dark)}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(195 221 253 / var(--tw-border-opacity))}.border-blue-300{--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity))}.border-blue-700{--tw-border-opacity: 1;border-color:rgb(26 86 219 / var(--tw-border-opacity))}.border-current{border-color:currentColor}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.border-gray-200\/30{border-color:#e5e7eb4d}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity))}.border-green-500{--tw-border-opacity: 1;border-color:rgb(14 159 110 / var(--tw-border-opacity))}.border-green-600{--tw-border-opacity: 1;border-color:rgb(5 122 85 / var(--tw-border-opacity))}.border-green-700{--tw-border-opacity: 1;border-color:rgb(4 108 78 / var(--tw-border-opacity))}.border-orange-300{--tw-border-opacity: 1;border-color:rgb(253 186 140 / var(--tw-border-opacity))}.border-pink-600{--tw-border-opacity: 1;border-color:rgb(214 31 105 / var(--tw-border-opacity))}.border-pink-700{--tw-border-opacity: 1;border-color:rgb(191 18 93 / var(--tw-border-opacity))}.border-primary{border-color:var(--color-primary)}.border-primary-light{border-color:var(--color-primary-light)}.border-purple-600{--tw-border-opacity: 1;border-color:rgb(126 58 242 / var(--tw-border-opacity))}.border-purple-700{--tw-border-opacity: 1;border-color:rgb(108 43 217 / var(--tw-border-opacity))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(248 180 180 / var(--tw-border-opacity))}.border-red-400{--tw-border-opacity: 1;border-color:rgb(249 128 128 / var(--tw-border-opacity))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(240 82 82 / var(--tw-border-opacity))}.border-red-600{--tw-border-opacity: 1;border-color:rgb(224 36 36 / var(--tw-border-opacity))}.border-red-700{--tw-border-opacity: 1;border-color:rgb(200 30 30 / var(--tw-border-opacity))}.border-secondary{border-color:var(--color-secondary)}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}.border-yellow-400{--tw-border-opacity: 1;border-color:rgb(227 160 8 / var(--tw-border-opacity))}.border-yellow-500{--tw-border-opacity: 1;border-color:rgb(194 120 3 / var(--tw-border-opacity))}.border-l-red-500{--tw-border-opacity: 1;border-left-color:rgb(240 82 82 / var(--tw-border-opacity))}.border-t-primary{border-top-color:var(--color-primary)}.bg-\[rgb\(255\,0\,0\)\]{--tw-bg-opacity: 1;background-color:rgb(255 0 0 / var(--tw-bg-opacity))}.bg-accent{background-color:var(--color-accent)}.bg-bg-dark-tone-panel{background-color:var(--color-bg-dark-tone-panel)}.bg-bg-light{background-color:var(--color-bg-light)}.bg-bg-light-tone{background-color:var(--color-bg-light-tone)}.bg-bg-light-tone-panel{background-color:var(--color-bg-light-tone-panel)}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-black\/70{background-color:#000000b3}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}.bg-blue-200{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(235 245 255 / var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.bg-blue-700{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.bg-gray-50\/50{background-color:#f9fafb80}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(222 247 236 / var(--tw-bg-opacity))}.bg-green-200{--tw-bg-opacity: 1;background-color:rgb(188 240 218 / var(--tw-bg-opacity))}.bg-green-400{--tw-bg-opacity: 1;background-color:rgb(49 196 141 / var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(243 250 247 / var(--tw-bg-opacity))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(14 159 110 / var(--tw-bg-opacity))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity))}.bg-green-700{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(229 237 255 / var(--tw-bg-opacity))}.bg-indigo-200{--tw-bg-opacity: 1;background-color:rgb(205 219 254 / var(--tw-bg-opacity))}.bg-indigo-500{--tw-bg-opacity: 1;background-color:rgb(104 117 245 / var(--tw-bg-opacity))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(88 80 236 / var(--tw-bg-opacity))}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(254 236 220 / var(--tw-bg-opacity))}.bg-pink-100{--tw-bg-opacity: 1;background-color:rgb(252 232 243 / var(--tw-bg-opacity))}.bg-pink-200{--tw-bg-opacity: 1;background-color:rgb(250 209 232 / var(--tw-bg-opacity))}.bg-pink-700{--tw-bg-opacity: 1;background-color:rgb(191 18 93 / var(--tw-bg-opacity))}.bg-primary{background-color:var(--color-primary)}.bg-primary-light{background-color:var(--color-primary-light)}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(237 235 254 / var(--tw-bg-opacity))}.bg-purple-200{--tw-bg-opacity: 1;background-color:rgb(220 215 254 / var(--tw-bg-opacity))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(246 245 255 / var(--tw-bg-opacity))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(144 97 249 / var(--tw-bg-opacity))}.bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(126 58 242 / var(--tw-bg-opacity))}.bg-purple-700{--tw-bg-opacity: 1;background-color:rgb(108 43 217 / var(--tw-bg-opacity))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(253 232 232 / var(--tw-bg-opacity))}.bg-red-200{--tw-bg-opacity: 1;background-color:rgb(251 213 213 / var(--tw-bg-opacity))}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(249 128 128 / var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(253 242 242 / var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(240 82 82 / var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity))}.bg-red-700{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.bg-secondary{background-color:var(--color-secondary)}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-white\/30{background-color:#ffffff4d}.bg-white\/50{background-color:#ffffff80}.bg-white\/70{background-color:#ffffffb3}.bg-white\/80{background-color:#fffc}.bg-white\/95{background-color:#fffffff2}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(253 246 178 / var(--tw-bg-opacity))}.bg-yellow-200{--tw-bg-opacity: 1;background-color:rgb(252 233 106 / var(--tw-bg-opacity))}.bg-yellow-400{--tw-bg-opacity: 1;background-color:rgb(227 160 8 / var(--tw-bg-opacity))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(253 253 234 / var(--tw-bg-opacity))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(194 120 3 / var(--tw-bg-opacity))}.bg-opacity-5{--tw-bg-opacity: .05}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-60{--tw-bg-opacity: .6}.bg-opacity-70{--tw-bg-opacity: .7}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-bg-light{--tw-gradient-from: var(--color-bg-light) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #3F83F8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500\/10{--tw-gradient-from: rgb(63 131 248 / .1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-50{--tw-gradient-from: #F9FAFB var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-400{--tw-gradient-from: #31C48D var(--tw-gradient-from-position);--tw-gradient-to: rgb(49 196 141 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-500{--tw-gradient-from: #0E9F6E var(--tw-gradient-from-position);--tw-gradient-to: rgb(14 159 110 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-600{--tw-gradient-from: #5850EC var(--tw-gradient-from-position);--tw-gradient-to: rgb(88 80 236 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-lime-500{--tw-gradient-from: #84cc16 var(--tw-gradient-from-position);--tw-gradient-to: rgb(132 204 22 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from: #E74694 var(--tw-gradient-from-position);--tw-gradient-to: rgb(231 70 148 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from: #9061F9 var(--tw-gradient-from-position);--tw-gradient-to: rgb(144 97 249 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-600{--tw-gradient-from: #7E3AF2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 58 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-200{--tw-gradient-from: #FBD5D5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(251 213 213 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #F05252 var(--tw-gradient-from-position);--tw-gradient-to: rgb(240 82 82 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-teal-200{--tw-gradient-from: #AFECEF var(--tw-gradient-from-position);--tw-gradient-to: rgb(175 236 239 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-teal-300{--tw-gradient-from: #7EDCE2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 220 226 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-teal-500{--tw-gradient-from: #0694A2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 148 162 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-5\%{--tw-gradient-from-position: 5%}.via-bg-light{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--color-bg-light) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-blue-600{--tw-gradient-to: rgb(28 100 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #1C64F2 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-cyan-600{--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #0891b2 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-green-600{--tw-gradient-to: rgb(5 122 85 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #057A55 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-lime-600{--tw-gradient-to: rgb(101 163 13 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #65a30d var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-pink-600{--tw-gradient-to: rgb(214 31 105 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #D61F69 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-600{--tw-gradient-to: rgb(126 58 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #7E3AF2 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-red-300{--tw-gradient-to: rgb(248 180 180 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #F8B4B4 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-red-600{--tw-gradient-to: rgb(224 36 36 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #E02424 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-teal-600{--tw-gradient-to: rgb(4 116 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #047481 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-10\%{--tw-gradient-via-position: 10%}.to-blue-100{--tw-gradient-to: #E1EFFE var(--tw-gradient-to-position)}.to-blue-500{--tw-gradient-to: #3F83F8 var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to: #1C64F2 var(--tw-gradient-to-position)}.to-blue-700{--tw-gradient-to: #1A56DB var(--tw-gradient-to-position)}.to-cyan-700{--tw-gradient-to: #0e7490 var(--tw-gradient-to-position)}.to-green-700{--tw-gradient-to: #046C4E var(--tw-gradient-to-position)}.to-lime-200{--tw-gradient-to: #d9f99d var(--tw-gradient-to-position)}.to-lime-300{--tw-gradient-to: #bef264 var(--tw-gradient-to-position)}.to-lime-700{--tw-gradient-to: #4d7c0f var(--tw-gradient-to-position)}.to-orange-400{--tw-gradient-to: #FF8A4C var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #E74694 var(--tw-gradient-to-position)}.to-pink-700{--tw-gradient-to: #BF125D var(--tw-gradient-to-position)}.to-purple-500\/10{--tw-gradient-to: rgb(144 97 249 / .1) var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #7E3AF2 var(--tw-gradient-to-position)}.to-purple-700{--tw-gradient-to: #6C2BD9 var(--tw-gradient-to-position)}.to-red-700{--tw-gradient-to: #C81E1E var(--tw-gradient-to-position)}.to-teal-700{--tw-gradient-to: #036672 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-yellow-200{--tw-gradient-to: #FCE96A var(--tw-gradient-to-position)}.to-100\%{--tw-gradient-to-position: 100%}.decoration-slice{-webkit-box-decoration-break:slice;box-decoration-break:slice}.decoration-clone{-webkit-box-decoration-break:clone;box-decoration-break:clone}.box-decoration-slice{-webkit-box-decoration-break:slice;box-decoration-break:slice}.box-decoration-clone{-webkit-box-decoration-break:clone;box-decoration-break:clone}.bg-fixed{background-attachment:fixed}.bg-local{background-attachment:local}.bg-scroll{background-attachment:scroll}.bg-clip-border{background-clip:border-box}.bg-clip-padding{background-clip:padding-box}.bg-clip-content{background-clip:content-box}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-repeat{background-repeat:repeat}.bg-no-repeat{background-repeat:no-repeat}.bg-repeat-x{background-repeat:repeat-x}.bg-repeat-y{background-repeat:repeat-y}.bg-repeat-round{background-repeat:round}.bg-repeat-space{background-repeat:space}.bg-origin-border{background-origin:border-box}.bg-origin-padding{background-origin:padding-box}.bg-origin-content{background-origin:content-box}.fill-blue-500{fill:#3f83f8}.fill-blue-600{fill:#1c64f2}.fill-current{fill:currentColor}.fill-gray-300{fill:#d1d5db}.fill-gray-600{fill:#4b5563}.fill-green-500{fill:#0e9f6e}.fill-pink-600{fill:#d61f69}.fill-primary{fill:var(--color-primary)}.fill-purple-600{fill:#7e3af2}.fill-red-600{fill:#e02424}.fill-secondary{fill:var(--color-secondary)}.fill-white{fill:#fff}.fill-yellow-400{fill:#e3a008}.stroke-current{stroke:currentColor}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.object-fill{-o-object-fit:fill;object-fit:fill}.object-none{-o-object-fit:none;object-fit:none}.object-scale-down{-o-object-fit:scale-down;object-fit:scale-down}.\!p-1{padding:.25rem!important}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.\!pt-0{padding-top:0!important}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-80{padding-bottom:20rem}.pl-10{padding-left:2.5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pl-6{padding-left:1.5rem}.pr-10{padding-right:2.5rem}.pr-2{padding-right:.5rem}.pr-24{padding-right:6rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-12{padding-top:3rem}.pt-16{padding-top:4rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.text-start{text-align:start}.text-end{text-align:end}.align-baseline{vertical-align:baseline}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.align-text-top{vertical-align:text-top}.align-text-bottom{vertical-align:text-bottom}.align-sub{vertical-align:sub}.align-super{vertical-align:super}.font-mono{font-family:JetBrains Mono,Consolas,monospace}.font-sans{font-family:Inter,Outfit,PTSans,Roboto,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.font-thin{font-weight:100}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.italic{font-style:italic}.not-italic{font-style:normal}.normal-nums{font-variant-numeric:normal}.ordinal{--tw-ordinal: ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.slashed-zero{--tw-slashed-zero: slashed-zero;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.lining-nums{--tw-numeric-figure: lining-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.oldstyle-nums{--tw-numeric-figure: oldstyle-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.proportional-nums{--tw-numeric-spacing: proportional-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.diagonal-fractions{--tw-numeric-fraction: diagonal-fractions;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.stacked-fractions{--tw-numeric-fraction: stacked-fractions;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-6{line-height:1.5rem}.leading-9{line-height:2.25rem}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-\[\#336699\]\/\[\.35\]{color:#33669959}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-blue-100{--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}.text-blue-300{--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.text-blue-400{--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.text-blue-500{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.text-blue-700{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}.text-blue-900{--tw-text-opacity: 1;color:rgb(35 56 118 / var(--tw-text-opacity))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.text-green-200{--tw-text-opacity: 1;color:rgb(188 240 218 / var(--tw-text-opacity))}.text-green-500{--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.text-green-600{--tw-text-opacity: 1;color:rgb(5 122 85 / var(--tw-text-opacity))}.text-green-700{--tw-text-opacity: 1;color:rgb(4 108 78 / var(--tw-text-opacity))}.text-green-800{--tw-text-opacity: 1;color:rgb(3 84 63 / var(--tw-text-opacity))}.text-green-900{--tw-text-opacity: 1;color:rgb(1 71 55 / var(--tw-text-opacity))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(104 117 245 / var(--tw-text-opacity))}.text-indigo-700{--tw-text-opacity: 1;color:rgb(81 69 205 / var(--tw-text-opacity))}.text-indigo-800{--tw-text-opacity: 1;color:rgb(66 56 157 / var(--tw-text-opacity))}.text-indigo-900{--tw-text-opacity: 1;color:rgb(54 47 120 / var(--tw-text-opacity))}.text-light-text-panel{color:var(--color-light-text-panel)}.text-orange-200{--tw-text-opacity: 1;color:rgb(252 217 189 / var(--tw-text-opacity))}.text-orange-500{--tw-text-opacity: 1;color:rgb(255 90 31 / var(--tw-text-opacity))}.text-orange-600{--tw-text-opacity: 1;color:rgb(208 56 1 / var(--tw-text-opacity))}.text-pink-500{--tw-text-opacity: 1;color:rgb(231 70 148 / var(--tw-text-opacity))}.text-pink-600{--tw-text-opacity: 1;color:rgb(214 31 105 / var(--tw-text-opacity))}.text-pink-700{--tw-text-opacity: 1;color:rgb(191 18 93 / var(--tw-text-opacity))}.text-pink-800{--tw-text-opacity: 1;color:rgb(153 21 75 / var(--tw-text-opacity))}.text-pink-900{--tw-text-opacity: 1;color:rgb(117 26 61 / var(--tw-text-opacity))}.text-primary{color:var(--color-primary)}.text-purple-500{--tw-text-opacity: 1;color:rgb(144 97 249 / var(--tw-text-opacity))}.text-purple-600{--tw-text-opacity: 1;color:rgb(126 58 242 / var(--tw-text-opacity))}.text-purple-700{--tw-text-opacity: 1;color:rgb(108 43 217 / var(--tw-text-opacity))}.text-purple-800{--tw-text-opacity: 1;color:rgb(85 33 181 / var(--tw-text-opacity))}.text-purple-900{--tw-text-opacity: 1;color:rgb(74 29 150 / var(--tw-text-opacity))}.text-red-100{--tw-text-opacity: 1;color:rgb(253 232 232 / var(--tw-text-opacity))}.text-red-200{--tw-text-opacity: 1;color:rgb(251 213 213 / var(--tw-text-opacity))}.text-red-400{--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}.text-red-500{--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.text-red-600{--tw-text-opacity: 1;color:rgb(224 36 36 / var(--tw-text-opacity))}.text-red-700{--tw-text-opacity: 1;color:rgb(200 30 30 / var(--tw-text-opacity))}.text-red-800{--tw-text-opacity: 1;color:rgb(155 28 28 / var(--tw-text-opacity))}.text-red-900{--tw-text-opacity: 1;color:rgb(119 29 29 / var(--tw-text-opacity))}.text-secondary{color:var(--color-secondary)}.text-slate-50{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.text-slate-950{--tw-text-opacity: 1;color:rgb(2 6 23 / var(--tw-text-opacity))}.text-teal-500{--tw-text-opacity: 1;color:rgb(6 148 162 / var(--tw-text-opacity))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(227 160 8 / var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(194 120 3 / var(--tw-text-opacity))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(159 88 10 / var(--tw-text-opacity))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(142 75 16 / var(--tw-text-opacity))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(114 59 19 / var(--tw-text-opacity))}.text-yellow-900{--tw-text-opacity: 1;color:rgb(99 49 18 / var(--tw-text-opacity))}.text-opacity-95{--tw-text-opacity: .95}.underline{text-decoration-line:underline}.overline{text-decoration-line:overline}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.decoration-solid{text-decoration-style:solid}.decoration-double{text-decoration-style:double}.decoration-dotted{text-decoration-style:dotted}.decoration-dashed{text-decoration-style:dashed}.decoration-wavy{text-decoration-style:wavy}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.accent-blue-600{accent-color:#1C64F2}.accent-primary{accent-color:var(--color-primary)}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.bg-blend-normal{background-blend-mode:normal}.bg-blend-multiply{background-blend-mode:multiply}.bg-blend-screen{background-blend-mode:screen}.bg-blend-overlay{background-blend-mode:overlay}.bg-blend-darken{background-blend-mode:darken}.bg-blend-lighten{background-blend-mode:lighten}.bg-blend-color-dodge{background-blend-mode:color-dodge}.bg-blend-color-burn{background-blend-mode:color-burn}.bg-blend-hard-light{background-blend-mode:hard-light}.bg-blend-soft-light{background-blend-mode:soft-light}.bg-blend-difference{background-blend-mode:difference}.bg-blend-exclusion{background-blend-mode:exclusion}.bg-blend-hue{background-blend-mode:hue}.bg-blend-saturation{background-blend-mode:saturation}.bg-blend-color{background-blend-mode:color}.bg-blend-luminosity{background-blend-mode:luminosity}.mix-blend-normal{mix-blend-mode:normal}.mix-blend-multiply{mix-blend-mode:multiply}.mix-blend-screen{mix-blend-mode:screen}.mix-blend-overlay{mix-blend-mode:overlay}.mix-blend-darken{mix-blend-mode:darken}.mix-blend-lighten{mix-blend-mode:lighten}.mix-blend-color-dodge{mix-blend-mode:color-dodge}.mix-blend-color-burn{mix-blend-mode:color-burn}.mix-blend-hard-light{mix-blend-mode:hard-light}.mix-blend-soft-light{mix-blend-mode:soft-light}.mix-blend-difference{mix-blend-mode:difference}.mix-blend-exclusion{mix-blend-mode:exclusion}.mix-blend-hue{mix-blend-mode:hue}.mix-blend-saturation{mix-blend-mode:saturation}.mix-blend-color{mix-blend-mode:color}.mix-blend-luminosity{mix-blend-mode:luminosity}.mix-blend-plus-lighter{mix-blend-mode:plus-lighter}.\!shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1) !important;--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color) !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)!important}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-blue-500\/50{--tw-shadow-color: rgb(63 131 248 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-blue-800\/80{--tw-shadow-color: rgb(30 66 159 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-cyan-500\/50{--tw-shadow-color: rgb(6 182 212 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-cyan-800\/80{--tw-shadow-color: rgb(21 94 117 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-green-500\/50{--tw-shadow-color: rgb(14 159 110 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-green-800\/80{--tw-shadow-color: rgb(3 84 63 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-lime-500\/50{--tw-shadow-color: rgb(132 204 22 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-lime-800\/80{--tw-shadow-color: rgb(63 98 18 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-pink-500\/50{--tw-shadow-color: rgb(231 70 148 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-pink-800\/80{--tw-shadow-color: rgb(153 21 75 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-purple-500\/50{--tw-shadow-color: rgb(144 97 249 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-purple-800\/80{--tw-shadow-color: rgb(85 33 181 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-500\/50{--tw-shadow-color: rgb(240 82 82 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-800\/80{--tw-shadow-color: rgb(155 28 28 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-teal-500\/50{--tw-shadow-color: rgb(6 148 162 / .5);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-dashed{outline-style:dashed}.outline-dotted{outline-style:dotted}.outline-double{outline-style:double}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-inset{--tw-ring-inset: inset}.ring-black{--tw-ring-opacity: 1;--tw-ring-color: rgb(0 0 0 / var(--tw-ring-opacity))}.ring-blue-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity))}.ring-blue-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.ring-blue-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(30 66 159 / var(--tw-ring-opacity))}.ring-cyan-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(21 94 117 / var(--tw-ring-opacity))}.ring-gray-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity))}.ring-gray-600{--tw-ring-opacity: 1;--tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity))}.ring-gray-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(31 41 55 / var(--tw-ring-opacity))}.ring-green-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}.ring-green-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(3 84 63 / var(--tw-ring-opacity))}.ring-pink-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(153 21 75 / var(--tw-ring-opacity))}.ring-pink-900{--tw-ring-opacity: 1;--tw-ring-color: rgb(117 26 61 / var(--tw-ring-opacity))}.ring-primary{--tw-ring-color: var(--color-primary)}.ring-purple-800{--tw-ring-opacity: 1;--tw-ring-color: rgb(85 33 181 / var(--tw-ring-opacity))}.ring-purple-900{--tw-ring-opacity: 1;--tw-ring-color: rgb(74 29 150 / var(--tw-ring-opacity))}.ring-red-400{--tw-ring-opacity: 1;--tw-ring-color: rgb(249 128 128 / var(--tw-ring-opacity))}.ring-red-900{--tw-ring-opacity: 1;--tw-ring-color: rgb(119 29 29 / var(--tw-ring-opacity))}.ring-white{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity))}.ring-yellow-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(194 120 3 / var(--tw-ring-opacity))}.ring-opacity-5{--tw-ring-opacity: .05}.ring-offset-1{--tw-ring-offset-width: 1px}.ring-offset-2{--tw-ring-offset-width: 2px}.ring-offset-gray-800{--tw-ring-offset-color: #1F2937}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-md{--tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / .07)) drop-shadow(0 2px 2px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-sm{--tw-drop-shadow: drop-shadow(0 1px 1px rgb(0 0 0 / .05));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert: invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.sepia{--tw-sepia: sepia(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.\!filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter-none{filter:none}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-grayscale{--tw-backdrop-grayscale: grayscale(100%);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-invert{--tw-backdrop-invert: invert(100%);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-sepia{--tw-backdrop-sepia: sepia(100%);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter-none{-webkit-backdrop-filter:none;backdrop-filter:none}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-1000{transition-duration:1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.duration-75{transition-duration:75ms}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.content-\[\'this-is-also-valid\]-weirdly-enough\'\]{--tw-content: "this-is-also-valid]-weirdly-enough";content:var(--tw-content)}.scrollbar{scrollbar-width:auto;scrollbar-color:var(--scrollbar-thumb, initial) var(--scrollbar-track, initial)}.scrollbar::-webkit-scrollbar{display:block;width:var(--scrollbar-width, 16px);height:var(--scrollbar-height, 16px)}.scrollbar-thin::-webkit-scrollbar-track{background-color:var(--scrollbar-track);border-radius:var(--scrollbar-track-radius)}.scrollbar-thin::-webkit-scrollbar-track:hover{background-color:var(--scrollbar-track-hover, var(--scrollbar-track))}.scrollbar-thin::-webkit-scrollbar-track:active{background-color:var(--scrollbar-track-active, var(--scrollbar-track-hover, var(--scrollbar-track)))}.scrollbar-thin::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:var(--scrollbar-thumb-radius)}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover, var(--scrollbar-thumb))}.scrollbar-thin::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-thumb-active, var(--scrollbar-thumb-hover, var(--scrollbar-thumb)))}.scrollbar-thin::-webkit-scrollbar-corner{background-color:var(--scrollbar-corner);border-radius:var(--scrollbar-corner-radius)}.scrollbar-thin::-webkit-scrollbar-corner:hover{background-color:var(--scrollbar-corner-hover, var(--scrollbar-corner))}.scrollbar-thin::-webkit-scrollbar-corner:active{background-color:var(--scrollbar-corner-active, var(--scrollbar-corner-hover, var(--scrollbar-corner)))}.scrollbar-thin{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb, initial) var(--scrollbar-track, initial)}.scrollbar-thin::-webkit-scrollbar{display:block;width:8px;height:8px}.scrollbar-track-bg-light{--scrollbar-track: var(--color-bg-light) !important}.scrollbar-track-bg-light-tone{--scrollbar-track: var(--color-bg-light-tone) !important}.scrollbar-track-blue-100{--scrollbar-track: #E1EFFE !important}.scrollbar-track-gray-200{--scrollbar-track: #E5E7EB !important}.scrollbar-track-transparent{--scrollbar-track: transparent !important}.scrollbar-thumb-bg-light-tone{--scrollbar-thumb: var(--color-bg-light-tone) !important}.scrollbar-thumb-bg-light-tone-panel{--scrollbar-thumb: var(--color-bg-light-tone-panel) !important}.scrollbar-thumb-blue-500{--scrollbar-thumb: #3F83F8 !important}.scrollbar-thumb-gray-300{--scrollbar-thumb: #D1D5DB !important}.scrollbar-thumb-gray-400{--scrollbar-thumb: #9CA3AF !important}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.bg-status-unknown{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.bg-status-unknown:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}:root{--lollms-title: L🐠llMS;--falling-object: "";--activate-dropping-animation: 0;--lollms-welcome-short-message: Welcome to LoLLMS;--lollms-welcome-message: Embark on a journey through the realm of advanced AI with LoLLMS, your ultimate companion for intelligent conversations and multimodal interactions. Unleash the power of large language models and explore new frontiers in artificial intelligence.}.display-none{display:none}h1{margin-bottom:1.5rem;font-size:2.25rem;line-height:2.5rem;font-weight:700;--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}h1:is(.dark *){--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}@media (min-width: 768px){h1{font-size:3rem;line-height:1}}h2{margin-bottom:1rem;font-size:1.875rem;line-height:2.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}h2:is(.dark *){--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}h3{margin-bottom:.75rem;font-size:1.5rem;line-height:2rem;font-weight:500;--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}h3:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}h4{margin-bottom:.5rem;font-size:1.25rem;line-height:1.75rem;font-weight:500;--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}h4:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}h1,h2{border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity));padding-bottom:.5rem}h1:is(.dark *),h2:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity))}p{overflow-wrap:break-word;font-family:Inter,Outfit,PTSans,Roboto,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:1rem;line-height:1.5rem;line-height:1.625;letter-spacing:-.025em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}p:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}@media (min-width: 768px){p{font-size:1.125rem;line-height:1.75rem;line-height:2}}ul,ol{margin-top:1rem;margin-bottom:1rem;padding-left:1rem;padding-right:1rem;font-size:1rem;line-height:1.75rem}ul{margin-left:.5rem;list-style-type:disc}ul>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}li{position:relative;padding-left:.5rem}ol{margin-left:.5rem;list-style-type:decimal}ol>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}ul ul,ol ol,ul ol,ol ul{margin-top:.5rem;margin-bottom:0;margin-left:1.5rem}li::marker{color:#4b5563}:root{--color-primary: #4a90e2;--color-primary-light: #6ab7f1;--color-secondary: #8ab8e0;--color-accent: #3a7ca1;--color-light-text-panel: #ffffff;--color-dark-text-panel: #e0e0e0;--color-bg-light-panel: #f0faff;--color-bg-light: #ffffff;--color-bg-light-tone: #e0f0ff;--color-bg-light-code-block: #f5faff;--color-bg-light-tone-panel: #d0e0f0;--color-bg-light-discussion: #f8faff;--color-bg-light-discussion-odd: #f0faff;--color-bg-dark: #0a0a1a;--color-bg-dark-tone: #151521;--color-bg-dark-tone-panel: #1c1c2a;--color-bg-dark-code-block: #151521;--color-bg-dark-discussion: #0e0e1a;--color-bg-dark-discussion-odd: #0d0d1a}textarea,input,select{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}textarea:is(.dark *),input:is(.dark *),select:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity))}.background-color{min-height:100vh;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #E1EFFE var(--tw-gradient-from-position);--tw-gradient-to: rgb(225 239 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #CABFFD var(--tw-gradient-to-position)}.background-color:is(.dark *){--tw-gradient-from: #1E429F var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 66 159 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #4A1D96 var(--tw-gradient-to-position)}.toolbar-color{border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.toolbar-color:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.panels-color{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.panels-color:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.unicolor-panels-color{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.unicolor-panels-color:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.chatbox-color{--tw-bg-opacity: 1;background-color:rgb(235 245 255 / var(--tw-bg-opacity))}.chatbox-color:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.message{position:relative;margin:.5rem;display:flex;width:100%;flex-grow:1;flex-direction:column;flex-wrap:wrap;overflow:visible;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity));padding:1.25rem 1.25rem .75rem;font-size:1.125rem;line-height:1.75rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.message:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity))}.message{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(35 56 118 / var(--tw-text-opacity))}.message:is(.dark *){background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #233876 var(--tw-gradient-from-position);--tw-gradient-to: rgb(35 56 118 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #1E429F var(--tw-gradient-to-position);--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}.message:hover{--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.message:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.message:nth-child(2n){--tw-bg-opacity: 1;background-color:rgb(235 245 255 / var(--tw-bg-opacity))}.message:nth-child(2n):is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity))}.message:nth-child(odd){--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}.message:nth-child(odd):is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.message-header{margin-bottom:.5rem;font-size:1.25rem;line-height:1.75rem;font-weight:600}.message-content{font-size:1.125rem;line-height:1.75rem;line-height:1.625}body{min-height:100vh;--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));font-size:1rem;line-height:1.5rem}body:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity))}.discussion{margin-right:.5rem;font-size:.75rem;line-height:1rem}.discussion-hilighted{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity));font-size:.75rem;line-height:1rem}.discussion-hilighted:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.bg-gradient-welcome{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #E1EFFE var(--tw-gradient-from-position);--tw-gradient-to: rgb(225 239 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #CABFFD var(--tw-gradient-to-position)}.bg-gradient-welcome:is(.dark *){--tw-gradient-from: #1E429F var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 66 159 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #4A1D96 var(--tw-gradient-to-position)}.bg-gradient-progress{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #C3DDFD var(--tw-gradient-from-position);--tw-gradient-to: rgb(195 221 253 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #A4CAFE var(--tw-gradient-to-position)}.bg-gradient-progress:is(.dark *){--tw-gradient-from: #1A56DB var(--tw-gradient-from-position);--tw-gradient-to: rgb(26 86 219 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #1C64F2 var(--tw-gradient-to-position)}.text-gradient-title{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #1A56DB var(--tw-gradient-from-position);--tw-gradient-to: rgb(26 86 219 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #3F83F8 var(--tw-gradient-to-position);-webkit-background-clip:text;background-clip:text;color:transparent}.text-gradient-title:is(.dark *){--tw-gradient-from: #A4CAFE var(--tw-gradient-from-position);--tw-gradient-to: rgb(164 202 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #3F83F8 var(--tw-gradient-to-position)}.text-subtitle{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.text-subtitle:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.text-author{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.text-author:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.text-loading{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.text-loading:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.text-progress{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.text-progress:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.btn-primary{border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));padding:.5rem 1rem;font-weight:700;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.btn-secondary{border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity));padding:.5rem 1rem;font-weight:700;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.btn-secondary:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.card{border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:1.5rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.card:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.input{border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));padding:.5rem 1rem}.input:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.input:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.input:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(118 169 250 / var(--tw-ring-opacity))}.label{margin-bottom:.25rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.label:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.link{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.link:hover{--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}.link:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.link:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.navbar-container{border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity));--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.navbar-container:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.game-menu{position:relative;display:flex;align-items:center;justify-content:center}.text-shadow-custom{text-shadow:1px 1px 0px #e0e0e0,-1px -1px 0px #e0e0e0,1px -1px 0px #e0e0e0,-1px 1px 0px #e0e0e0}.menu-item{margin-bottom:.5rem;padding:.5rem 1rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity));transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.menu-item:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.menu-item:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}.menu-item:is(.dark *):hover{--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.menu-item.active-link{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-top-left-radius:.375rem;border-top-right-radius:.375rem;--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity));transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1);text-shadow:1px 1px 0px #e0e0e0,-1px -1px 0px #e0e0e0,1px -1px 0px #e0e0e0,-1px 1px 0px #e0e0e0}.menu-item.active-link:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.menu-item.active-link:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-text-opacity: 1;color:rgb(35 56 118 / var(--tw-text-opacity))}.menu-item.active-link:is(.dark *):hover{--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.menu-item.active-link{text-shadow:0 0 10px rgba(128,128,128,.5)}.menu-item.active-link:before{content:"";position:absolute;bottom:-5px;left:0;width:100%;height:5px;background:linear-gradient(to right,#4a90e2,#8ab8e0,#4a90e2);border-radius:10px;animation:shimmer 2s infinite}.dark .menu-item.active-link:before{background:linear-gradient(to right,#6ab7f1,#aaa,#6ab7f1)}@keyframes shimmer{0%{background-position:-100% 0}to{background-position:100% 0}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.feather-emoji{display:inline-block;margin-left:5px;animation:bounce 2s infinite}.app-card{border-radius:.75rem;border-width:1px;--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));padding:1.5rem;--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity));--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.app-card:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.app-card:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}.app-card:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}button{transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}button:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scrollbar-thin{scrollbar-width:thin;scrollbar-color:#76A9FA #C3DDFD}.dark .scrollbar-thin{scrollbar-color:#1C64F2 #1E429F}.scrollbar-thin::-webkit-scrollbar{width:.5rem}.scrollbar-thin::-webkit-scrollbar-track{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.scrollbar-thin:is(.dark *)::-webkit-scrollbar-track{--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.scrollbar-thin::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}.scrollbar-thin:is(.dark *)::-webkit-scrollbar-thumb{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.scrollbar-thin::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.scrollbar-thin:is(.dark *)::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.btn{display:flex;align-items:center;border-radius:.5rem;padding:.5rem 1rem;font-weight:600;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-primary{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.btn-primary:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.btn-primary:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity))}.btn-primary:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(28 100 242 / var(--tw-ring-opacity))}.btn-secondary{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.btn-secondary:hover{--tw-bg-opacity: 1;background-color:rgb(164 202 254 / var(--tw-bg-opacity))}.btn-secondary:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(195 221 253 / var(--tw-ring-opacity))}.btn-secondary:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.btn-secondary:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.btn-secondary:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(28 100 242 / var(--tw-ring-opacity))}.search-input{width:100%;border-bottom-width:2px;--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity));background-color:transparent;padding:.5rem 1rem .5rem 2.5rem;--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.search-input:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px}.search-input:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity));--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}.search-input:focus:is(.dark *){--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.scrollbar::-webkit-scrollbar-track{background-color:var(--scrollbar-track);border-radius:var(--scrollbar-track-radius)}.scrollbar::-webkit-scrollbar-track:hover{background-color:var(--scrollbar-track-hover, var(--scrollbar-track))}.scrollbar::-webkit-scrollbar-track:active{background-color:var(--scrollbar-track-active, var(--scrollbar-track-hover, var(--scrollbar-track)))}.scrollbar::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:var(--scrollbar-thumb-radius)}.scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover, var(--scrollbar-thumb))}.scrollbar::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-thumb-active, var(--scrollbar-thumb-hover, var(--scrollbar-thumb)))}.scrollbar::-webkit-scrollbar-corner{background-color:var(--scrollbar-corner);border-radius:var(--scrollbar-corner-radius)}.scrollbar::-webkit-scrollbar-corner:hover{background-color:var(--scrollbar-corner-hover, var(--scrollbar-corner))}.scrollbar::-webkit-scrollbar-corner:active{background-color:var(--scrollbar-corner-active, var(--scrollbar-corner-hover, var(--scrollbar-corner)))}.scrollbar{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb, initial) var(--scrollbar-track, initial)}.scrollbar::-webkit-scrollbar{display:block;width:8px;height:8px}.scrollbar{--scrollbar-track: #C3DDFD;--scrollbar-thumb: #76A9FA;scrollbar-width:thin;scrollbar-color:#76A9FA #C3DDFD}.dark .scrollbar{scrollbar-color:#1C64F2 #1E429F}.scrollbar::-webkit-scrollbar{width:.5rem}.scrollbar::-webkit-scrollbar-track{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.scrollbar:is(.dark *)::-webkit-scrollbar-track{--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.scrollbar::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(118 169 250 / var(--tw-bg-opacity))}.scrollbar:is(.dark *)::-webkit-scrollbar-thumb{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.scrollbar::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.scrollbar:is(.dark *)::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.scrollbar{--scrollbar-thumb-hover: #3F83F8}.scrollbar:is(.dark *){--scrollbar-track: #1A56DB;--scrollbar-thumb: #1C64F2;--scrollbar-thumb-hover: #3F83F8}.animated-progressbar-bg{position:relative;height:1.25rem;width:100%;overflow:hidden;border-radius:9999px;background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #C3DDFD var(--tw-gradient-from-position);--tw-gradient-to: rgb(195 221 253 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #DCD7FE var(--tw-gradient-to-position);--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.animated-progressbar-bg:is(.dark *){--tw-gradient-from: #1E429F var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 66 159 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #5521B5 var(--tw-gradient-to-position)}.animated-progressbar-fg{position:absolute;top:0;left:0;height:100%;background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #3F83F8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #9061F9 var(--tw-gradient-to-position);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.animated-progressbar-fg:is(.dark *){--tw-gradient-from: #1C64F2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(28 100 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #7E3AF2 var(--tw-gradient-to-position)}.discussion-toolbox{display:flex;--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));align-items:center;gap:.5rem;border-top-left-radius:.375rem;border-bottom-left-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:.5rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.group:hover .discussion-toolbox{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.discussion-toolbox:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.lollms-title-style{text-shadow:2px 2px 4px rgba(0,0,0,.2),2px 2px 0px white,-2px -2px 0px white,2px -2px 0px white,-2px 2px 0px white;background:linear-gradient(45deg,#f59e0b,#fbbf24);-webkit-background-clip:text;background-clip:text}.chat-bar{position:relative;display:flex;flex-grow:1;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:center;gap:.5rem;--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));padding:.25rem;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.chat-bar:hover{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.chat-bar:is(.dark *){--tw-border-opacity: 1;border-color:rgb(202 191 253 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.chat-bar{height:50px;transition:all .3s ease}.chat-bar:hover{box-shadow:0 4px 6px -1px #00ff001a,0 2px 4px -1px #00ff000f}.svg-button{border-radius:9999px;padding:.5rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.svg-button:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity));--tw-ring-offset-width: 2px}.svg-button:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.svg-button:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.svg-button:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.svg-button:active{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.svg-button:active:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.nav-button{border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nav-button:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.nav-button:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.nav-button:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.nav-button-active{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.nav-button-active:hover{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.nav-button-active:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.nav-button-active:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.btn-on{--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.btn-on:is(.dark *){--tw-text-opacity: 1;color:rgb(49 196 141 / var(--tw-text-opacity))}.btn-off{--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.btn-off:is(.dark *){--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}.interesting-facts{margin-top:1.5rem;margin-bottom:1.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:.5rem;background-color:#fffc;padding:1rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.interesting-facts:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.interesting-facts:is(.dark *){background-color:#1f2937cc}.toolbar-button{cursor:pointer;border-style:none;background-color:transparent;padding:.5rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.toolbar-button:hover{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.context-menu{position:absolute;background-color:#fff;border:1px solid #e0e0e0;box-shadow:0 2px 10px #0000001a;border-radius:4px;padding:8px 0;min-width:150px;z-index:1000}.context-menu-item{padding:8px 16px;font-size:14px;color:#333;cursor:pointer;transition:background-color .2s ease}.context-menu-item:hover{background-color:#f5f5f5}.context-menu-separator{height:1px;background-color:#e0e0e0;margin:4px 0}.context-menu-item-disabled{color:#999;cursor:not-allowed}.context-menu-item-icon{margin-right:8px}.steps-container{margin-bottom:1rem;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.steps-header{display:flex;cursor:pointer;align-items:center;--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));padding:1rem}.steps-header:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.steps-title{margin:0;font-size:1rem;line-height:1.5rem;font-weight:600}.step-item{margin-bottom:.5rem;border-left-width:2px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));padding-left:1rem}.steps-container{margin-bottom:1rem;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.steps-container:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.steps-header{display:flex;cursor:pointer;align-items:center;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity));padding:1rem}.steps-header:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.steps-icon{margin-right:1rem}.steps-summary{flex-grow:1}.steps-title{margin:0;font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.steps-title:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.steps-status{margin:0;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.steps-status:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.toggle-icon{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.toggle-icon:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.steps-content{padding:1rem}.steps-list{margin:0;list-style-type:none;padding:0}.step-item{margin-bottom:.5rem;border-left-width:2px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));padding-left:1rem}.step-item:last-child{margin-bottom:0}.step-item:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.step-container{margin-bottom:1rem;transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.step-wrapper{display:flex;align-items:flex-start;border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:.75rem}.step-wrapper:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.step-icon{margin-right:.75rem;height:1.5rem;width:1.5rem;flex-shrink:0}.icon-success{height:1.5rem;width:1.5rem;--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.icon-fail{height:1.5rem;width:1.5rem;--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.icon-spinner{height:1.5rem;width:1.5rem}@keyframes spin{to{transform:rotate(360deg)}}.icon-spinner{animation:spin 1s linear infinite;border-radius:9999px;border-width:2px;--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity));border-top-color:transparent}.icon-spinner:is(.dark *){--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.step-content{flex-grow:1}.step-text{font-size:1rem;line-height:1.5rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.step-text:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.step-description{margin-top:.25rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.step-description:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.fade-enter-active,.fade-leave-active{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.fade-enter,.fade-leave-to{opacity:0}.status-icon{cursor:pointer;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.icon{height:1.5rem;width:1.5rem}.icon-success{--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.icon-success:is(.dark *){--tw-text-opacity: 1;color:rgb(49 196 141 / var(--tw-text-opacity))}.icon-fail{--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.icon-fail:is(.dark *){--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}.icon-text{font-size:1.25rem;line-height:1.75rem;font-weight:700;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.icon-text:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.user-settings-panel>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.user-settings-panel{border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity));padding:1rem;--tw-text-opacity: 1;color:rgb(35 56 118 / var(--tw-text-opacity));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.user-settings-panel:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}@media (min-width: 768px){.user-settings-panel{padding:1.5rem}}.folder-item-base{display:flex;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;border-radius:.5rem;padding:1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.folder-item-base:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.folder-item-base{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}.folder-item-base:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.folder-item-base:hover{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.folder-item-base:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.folder-item-base{border-width:1px}.folder-item-icon{margin-bottom:.5rem;height:2.5rem;width:2.5rem;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.group:hover .folder-item-icon{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.folder-item-label{margin-top:.5rem;text-align:center;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.folder-item-label:is(.dark *){--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.folder-item-personalities{--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.folder-item-personalities:is(.dark *){--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.folder-item-icon-personalities{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.folder-item-icon-personalities:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.folder-item-functions{--tw-border-opacity: 1;border-color:rgb(14 159 110 / var(--tw-border-opacity))}.folder-item-functions:is(.dark *){--tw-border-opacity: 1;border-color:rgb(49 196 141 / var(--tw-border-opacity))}.folder-item-icon-functions{--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.folder-item-icon-functions:is(.dark *){--tw-text-opacity: 1;color:rgb(49 196 141 / var(--tw-text-opacity))}.folder-item-configs{--tw-border-opacity: 1;border-color:rgb(194 120 3 / var(--tw-border-opacity))}.folder-item-configs:is(.dark *){--tw-border-opacity: 1;border-color:rgb(227 160 8 / var(--tw-border-opacity))}.folder-item-icon-configs{--tw-text-opacity: 1;color:rgb(194 120 3 / var(--tw-text-opacity))}.folder-item-icon-configs:is(.dark *){--tw-text-opacity: 1;color:rgb(227 160 8 / var(--tw-text-opacity))}.folder-item-outputs{--tw-border-opacity: 1;border-color:rgb(144 97 249 / var(--tw-border-opacity))}.folder-item-outputs:is(.dark *){--tw-border-opacity: 1;border-color:rgb(172 148 250 / var(--tw-border-opacity))}.folder-item-icon-outputs{--tw-text-opacity: 1;color:rgb(144 97 249 / var(--tw-text-opacity))}.folder-item-icon-outputs:is(.dark *){--tw-text-opacity: 1;color:rgb(172 148 250 / var(--tw-text-opacity))}.folder-item-discussions{--tw-border-opacity: 1;border-color:rgb(240 82 82 / var(--tw-border-opacity))}.folder-item-discussions:is(.dark *){--tw-border-opacity: 1;border-color:rgb(249 128 128 / var(--tw-border-opacity))}.folder-item-icon-discussions{--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.folder-item-icon-discussions:is(.dark *){--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}@keyframes matrix-rain{0%{background-position:0 0}to{background-position:0 1000px}}@media (min-width: 640px){.sm\:container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}.sm\:container{max-width:640px}@media (min-width: 768px){.sm\:container{max-width:768px}}@media (min-width: 1024px){.sm\:container{max-width:1024px}}@media (min-width: 1280px){.sm\:container{max-width:1280px}}@media (min-width: 1536px){.sm\:container{max-width:1536px}}}.before\:content-none:before{--tw-content: none;content:var(--tw-content)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:left-\[2px\]:after{content:var(--tw-content);left:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:h-5:after{content:var(--tw-content);height:1.25rem}.after\:w-5:after{content:var(--tw-content);width:1.25rem}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:border:after{content:var(--tw-content);border-width:1px}.after\:border-gray-300:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.after\:bg-white:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.after\:transition-all:after{content:var(--tw-content);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:content-\[\'\'\]:after{--tw-content: "";content:var(--tw-content)}.last\:mb-0:last-child{margin-bottom:0}.even\:bg-bg-light-discussion-odd:nth-child(2n){background-color:var(--color-bg-light-discussion-odd)}.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:block{display:block}.group\/item:hover .group-hover\/item\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\/item:hover .group-hover\/item\:scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-blue-500{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.group:hover .group-hover\:bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.group:hover .group-hover\:bg-white\/50{background-color:#ffffff80}.group:hover .group-hover\:bg-opacity-0{--tw-bg-opacity: 0}.group:hover .group-hover\:from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-green-400{--tw-gradient-from: #31C48D var(--tw-gradient-from-position);--tw-gradient-to: rgb(49 196 141 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-pink-500{--tw-gradient-from: #E74694 var(--tw-gradient-from-position);--tw-gradient-to: rgb(231 70 148 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-purple-500{--tw-gradient-from: #9061F9 var(--tw-gradient-from-position);--tw-gradient-to: rgb(144 97 249 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-purple-600{--tw-gradient-from: #7E3AF2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 58 242 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-red-200{--tw-gradient-from: #FBD5D5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(251 213 213 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:from-teal-300{--tw-gradient-from: #7EDCE2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 220 226 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:via-red-300{--tw-gradient-to: rgb(248 180 180 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #F8B4B4 var(--tw-gradient-via-position), var(--tw-gradient-to)}.group:hover .group-hover\:to-blue-500{--tw-gradient-to: #3F83F8 var(--tw-gradient-to-position)}.group:hover .group-hover\:to-blue-600{--tw-gradient-to: #1C64F2 var(--tw-gradient-to-position)}.group:hover .group-hover\:to-lime-300{--tw-gradient-to: #bef264 var(--tw-gradient-to-position)}.group:hover .group-hover\:to-orange-400{--tw-gradient-to: #FF8A4C var(--tw-gradient-to-position)}.group:hover .group-hover\:to-pink-500{--tw-gradient-to: #E74694 var(--tw-gradient-to-position)}.group:hover .group-hover\:to-yellow-200{--tw-gradient-to: #FCE96A var(--tw-gradient-to-position)}.group:hover .group-hover\:text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.group\/item:hover .group-hover\/item\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}.group:focus .group-focus\:outline-none{outline:2px solid transparent;outline-offset:2px}.group:focus .group-focus\:ring-4{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.group:focus .group-focus\:ring-white{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity))}.peer:checked~.peer-checked\:bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.peer:checked~.peer-checked\:after\:translate-x-full:after{content:var(--tw-content);--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\:after\:border-white:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}.peer:focus~.peer-focus\:outline-none{outline:2px solid transparent;outline-offset:2px}.peer:focus~.peer-focus\:ring-4{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.peer:focus~.peer-focus\:ring-blue-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity))}.hover\:z-10:hover{z-index:10}.hover\:-translate-y-1:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.03\]:hover{--tw-scale-x: 1.03;--tw-scale-y: 1.03;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-x-100:hover{--tw-scale-x: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-2:hover{border-width:2px}.hover\:border-solid:hover{border-style:solid}.hover\:border-blue-300:hover{--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity))}.hover\:border-blue-400:hover{--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.hover\:border-gray-600:hover{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.hover\:border-primary:hover{border-color:var(--color-primary)}.hover\:border-secondary:hover{border-color:var(--color-secondary)}.hover\:bg-bg-light-tone:hover{background-color:var(--color-bg-light-tone)}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(225 239 254 / var(--tw-bg-opacity))}.hover\:bg-blue-200:hover{--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.hover\:bg-blue-50\/50:hover{background-color:#ebf5ff80}.hover\:bg-blue-500:hover{--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.hover\:bg-blue-600:hover{--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.hover\:bg-blue-800:hover{--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.hover\:bg-gray-400:hover{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.hover\:bg-gray-500:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.hover\:bg-gray-900:hover{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.hover\:bg-green-200:hover{--tw-bg-opacity: 1;background-color:rgb(188 240 218 / var(--tw-bg-opacity))}.hover\:bg-green-600:hover{--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.hover\:bg-green-800:hover{--tw-bg-opacity: 1;background-color:rgb(3 84 63 / var(--tw-bg-opacity))}.hover\:bg-pink-800:hover{--tw-bg-opacity: 1;background-color:rgb(153 21 75 / var(--tw-bg-opacity))}.hover\:bg-primary:hover{background-color:var(--color-primary)}.hover\:bg-primary-light:hover{background-color:var(--color-primary-light)}.hover\:bg-purple-800:hover{--tw-bg-opacity: 1;background-color:rgb(85 33 181 / var(--tw-bg-opacity))}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(253 232 232 / var(--tw-bg-opacity))}.hover\:bg-red-200:hover{--tw-bg-opacity: 1;background-color:rgb(251 213 213 / var(--tw-bg-opacity))}.hover\:bg-red-300:hover{--tw-bg-opacity: 1;background-color:rgb(248 180 180 / var(--tw-bg-opacity))}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(253 242 242 / var(--tw-bg-opacity))}.hover\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.hover\:bg-red-800:hover{--tw-bg-opacity: 1;background-color:rgb(155 28 28 / var(--tw-bg-opacity))}.hover\:bg-transparent:hover{background-color:transparent}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.hover\:bg-yellow-200:hover{--tw-bg-opacity: 1;background-color:rgb(252 233 106 / var(--tw-bg-opacity))}.hover\:bg-yellow-500:hover{--tw-bg-opacity: 1;background-color:rgb(194 120 3 / var(--tw-bg-opacity))}.hover\:bg-opacity-80:hover{--tw-bg-opacity: .8}.hover\:bg-gradient-to-bl:hover{background-image:linear-gradient(to bottom left,var(--tw-gradient-stops))}.hover\:bg-gradient-to-br:hover{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.hover\:bg-gradient-to-l:hover{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.hover\:bg-gradient-to-r:hover{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.hover\:from-blue-50:hover{--tw-gradient-from: #EBF5FF var(--tw-gradient-from-position);--tw-gradient-to: rgb(235 245 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-blue-500\/20:hover{--tw-gradient-from: rgb(63 131 248 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-teal-200:hover{--tw-gradient-from: #AFECEF var(--tw-gradient-from-position);--tw-gradient-to: rgb(175 236 239 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-lime-200:hover{--tw-gradient-to: #d9f99d var(--tw-gradient-to-position)}.hover\:to-purple-50:hover{--tw-gradient-to: #F6F5FF var(--tw-gradient-to-position)}.hover\:to-purple-500\/20:hover{--tw-gradient-to: rgb(144 97 249 / .2) var(--tw-gradient-to-position)}.hover\:font-bold:hover{font-weight:700}.hover\:text-black:hover{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.hover\:text-blue-500:hover{--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.hover\:text-blue-600:hover{--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.hover\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.hover\:text-gray-800:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.hover\:text-green-500:hover{--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.hover\:text-green-600:hover{--tw-text-opacity: 1;color:rgb(5 122 85 / var(--tw-text-opacity))}.hover\:text-indigo-600:hover{--tw-text-opacity: 1;color:rgb(88 80 236 / var(--tw-text-opacity))}.hover\:text-primary:hover{color:var(--color-primary)}.hover\:text-purple-600:hover{--tw-text-opacity: 1;color:rgb(126 58 242 / var(--tw-text-opacity))}.hover\:text-red-500:hover{--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.hover\:text-red-600:hover{--tw-text-opacity: 1;color:rgb(224 36 36 / var(--tw-text-opacity))}.hover\:text-red-700:hover{--tw-text-opacity: 1;color:rgb(200 30 30 / var(--tw-text-opacity))}.hover\:text-secondary:hover{color:var(--color-secondary)}.hover\:text-teal-600:hover{--tw-text-opacity: 1;color:rgb(4 116 129 / var(--tw-text-opacity))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.hover\:text-yellow-500:hover{--tw-text-opacity: 1;color:rgb(194 120 3 / var(--tw-text-opacity))}.hover\:text-yellow-600:hover{--tw-text-opacity: 1;color:rgb(159 88 10 / var(--tw-text-opacity))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-none:hover{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:ring-primary:hover{--tw-ring-color: var(--color-primary)}.hover\:scrollbar-thumb-primary{--scrollbar-thumb-hover: var(--color-primary) !important}.before\:hover\:text-center:hover:before{content:var(--tw-content);text-align:center}.hover\:before\:text-center:hover:before{content:var(--tw-content);text-align:center}.focus\:z-10:focus{z-index:10}.focus\:border-blue-300:focus{--tw-border-opacity: 1;border-color:rgb(164 202 254 / var(--tw-border-opacity))}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.focus\:border-indigo-500:focus{--tw-border-opacity: 1;border-color:rgb(104 117 245 / var(--tw-border-opacity))}.focus\:border-primary:focus{border-color:var(--color-primary)}.focus\:border-secondary:focus{border-color:var(--color-secondary)}.focus\:border-transparent:focus{border-color:transparent}.focus\:text-blue-700:focus{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-4:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(195 221 253 / var(--tw-ring-opacity))}.focus\:ring-blue-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity))}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(118 169 250 / var(--tw-ring-opacity))}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.focus\:ring-blue-500\/50:focus{--tw-ring-color: rgb(63 131 248 / .5)}.focus\:ring-blue-700:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(26 86 219 / var(--tw-ring-opacity))}.focus\:ring-cyan-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(165 243 252 / var(--tw-ring-opacity))}.focus\:ring-cyan-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(103 232 249 / var(--tw-ring-opacity))}.focus\:ring-gray-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(229 231 235 / var(--tw-ring-opacity))}.focus\:ring-gray-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity))}.focus\:ring-gray-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity))}.focus\:ring-green-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(188 240 218 / var(--tw-ring-opacity))}.focus\:ring-green-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(132 225 188 / var(--tw-ring-opacity))}.focus\:ring-green-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(49 196 141 / var(--tw-ring-opacity))}.focus\:ring-green-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity))}.focus\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(104 117 245 / var(--tw-ring-opacity))}.focus\:ring-lime-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(217 249 157 / var(--tw-ring-opacity))}.focus\:ring-lime-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(190 242 100 / var(--tw-ring-opacity))}.focus\:ring-pink-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(250 209 232 / var(--tw-ring-opacity))}.focus\:ring-pink-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 180 217 / var(--tw-ring-opacity))}.focus\:ring-primary:focus{--tw-ring-color: var(--color-primary)}.focus\:ring-purple-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(220 215 254 / var(--tw-ring-opacity))}.focus\:ring-purple-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(202 191 253 / var(--tw-ring-opacity))}.focus\:ring-red-100:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(253 232 232 / var(--tw-ring-opacity))}.focus\:ring-red-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 180 180 / var(--tw-ring-opacity))}.focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(249 128 128 / var(--tw-ring-opacity))}.focus\:ring-red-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity))}.focus\:ring-secondary:focus{--tw-ring-color: var(--color-secondary)}.focus\:ring-teal-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(126 220 226 / var(--tw-ring-opacity))}.focus\:ring-yellow-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(250 202 21 / var(--tw-ring-opacity))}.focus\:ring-yellow-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(227 160 8 / var(--tw-ring-opacity))}.focus\:ring-opacity-50:focus{--tw-ring-opacity: .5}.focus\:ring-offset-1:focus{--tw-ring-offset-width: 1px}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus\:ring-offset-blue-100:focus{--tw-ring-offset-color: #E1EFFE}.focus\:hover\:text-center:hover:focus{text-align:center}.hover\:focus\:text-center:focus:hover{text-align:center}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-blue-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.active\:scale-75:active{--tw-scale-x: .75;--tw-scale-y: .75;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-90:active{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scrollbar-thumb-secondary{--scrollbar-thumb-active: var(--color-secondary) !important}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:hover\:bg-transparent:hover:disabled{background-color:transparent}.disabled\:hover\:text-gray-600:hover:disabled{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.dark\:inline:is(.dark *){display:inline}.dark\:hidden:is(.dark *){display:none}.dark\:divide-gray-700:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity))}.dark\:border-bg-light:is(.dark *){border-color:var(--color-bg-light)}.dark\:border-blue-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.dark\:border-blue-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.dark\:border-blue-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity))}.dark\:border-blue-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(26 86 219 / var(--tw-border-opacity))}.dark\:border-gray-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity))}.dark\:border-gray-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity))}.dark\:border-gray-900:is(.dark *){--tw-border-opacity: 1;border-color:rgb(17 24 39 / var(--tw-border-opacity))}.dark\:border-green-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(14 159 110 / var(--tw-border-opacity))}.dark\:border-orange-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(208 56 1 / var(--tw-border-opacity))}.dark\:border-pink-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(241 126 184 / var(--tw-border-opacity))}.dark\:border-pink-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(231 70 148 / var(--tw-border-opacity))}.dark\:border-purple-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(172 148 250 / var(--tw-border-opacity))}.dark\:border-purple-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(144 97 249 / var(--tw-border-opacity))}.dark\:border-red-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(240 82 82 / var(--tw-border-opacity))}.dark\:border-red-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(224 36 36 / var(--tw-border-opacity))}.dark\:border-red-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(200 30 30 / var(--tw-border-opacity))}.dark\:border-transparent:is(.dark *){border-color:transparent}.dark\:border-yellow-300:is(.dark *){--tw-border-opacity: 1;border-color:rgb(250 202 21 / var(--tw-border-opacity))}.dark\:bg-bg-dark:is(.dark *){background-color:var(--color-bg-dark)}.dark\:bg-bg-dark-tone:is(.dark *){background-color:var(--color-bg-dark-tone)}.dark\:bg-bg-dark-tone-panel:is(.dark *){background-color:var(--color-bg-dark-tone-panel)}.dark\:bg-black:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.dark\:bg-blue-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(195 221 253 / var(--tw-bg-opacity))}.dark\:bg-blue-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(63 131 248 / var(--tw-bg-opacity))}.dark\:bg-blue-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.dark\:bg-blue-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.dark\:bg-blue-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 66 159 / var(--tw-bg-opacity))}.dark\:bg-blue-800\/50:is(.dark *){background-color:#1e429f80}.dark\:bg-blue-800\/60:is(.dark *){background-color:#1e429f99}.dark\:bg-blue-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity))}.dark\:bg-blue-900\/30:is(.dark *){background-color:#2338764d}.dark\:bg-blue-900\/50:is(.dark *){background-color:#23387680}.dark\:bg-gray-300:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.dark\:bg-gray-400:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.dark\:bg-gray-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.dark\:bg-gray-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:bg-gray-700\/50:is(.dark *){background-color:#37415180}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:bg-gray-800\/20:is(.dark *){background-color:#1f293733}.dark\:bg-gray-800\/30:is(.dark *){background-color:#1f29374d}.dark\:bg-gray-800\/50:is(.dark *){background-color:#1f293780}.dark\:bg-gray-800\/70:is(.dark *){background-color:#1f2937b3}.dark\:bg-gray-800\/80:is(.dark *){background-color:#1f2937cc}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.dark\:bg-gray-900\/50:is(.dark *){background-color:#11182780}.dark\:bg-gray-900\/95:is(.dark *){background-color:#111827f2}.dark\:bg-green-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(188 240 218 / var(--tw-bg-opacity))}.dark\:bg-green-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(14 159 110 / var(--tw-bg-opacity))}.dark\:bg-green-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity))}.dark\:bg-green-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.dark\:bg-green-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(3 84 63 / var(--tw-bg-opacity))}.dark\:bg-green-900\/20:is(.dark *){background-color:#01473733}.dark\:bg-indigo-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(205 219 254 / var(--tw-bg-opacity))}.dark\:bg-indigo-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(104 117 245 / var(--tw-bg-opacity))}.dark\:bg-orange-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(180 52 3 / var(--tw-bg-opacity))}.dark\:bg-orange-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(138 44 13 / var(--tw-bg-opacity))}.dark\:bg-orange-900\/30:is(.dark *){background-color:#771d1d4d}.dark\:bg-pink-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(250 209 232 / var(--tw-bg-opacity))}.dark\:bg-pink-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(214 31 105 / var(--tw-bg-opacity))}.dark\:bg-purple-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(220 215 254 / var(--tw-bg-opacity))}.dark\:bg-purple-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(144 97 249 / var(--tw-bg-opacity))}.dark\:bg-purple-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(126 58 242 / var(--tw-bg-opacity))}.dark\:bg-red-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(251 213 213 / var(--tw-bg-opacity))}.dark\:bg-red-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(240 82 82 / var(--tw-bg-opacity))}.dark\:bg-red-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity))}.dark\:bg-red-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.dark\:bg-red-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(155 28 28 / var(--tw-bg-opacity))}.dark\:bg-red-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(119 29 29 / var(--tw-bg-opacity))}.dark\:bg-red-900\/20:is(.dark *){background-color:#771d1d33}.dark\:bg-red-900\/30:is(.dark *){background-color:#771d1d4d}.dark\:bg-white:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.dark\:bg-yellow-200:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(252 233 106 / var(--tw-bg-opacity))}.dark\:bg-opacity-50:is(.dark *){--tw-bg-opacity: .5}.dark\:bg-opacity-80:is(.dark *){--tw-bg-opacity: .8}.dark\:from-bg-dark:is(.dark *){--tw-gradient-from: var(--color-bg-dark) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-blue-400\/20:is(.dark *){--tw-gradient-from: rgb(118 169 250 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(118 169 250 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-gray-900:is(.dark *){--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-indigo-400:is(.dark *){--tw-gradient-from: #8DA2FB var(--tw-gradient-from-position);--tw-gradient-to: rgb(141 162 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:via-bg-dark:is(.dark *){--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--color-bg-dark) var(--tw-gradient-via-position), var(--tw-gradient-to)}.dark\:to-blue-950:is(.dark *){--tw-gradient-to: #172554 var(--tw-gradient-to-position)}.dark\:to-purple-400:is(.dark *){--tw-gradient-to: #AC94FA var(--tw-gradient-to-position)}.dark\:to-purple-400\/20:is(.dark *){--tw-gradient-to: rgb(172 148 250 / .2) var(--tw-gradient-to-position)}.dark\:fill-blue-400:is(.dark *){fill:#76a9fa}.dark\:fill-gray-300:is(.dark *){fill:#d1d5db}.dark\:text-amber-400:is(.dark *){--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity))}.dark\:text-blue-100:is(.dark *){--tw-text-opacity: 1;color:rgb(225 239 254 / var(--tw-text-opacity))}.dark\:text-blue-200:is(.dark *){--tw-text-opacity: 1;color:rgb(195 221 253 / var(--tw-text-opacity))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity: 1;color:rgb(164 202 254 / var(--tw-text-opacity))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.dark\:text-blue-500:is(.dark *){--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.dark\:text-blue-600:is(.dark *){--tw-text-opacity: 1;color:rgb(28 100 242 / var(--tw-text-opacity))}.dark\:text-blue-800:is(.dark *){--tw-text-opacity: 1;color:rgb(30 66 159 / var(--tw-text-opacity))}.dark\:text-dark-text-panel:is(.dark *){color:var(--color-dark-text-panel)}.dark\:text-gray-100:is(.dark *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.dark\:text-gray-600:is(.dark *){--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.dark\:text-gray-800:is(.dark *){--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.dark\:text-green-200:is(.dark *){--tw-text-opacity: 1;color:rgb(188 240 218 / var(--tw-text-opacity))}.dark\:text-green-400:is(.dark *){--tw-text-opacity: 1;color:rgb(49 196 141 / var(--tw-text-opacity))}.dark\:text-green-500:is(.dark *){--tw-text-opacity: 1;color:rgb(14 159 110 / var(--tw-text-opacity))}.dark\:text-green-800:is(.dark *){--tw-text-opacity: 1;color:rgb(3 84 63 / var(--tw-text-opacity))}.dark\:text-green-900:is(.dark *){--tw-text-opacity: 1;color:rgb(1 71 55 / var(--tw-text-opacity))}.dark\:text-indigo-500:is(.dark *){--tw-text-opacity: 1;color:rgb(104 117 245 / var(--tw-text-opacity))}.dark\:text-indigo-900:is(.dark *){--tw-text-opacity: 1;color:rgb(54 47 120 / var(--tw-text-opacity))}.dark\:text-orange-200:is(.dark *){--tw-text-opacity: 1;color:rgb(252 217 189 / var(--tw-text-opacity))}.dark\:text-orange-400:is(.dark *){--tw-text-opacity: 1;color:rgb(255 138 76 / var(--tw-text-opacity))}.dark\:text-pink-400:is(.dark *){--tw-text-opacity: 1;color:rgb(241 126 184 / var(--tw-text-opacity))}.dark\:text-pink-500:is(.dark *){--tw-text-opacity: 1;color:rgb(231 70 148 / var(--tw-text-opacity))}.dark\:text-pink-900:is(.dark *){--tw-text-opacity: 1;color:rgb(117 26 61 / var(--tw-text-opacity))}.dark\:text-primary:is(.dark *){color:var(--color-primary)}.dark\:text-purple-400:is(.dark *){--tw-text-opacity: 1;color:rgb(172 148 250 / var(--tw-text-opacity))}.dark\:text-purple-500:is(.dark *){--tw-text-opacity: 1;color:rgb(144 97 249 / var(--tw-text-opacity))}.dark\:text-purple-900:is(.dark *){--tw-text-opacity: 1;color:rgb(74 29 150 / var(--tw-text-opacity))}.dark\:text-red-200:is(.dark *){--tw-text-opacity: 1;color:rgb(251 213 213 / var(--tw-text-opacity))}.dark\:text-red-300:is(.dark *){--tw-text-opacity: 1;color:rgb(248 180 180 / var(--tw-text-opacity))}.dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}.dark\:text-red-500:is(.dark *){--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.dark\:text-red-500\/90:is(.dark *){color:#f05252e6}.dark\:text-red-800:is(.dark *){--tw-text-opacity: 1;color:rgb(155 28 28 / var(--tw-text-opacity))}.dark\:text-red-900:is(.dark *){--tw-text-opacity: 1;color:rgb(119 29 29 / var(--tw-text-opacity))}.dark\:text-slate-50:is(.dark *){--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity))}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:text-yellow-300:is(.dark *){--tw-text-opacity: 1;color:rgb(250 202 21 / var(--tw-text-opacity))}.dark\:text-yellow-400:is(.dark *){--tw-text-opacity: 1;color:rgb(227 160 8 / var(--tw-text-opacity))}.dark\:text-yellow-500:is(.dark *){--tw-text-opacity: 1;color:rgb(194 120 3 / var(--tw-text-opacity))}.dark\:text-yellow-800:is(.dark *){--tw-text-opacity: 1;color:rgb(114 59 19 / var(--tw-text-opacity))}.dark\:text-yellow-900:is(.dark *){--tw-text-opacity: 1;color:rgb(99 49 18 / var(--tw-text-opacity))}.dark\:placeholder-gray-400:is(.dark *)::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.dark\:placeholder-gray-400:is(.dark *)::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.dark\:shadow-lg:is(.dark *){--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:shadow-blue-800\/80:is(.dark *){--tw-shadow-color: rgb(30 66 159 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-cyan-800\/80:is(.dark *){--tw-shadow-color: rgb(21 94 117 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-green-800\/80:is(.dark *){--tw-shadow-color: rgb(3 84 63 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-lime-800\/80:is(.dark *){--tw-shadow-color: rgb(63 98 18 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-pink-800\/80:is(.dark *){--tw-shadow-color: rgb(153 21 75 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-purple-800\/80:is(.dark *){--tw-shadow-color: rgb(85 33 181 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-red-800\/80:is(.dark *){--tw-shadow-color: rgb(155 28 28 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-teal-800\/80:is(.dark *){--tw-shadow-color: rgb(5 80 92 / .8);--tw-shadow: var(--tw-shadow-colored)}.dark\:ring-blue-600:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(28 100 242 / var(--tw-ring-opacity))}.dark\:ring-gray-500:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity))}.dark\:ring-gray-800:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(31 41 55 / var(--tw-ring-opacity))}.dark\:ring-white:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity))}.dark\:ring-opacity-20:is(.dark *){--tw-ring-opacity: .2}.dark\:ring-offset-blue-900:is(.dark *){--tw-ring-offset-color: #233876}.dark\:ring-offset-gray-700:is(.dark *){--tw-ring-offset-color: #374151}.dark\:ring-offset-gray-800:is(.dark *){--tw-ring-offset-color: #1F2937}.dark\:scrollbar-track-bg-dark:is(.dark *){--scrollbar-track: var(--color-bg-dark) !important}.dark\:scrollbar-track-bg-dark-tone:is(.dark *){--scrollbar-track: var(--color-bg-dark-tone) !important}.dark\:scrollbar-track-gray-700:is(.dark *){--scrollbar-track: #374151 !important}.dark\:scrollbar-track-gray-800:is(.dark *){--scrollbar-track: #1F2937 !important}.dark\:scrollbar-thumb-bg-dark-tone:is(.dark *){--scrollbar-thumb: var(--color-bg-dark-tone) !important}.dark\:scrollbar-thumb-bg-dark-tone-panel:is(.dark *){--scrollbar-thumb: var(--color-bg-dark-tone-panel) !important}.dark\:scrollbar-thumb-gray-500:is(.dark *){--scrollbar-thumb: #6B7280 !important}.dark\:scrollbar-thumb-gray-600:is(.dark *){--scrollbar-thumb: #4B5563 !important}.dark\:even\:bg-bg-dark-discussion-odd:nth-child(2n):is(.dark *){background-color:var(--color-bg-dark-discussion-odd)}.group:hover .dark\:group-hover\:border-blue-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(118 169 250 / var(--tw-border-opacity))}.group:hover .dark\:group-hover\:bg-gray-800\/60:is(.dark *){background-color:#1f293799}.group:hover .dark\:group-hover\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.group:focus .dark\:group-focus\:ring-gray-800\/70:is(.dark *){--tw-ring-color: rgb(31 41 55 / .7)}.peer:focus~.dark\:peer-focus\:ring-blue-800:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(30 66 159 / var(--tw-ring-opacity))}.dark\:hover\:border-blue-600:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(28 100 242 / var(--tw-border-opacity))}.dark\:hover\:border-gray-600:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.dark\:hover\:border-primary:hover:is(.dark *){border-color:var(--color-primary)}.dark\:hover\:bg-blue-300:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(164 202 254 / var(--tw-bg-opacity))}.dark\:hover\:bg-blue-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(28 100 242 / var(--tw-bg-opacity))}.dark\:hover\:bg-blue-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(26 86 219 / var(--tw-bg-opacity))}.dark\:hover\:bg-blue-900:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(35 56 118 / var(--tw-bg-opacity))}.dark\:hover\:bg-blue-900\/20:hover:is(.dark *){background-color:#23387633}.dark\:hover\:bg-blue-900\/30:hover:is(.dark *){background-color:#2338764d}.dark\:hover\:bg-gray-400:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.dark\:hover\:bg-gray-500:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.dark\:hover\:bg-gray-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:hover\:bg-gray-600\/50:hover:is(.dark *){background-color:#4b556380}.dark\:hover\:bg-gray-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:hover\:bg-gray-700\/50:hover:is(.dark *){background-color:#37415180}.dark\:hover\:bg-gray-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:hover\:bg-green-300:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(132 225 188 / var(--tw-bg-opacity))}.dark\:hover\:bg-green-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(5 122 85 / var(--tw-bg-opacity))}.dark\:hover\:bg-green-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(4 108 78 / var(--tw-bg-opacity))}.dark\:hover\:bg-pink-500:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(231 70 148 / var(--tw-bg-opacity))}.dark\:hover\:bg-pink-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(191 18 93 / var(--tw-bg-opacity))}.dark\:hover\:bg-primary:hover:is(.dark *){background-color:var(--color-primary)}.dark\:hover\:bg-purple-500:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(144 97 249 / var(--tw-bg-opacity))}.dark\:hover\:bg-purple-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(108 43 217 / var(--tw-bg-opacity))}.dark\:hover\:bg-red-300:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(248 180 180 / var(--tw-bg-opacity))}.dark\:hover\:bg-red-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(224 36 36 / var(--tw-bg-opacity))}.dark\:hover\:bg-red-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(200 30 30 / var(--tw-bg-opacity))}.dark\:hover\:bg-red-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(155 28 28 / var(--tw-bg-opacity))}.dark\:hover\:bg-red-900:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(119 29 29 / var(--tw-bg-opacity))}.dark\:hover\:bg-yellow-300:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(250 202 21 / var(--tw-bg-opacity))}.dark\:hover\:bg-yellow-400:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(227 160 8 / var(--tw-bg-opacity))}.hover\:dark\:bg-bg-dark-tone:is(.dark *):hover{background-color:var(--color-bg-dark-tone)}.dark\:hover\:bg-opacity-80:hover:is(.dark *){--tw-bg-opacity: .8}.dark\:hover\:from-blue-400\/30:hover:is(.dark *){--tw-gradient-from: rgb(118 169 250 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(118 169 250 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:hover\:from-blue-900\/30:hover:is(.dark *){--tw-gradient-from: rgb(35 56 118 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(35 56 118 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:hover\:to-purple-400\/30:hover:is(.dark *){--tw-gradient-to: rgb(172 148 250 / .3) var(--tw-gradient-to-position)}.dark\:hover\:to-purple-900\/30:hover:is(.dark *){--tw-gradient-to: rgb(74 29 150 / .3) var(--tw-gradient-to-position)}.dark\:hover\:text-blue-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(118 169 250 / var(--tw-text-opacity))}.dark\:hover\:text-blue-500:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(63 131 248 / var(--tw-text-opacity))}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.dark\:hover\:text-gray-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.dark\:hover\:text-gray-900:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.dark\:hover\:text-green-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(49 196 141 / var(--tw-text-opacity))}.dark\:hover\:text-red-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(249 128 128 / var(--tw-text-opacity))}.dark\:hover\:text-red-500:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(240 82 82 / var(--tw-text-opacity))}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:hover\:text-yellow-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(227 160 8 / var(--tw-text-opacity))}.dark\:hover\:scrollbar-thumb-primary:is(.dark *){--scrollbar-thumb-hover: var(--color-primary) !important}.dark\:focus\:border-blue-500:focus:is(.dark *){--tw-border-opacity: 1;border-color:rgb(63 131 248 / var(--tw-border-opacity))}.dark\:focus\:border-secondary:focus:is(.dark *){border-color:var(--color-secondary)}.dark\:focus\:text-white:focus:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:focus\:ring-blue-500:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity))}.dark\:focus\:ring-blue-600:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(28 100 242 / var(--tw-ring-opacity))}.dark\:focus\:ring-blue-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(30 66 159 / var(--tw-ring-opacity))}.dark\:focus\:ring-cyan-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(21 94 117 / var(--tw-ring-opacity))}.dark\:focus\:ring-gray-500:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity))}.dark\:focus\:ring-gray-600:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(75 85 99 / var(--tw-ring-opacity))}.dark\:focus\:ring-gray-700:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(55 65 81 / var(--tw-ring-opacity))}.dark\:focus\:ring-gray-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(31 41 55 / var(--tw-ring-opacity))}.dark\:focus\:ring-green-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(3 84 63 / var(--tw-ring-opacity))}.dark\:focus\:ring-lime-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(63 98 18 / var(--tw-ring-opacity))}.dark\:focus\:ring-pink-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(153 21 75 / var(--tw-ring-opacity))}.dark\:focus\:ring-pink-900:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(117 26 61 / var(--tw-ring-opacity))}.dark\:focus\:ring-purple-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(85 33 181 / var(--tw-ring-opacity))}.dark\:focus\:ring-purple-900:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(74 29 150 / var(--tw-ring-opacity))}.dark\:focus\:ring-red-400:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(249 128 128 / var(--tw-ring-opacity))}.dark\:focus\:ring-red-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(155 28 28 / var(--tw-ring-opacity))}.dark\:focus\:ring-red-900:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(119 29 29 / var(--tw-ring-opacity))}.dark\:focus\:ring-secondary:focus:is(.dark *){--tw-ring-color: var(--color-secondary)}.dark\:focus\:ring-teal-700:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(3 102 114 / var(--tw-ring-opacity))}.dark\:focus\:ring-teal-800:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(5 80 92 / var(--tw-ring-opacity))}.dark\:focus\:ring-yellow-900:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(99 49 18 / var(--tw-ring-opacity))}.dark\:focus\:ring-offset-blue-800:focus:is(.dark *){--tw-ring-offset-color: #1E429F}.dark\:focus\:ring-offset-gray-700:focus:is(.dark *){--tw-ring-offset-color: #374151}.dark\:focus\:ring-offset-gray-800:focus:is(.dark *){--tw-ring-offset-color: #1F2937}.dark\:focus\:ring-offset-gray-900:focus:is(.dark *){--tw-ring-offset-color: #111827}.dark\:focus-visible\:ring-offset-gray-700\/50:focus-visible:is(.dark *){--tw-ring-offset-color: rgb(55 65 81 / .5)}.dark\:focus-visible\:ring-offset-gray-800:focus-visible:is(.dark *){--tw-ring-offset-color: #1F2937}@media (min-width: 640px){.sm\:mb-0{margin-bottom:0}.sm\:mr-4{margin-right:1rem}.sm\:mt-0{margin-top:0}.sm\:h-10{height:2.5rem}.sm\:h-6{height:1.5rem}.sm\:h-64{height:16rem}.sm\:w-1\/4{width:25%}.sm\:w-10{width:2.5rem}.sm\:w-6{width:1.5rem}.sm\:w-64{width:16rem}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:rounded-lg{border-radius:.5rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:text-center{text-align:center}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:underline{text-decoration-line:underline}}@media (min-width: 768px){.md\:inset-0{top:0;right:0;bottom:0;left:0}.md\:order-2{order:2}.md\:col-span-1{grid-column:span 1 / span 1}.md\:col-span-2{grid-column:span 2 / span 2}.md\:ml-80{margin-left:20rem}.md\:mr-6{margin-right:1.5rem}.md\:mt-0{margin-top:0}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-auto{height:auto}.md\:h-full{height:100%}.md\:w-1\/3{width:33.333333%}.md\:w-1\/4{width:25%}.md\:w-32{width:8rem}.md\:w-48{width:12rem}.md\:w-80{width:20rem}.md\:w-auto{width:auto}.md\:max-w-xl{max-width:36rem}.md\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[minmax\(150px\,25\%\)_1fr\]{grid-template-columns:minmax(150px,25%) 1fr}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:gap-4{gap:1rem}.md\:space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.md\:space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.md\:rounded-none{border-radius:0}.md\:rounded-l-lg{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.md\:border-0{border-width:0px}.md\:bg-transparent{background-color:transparent}.md\:p-0{padding:0}.md\:p-6{padding:1.5rem}.md\:p-8{padding:2rem}.md\:text-right{text-align:right}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:font-medium{font-weight:500}.md\:text-blue-700{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.md\:hover\:bg-transparent:hover{background-color:transparent}.md\:hover\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(26 86 219 / var(--tw-text-opacity))}.md\:dark\:bg-gray-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.md\:dark\:hover\:bg-transparent:hover:is(.dark *){background-color:transparent}.md\:dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}}@media (min-width: 1024px){.lg\:ml-96{margin-left:24rem}.lg\:w-1\/4{width:25%}.lg\:w-96{width:24rem}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.dark\:lg\:hover\:\[paint-order\:markers\]:hover:is(.dark *){paint-order:markers}}@media (min-width: 1280px){.xl\:h-80{height:20rem}.xl\:w-1\/6{width:16.666667%}}@media (min-width: 1536px){.\32xl\:h-96{height:24rem}} diff --git a/web/dist/assets/logo-6TyToX4A.png b/web/dist/assets/logo-6TyToX4A.png new file mode 100644 index 00000000..a733ce4c Binary files /dev/null and b/web/dist/assets/logo-6TyToX4A.png differ diff --git a/web/dist/assets/logo-BeKzDFPd.png b/web/dist/assets/logo-BeKzDFPd.png deleted file mode 100644 index 0aacdbcc..00000000 Binary files a/web/dist/assets/logo-BeKzDFPd.png and /dev/null differ diff --git a/web/dist/index.html b/web/dist/index.html index 2300de3a..b04132c0 100644 --- a/web/dist/index.html +++ b/web/dist/index.html @@ -6,8 +6,8 @@ LoLLMS WebUI - - + +
diff --git a/web/src/views/settings_components/FunctionCallsZooSettings.vue b/web/src/views/settings_components/FunctionCallsZooSettings.vue index 83511864..88e13cae 100644 --- a/web/src/views/settings_components/FunctionCallsZooSettings.vue +++ b/web/src/views/settings_components/FunctionCallsZooSettings.vue @@ -96,10 +96,10 @@ :key="func.id || func.full_path" :ref="el => setFunctionRef(func.id || func.full_path, el)" :function_call="func" - :is-mounted="func.isMounted" + :is-mounted="func.isMounted" :is-processing="func.isProcessing" - :get-icon-url="getFunctionIcon" - :on-img-error="imgPlaceholder" + :get-icon-url="getFunctionIcon" + :on-img-error="imgPlaceholder" @mount="handleMount(func)" @unmount="handleUnmount(func)" @remount="handleRemount(func)"