@ibiz-template-plugin/ai-chat 0.0.33 → 0.0.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- @charset "UTF-8";.ibiz-chat-thought-chain{--ibiz-chat-thought-chain-font-size: 12px;--ibiz-chat-thought-chain-header-height: 32px;--ibiz-chat-thought-chain-color-2: var(--ibiz-ai-chat-color-2);--ibiz-chat-thought-chain-bg: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-thought-chain-bg-2: var(--ibiz-ai-chat-hover-background-color-2);--ibiz-chat-thought-chain-border-radius: var(--ibiz-ai-chat-border-radius);--ibiz-chat-thought-chain-hover-bg-color: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-thought-chain-border: var(--ibiz-ai-chat-hover-background-color);display:flex;flex-direction:column;padding:8px 12px;font-size:var(--ibiz-chat-thought-chain-font-size);background-color:var(--ibiz-chat-thought-chain-bg);border-radius:var(--ibiz-chat-thought-chain-border-radius)}.ibiz-chat-thought-chain__item{display:flex}.ibiz-chat-thought-chain__item.is-collapsed:last-child .ibiz-chat-thought-chain__item-icon:after{display:none}.ibiz-chat-thought-chain__item.is-collapsed .ibiz-chat-thought-chain__item-title .ibiz-chat-thought-chain__icon{transform:rotate(180deg)}.ibiz-chat-thought-chain__item.is-collapsed .ibiz-chat-thought-chain__item-description{height:0}.ibiz-chat-thought-chain .ibiz-chat-thought-chain__item-icon{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:18px;padding-top:8px}.ibiz-chat-thought-chain .ibiz-chat-thought-chain__item-icon span{display:flex;flex:none;align-items:center;justify-content:center;width:16px;height:16px;margin-bottom:8px;font-size:10px;color:var(--ibiz-chat-thought-chain-color-2);background:var(--ibiz-chat-thought-chain-bg-2);border-radius:50%}.ibiz-chat-thought-chain .ibiz-chat-thought-chain__item-icon svg{width:16px;height:16px;margin-bottom:8px}.ibiz-chat-thought-chain .ibiz-chat-thought-chain__item-icon:after{width:1px;height:100%;content:"";background:var(--ibiz-chat-thought-chain-border);border-radius:13px;transition:.3s background cubic-bezier(.4,0,.2,1)}.ibiz-chat-thought-chain__item-content{flex:auto;padding-left:4px}.ibiz-chat-thought-chain__item-title{position:relative;display:flex;align-items:center;height:var(--ibiz-chat-thought-chain-header-height);padding:4px 4px 4px 6px;cursor:pointer;transition:.3s background-color}.ibiz-chat-thought-chain__item-title .ibiz-chat-thought-chain__icon{position:absolute;right:8px;flex-shrink:0;font-size:1em;cursor:pointer;transition:.3s transform}.ibiz-chat-thought-chain__item-title:hover{background-color:var(--ibiz-chat-thought-chain-bg-2);border-radius:8px}.ibiz-chat-thought-chain__item-description{height:100%;overflow:hidden;color:var(--ibiz-color-text-2);transition:height .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1)}.ibiz-chat-thought-chain.is-single .ibiz-chat-thought-chain__item-icon:after{display:none}@keyframes loading-animation{75%,to{opacity:0;transform:scale(2)}}.ibiz-chat-suggestions{--ibiz-chat-suggestions-bg: var(--ibiz-ai-chat-background-color);--ibiz-chat-suggestions-hover-bg-color: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-suggestions-border: var(--ibiz-ai-chat-border-color);display:flex;flex-direction:column;gap:var(--ibiz-spacing-base-tight);width:100%}.ibiz-chat-suggestions__item{display:flex;align-items:center;align-self:flex-start;justify-content:space-between;min-width:200px;height:32px;padding:0 12px;overflow:hidden;line-height:32px;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background-color:var(--ibiz-chat-suggestions-bg);border:1px solid var(--ibiz-chat-suggestions-border);border-radius:12px;transition:.3s background-color}.ibiz-chat-suggestions__item:hover{background-color:var(--ibiz-chat-suggestions-hover-bg-color)}.ibiz-chat-suggestions__item.is-action{color:var(--ibiz-ai-chat-color-2);background-color:var(--ibiz-ai-chat-background-color-2)}.ibiz-chat-suggestions__item.is-action:hover{background-color:var(--ibiz-ai-chat-hover-background-color-2)}.ibiz-chat-suggestions__item .ibiz-chat-suggestions__item-icon{margin-left:12px;font-size:18px}.ibiz-chat-tool-call-item{--ibiz-chat-tool-call-item-font-size: 14px;--ibiz-chat-tool-call-item-header-height: 32px;--ibiz-chat-tool-call-item-color-2: var(--ibiz-ai-chat-color-2);--ibiz-chat-tool-call-item-bg: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-tool-call-item-bg-2: var(--ibiz-ai-chat-hover-background-color-2);--ibiz-chat-tool-call-item-border-radius: var(--ibiz-ai-chat-border-radius);--ibiz-chat-tool-call-item-hover-bg-color: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-tool-call-item-border: var(--ibiz-ai-chat-border-color);--ibiz-chat-tool-call-item-bg-primary: #1e1e1e;--ibiz-chat-tool-call-item-bg-secondary: #2d2d2d;--ibiz-chat-tool-call-item-bg-tertiary: #3c3c3c;--ibiz-chat-tool-call-item-text-primary: #d4d4d4;--ibiz-chat-tool-call-item-text-secondary: #9cdcfe;--ibiz-chat-tool-call-item-text-error: #f44747;--ibiz-chat-tool-call-item-text-string: #ce9178;--ibiz-chat-tool-call-item-text-boolean: #569cd6;--ibiz-chat-tool-call-item-text-property: #9cdcfe;--ibiz-chat-tool-call-item-text-number: #b5cea8;--ibiz-chat-tool-call-item-border-color: #444;--ibiz-chat-tool-call-item-accent-primary: #0e639c;--ibiz-chat-tool-call-item-accent-error: rgba(244, 71, 71, .2);margin-bottom:8px;background-color:var(--ibiz-chat-tool-call-item-bg);border:var(--ibiz-chat-tool-call-item-border-color);border-radius:4px}.ibiz-chat-tool-call-item svg{width:14px!important;height:14px!important;cursor:pointer;background:none;border:none;fill:none!important}.ibiz-chat-tool-call-item__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 10px}.ibiz-chat-tool-call-item__header>div{display:flex;column-gap:4px;align-items:center}.ibiz-chat-tool-call-item__header-left{gap:8px;min-width:0;margin-right:8px}.ibiz-chat-tool-call-item__header-left--caption{flex-shrink:0}.ibiz-chat-tool-call-item__header-left--desc{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-chat-tool-call-item__header-right{flex-shrink:0}.ibiz-chat-tool-call-item__content{padding:8px 0}.ibiz-chat-tool-call-item__copy{display:flex;align-items:center}.ibiz-chat-tool-call-item .code-line{display:flex;min-height:18px;margin-bottom:5px;font-family:Consolas,monospace;font-size:.95rem}.ibiz-chat-tool-call-item .line-number{min-width:20px;margin-right:15px;color:#6a9955;text-align:right;user-select:none}.ibiz-chat-tool-call-item .property{color:var(--ibiz-chat-tool-call-item-text-property)}.ibiz-chat-tool-call-item .string{overflow:hidden;color:var(--ibiz-chat-tool-call-item-text-string);text-overflow:ellipsis;white-space:nowrap}.ibiz-chat-tool-call-item .boolean{color:var(--ibiz-chat-tool-call-item-text-boolean)}.ibiz-chat-tool-call-item .number{color:var(--ibiz-chat-tool-call-item-text-number)}.ibiz-chat-tool-call-item .null{color:var(--ibiz-chat-tool-call-item-text-boolean)}.ibiz-chat-tool-call-item .error{color:var(--ibiz-chat-tool-call-item-text-error)}.ibiz-chat-tool-call{--ibiz-chat-tool-call-font-size: 14px;--ibiz-chat-tool-call-header-height: 32px;--ibiz-chat-tool-call-color-2: var(--ibiz-ai-chat-color-2);--ibiz-chat-tool-call-bg: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-tool-call-bg-2: var(--ibiz-ai-chat-hover-background-color-2);--ibiz-chat-tool-call-border-radius: var(--ibiz-ai-chat-border-radius);--ibiz-chat-tool-call-hover-bg-color: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-tool-call-border: var(--ibiz-ai-chat-border-color);font-size:var(--ibiz-chat-tool-call-font-size);border-radius:var(--ibiz-chat-tool-call-border-radius)}.ibiz-chat-tool-call__toggle{display:block;padding:8px 0;margin-top:8px;color:var(--ibiz-chat-tool-call-color-2);text-align:center;cursor:pointer;background-color:var(--ibiz-chat-tool-call-bg);border-radius:var(--ibiz-chat-tool-call-border-radius)}.ibiz-chat-tool-call__toggle:hover{background-color:var(--ibiz-chat-tool-call-hover-bg-color)}.ibiz-markdown-message{padding:6px 10px}.ibiz-markdown-message .cherry{border-radius:var(--ibiz-ai-chat-border-radius);box-shadow:none}.ibiz-markdown-message .cherry *::-webkit-scrollbar{width:var(--ibiz-ai-chat-scroll-bar-width);height:var(--ibiz-ai-chat-scroll-bar-height)}.ibiz-markdown-message .cherry *::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-fill-2);border-radius:var(--ibiz-ai-chat-scroll-bar-radius)}.ibiz-markdown-message .cherry *::-webkit-scrollbar-thumb:hover{background-color:var(--ibiz-color-fill-2)}.ibiz-markdown-message .cherry div[data-type=codeBlock] pre[class*=language-]::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,.2)}.ibiz-markdown-message .cherry-markdown pre{background-color:var(--ibiz-ai-chat-background-color)}.ibiz-markdown-message .cherry-previewer{padding:8px;border:0}.ibiz-markdown-message .cherry-previewer figure{max-width:1200px}.ibiz-markdown-message .cherry-previewer figure>svg{width:100%;min-height:100px}.ibiz-markdown-message .anchor{display:none!important}.ibiz-markdown-message.is-loading .ibiz-markdown-message-header .ibiz-markdown-message-header__caption{font-size:0}.ibiz-markdown-message.is-loading .ibiz-markdown-message-header .ibiz-markdown-message-header__caption:after{display:block;width:11px;height:11px;content:"";border:3px solid #3b3b3b;border-top-color:transparent;border-radius:100%;animation:circle infinite .75s linear}.ibiz-markdown-message-header{display:flex;margin-bottom:8px}.ibiz-markdown-message-header__caption{flex:0;width:auto;min-width:32px;min-height:32px;padding:6px;margin-right:2px;font-size:14px;font-weight:800;color:var(--ibiz-ai-chat-color)}.ibiz-markdown-message-header__timeout{display:flex;align-items:center;padding:0 8px;font-size:14px;color:var(--ibiz-color-danger)}.ibiz-markdown-message-content{padding:10px 16px;background-color:var(--ibiz-ai-chat-background-color-light);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-markdown-message-content .cherry-markdown.theme__dark ul.cherry-list__default,.ibiz-markdown-message-content .cherry.theme__dark.cherry--no-toolbar,.ibiz-markdown-message-content .cherry div.cherry-previewer{color:var(--ibiz-ai-chat-color);background-color:var(--ibiz-ai-chat-background-color-light)}.ibiz-markdown-message-content .ibiz-chat-thought-chain+.ibiz-chat-tool-call{margin-top:8px}.ibiz-markdown-message-footer{padding:10px 0}@keyframes circle{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ibiz-ossfile-material{display:flex;width:100%;height:100%}.ibiz-ossfile-material-left{display:flex;align-items:center;justify-content:center}.ibiz-ossfile-material-right{width:calc(100% - 24px);height:100%;padding-left:8px}.ibiz-ossfile-material__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-ossfile-material__metadata{display:flex;gap:8px;align-items:center;font-size:14px}.ibiz-ossfile-material__metadata>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-common-material{display:flex;width:100%;height:100%}.ibiz-common-material-left{display:flex;align-items:center;justify-content:center;font-size:18px}.ibiz-common-material-right{width:calc(100% - 24px);height:100%;padding-left:8px}.ibiz-common-material__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-common-material__metadata{display:flex;gap:8px;align-items:center;font-size:14px}.ibiz-common-material__metadata>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-chat-input-material-item{position:relative;width:200px;height:60px;padding:8px;color:var(--ibiz-ai-chat-color);background-color:var(--ibiz-ai-chat-background-color);border:1px solid var(--ibiz-ai-chat-border-color);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-input-material-item:hover{color:var(--ibiz-ai-chat-hover-color);cursor:pointer;background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-input-material-item:hover .ibiz-chat-input-material-item__icon{opacity:1}.ibiz-chat-input-material-item.is-disabled{pointer-events:none}.ibiz-chat-input-material-item__icon{position:absolute;top:-4px;right:-4px;opacity:0}.ibiz-user-message-question{padding:6px 10px}.ibiz-user-message-question__content{position:relative;box-sizing:border-box;display:flex;justify-content:end;max-width:100%;font-size:14px;text-align:left;word-break:break-word;user-select:text;transition:all .3s ease}.ibiz-user-message-question__content--body{width:fit-content;padding:10px 16px;margin:0;font-size:14px;line-height:1.5;color:var(--color-fg-default);word-wrap:break-word;background:#e7f8ff;background-color:var(--ibiz-ai-chat-background-color-light);border-radius:var(--ibiz-ai-chat-border-radius);text-size-adjust:100%}.ibiz-user-message-question__content--body:before{display:table;content:""}.ibiz-user-message-question__content--body:after{display:table;clear:both;content:""}.ibiz-user-message-question__content--material{display:flex;flex-flow:row-reverse wrap;gap:8px;align-items:center;margin-bottom:8px}.ibiz-user-message-question__content .cherry{min-height:0;border-radius:var(--ibiz-ai-chat-border-radius);box-shadow:none}.ibiz-user-message-question__content .cherry *::-webkit-scrollbar{width:var(--ibiz-ai-chat-scroll-bar-width);height:var(--ibiz-ai-chat-scroll-bar-height)}.ibiz-user-message-question__content .cherry *::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-fill-2);border-radius:var(--ibiz-ai-chat-scroll-bar-radius)}.ibiz-user-message-question__content .cherry *::-webkit-scrollbar-thumb:hover{background-color:var(--ibiz-color-fill-2)}.ibiz-user-message-question__content .cherry-markdown p{margin:0}.ibiz-user-message-question__content .cherry-markdown pre{background-color:var(--ibiz-ai-chat-background-color)}.ibiz-user-message-question__content .cherry div.cherry-previewer{padding:0;color:var(--ibiz-ai-chat-color);background-color:var(--ibiz-ai-chat-background-color-light);border:0}.ibiz-user-message-question__content .cherry div.cherry-previewer figure{max-width:1200px}.ibiz-user-message-question__content .cherry div.cherry-previewer figure>svg{width:100%;min-height:100px}.ibiz-user-message-question__content .anchor{display:none!important}.ibiz-user-message-question__user-header{display:flex;align-items:center;justify-content:end;width:100%;height:32px;margin-bottom:8px}.ibiz-user-message-question__user{padding:6px;font-size:14px;font-weight:800}.ibiz-error-message{padding:6px 10px;text-align:left}.ibiz-error-message__content{width:fit-content;padding:10px 16px;color:#fff;background-color:red;border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-error-message .ibiz-error-message-header{display:flex;margin-bottom:8px}.ibiz-error-message-header__caption{flex:0;width:auto;min-width:32px;min-height:32px;padding:6px;margin-right:2px;font-size:14px;font-weight:800;color:var(--ibiz-ai-chat-color)}.ibiz-unknown-message{display:flex;padding:6px 10px;justify-content:end}.ibiz-unknown-message__content{padding:10px 16px;color:#000;width:max-content;background-color:#ccc;border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-message-item{padding:6px 0}.ibiz-chat-message-item .pre-wrap-container{word-wrap:break-word;white-space:pre-wrap}.ibiz-chat-toolbar-item{position:relative;display:flex;align-items:center;white-space:nowrap;cursor:pointer}.ibiz-chat-toolbar-item__content{display:flex;align-items:center;white-space:nowrap}.ibiz-chat-toolbar-item__content--icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:18px;height:18px;font-size:18px}.ibiz-chat-toolbar-item__content--label,.ibiz-chat-toolbar-item__more{display:flex;align-items:center}.ibiz-chat-toolbar-item__more--icon{font-size:18px}.ibiz-chat-toolbar-item-default{width:fit-content;font-size:14px;color:var(--ibiz-ai-chat-color-2)}.ibiz-chat-toolbar-item-default .ibiz-chat-toolbar-item__content{z-index:9;gap:6px;padding:2px 14px;line-height:28px;background-color:var(--ibiz-ai-chat-background-color-2);border-radius:12px}.ibiz-chat-toolbar-item-default.is-disabled{cursor:not-allowed}.ibiz-chat-toolbar-item-default.is-disabled .ibiz-chat-toolbar-item__content,.ibiz-chat-toolbar-item-default.is-disabled .ibiz-chat-toolbar-item__more{background-color:var(--ibiz-ai-chat-disabled-color)}.ibiz-chat-toolbar-item-default:not(.is-disabled) .ibiz-chat-toolbar-item__content:hover,.ibiz-chat-toolbar-item-default:not(.is-disabled) .ibiz-chat-toolbar-item__more:hover{background-color:var(--ibiz-ai-chat-hover-background-color-2)}.ibiz-chat-toolbar-item-default.is-more .ibiz-chat-toolbar-item__content{padding:2px 8px 2px 14px;border-radius:12px 0 0 12px}.ibiz-chat-toolbar-item-default .ibiz-chat-toolbar-item__more{z-index:9;height:32px;padding:2px 14px 2px 8px;background-color:var(--ibiz-ai-chat-background-color-2);border-left:1px solid var(--ibiz-ai-chat-border-color);border-radius:0 12px 12px 0}.ibiz-chat-toolbar-item-circle{max-width:32px;height:32px;padding:6px;overflow:hidden;font-size:12px;white-space:nowrap;border:1px solid var(--ibiz-ai-chat-border-color);border-radius:15px;transition:max-width .8s ease}.ibiz-chat-toolbar-item-circle.is-disabled{color:var(--ibiz-ai-chat-disabled-color);cursor:not-allowed}.ibiz-chat-toolbar-item-circle:hover:not(.is-disabled){max-width:200px;color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-toolbar-item-circle .ibiz-chat-toolbar-item__content--label{width:calc(100% - 32px);margin-left:8px;font-size:14px}.ibiz-chat-toolbar-item-dropdown{position:absolute;right:0;bottom:36px;display:flex;flex-direction:column;gap:4px;max-width:150px;padding:4px;background-color:var(--ibiz-ai-chat-background-color-2);border-radius:6px}.ibiz-chat-toolbar-item-dropdown__item{display:flex;gap:6px;align-items:center;padding:0 8px;line-height:32px;cursor:pointer;border-radius:6px}.ibiz-chat-toolbar-item-dropdown__item.is-disabled{cursor:not-allowed;background-color:var(--ibiz-ai-chat-disabled-color)}.ibiz-chat-toolbar-item-dropdown__item:hover:not(.is-disabled){background-color:var(--ibiz-ai-chat-hover-background-color-2)}.ibiz-chat-toolbar-item-dropdown__item--icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:18px;height:18px;font-size:18px}.ibiz-chat-toolbar-item-dropdown__item--label{flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-chat-toolbar{display:flex;flex-wrap:wrap;align-items:center}.ibiz-chat-toolbar .ibiz-chat-toolbar-item:not(:first-child){margin-left:6px}.ibiz-chat-back-bottom{position:absolute;z-index:5;display:none;align-items:center;justify-content:center;width:32px;height:32px;font-size:var(--ibiz-font-size-header-6);color:var(--ibiz-ai-chat-color-2);cursor:pointer;background-color:var(--ibiz-ai-chat-background-color-2);border-radius:var(--ibiz-border-radius-circle)}.ibiz-chat-back-bottom:hover{background-color:var(--ibiz-ai-chat-hover-background-color-2)}.ibiz-chat-back-bottom__icon{font-size:20px}.ibiz-chat-back-bottom.is-visible{display:flex}.ibiz-chat-messages{width:calc(100% - 12px);height:calc(100% - 12px);margin:6px;overflow:hidden auto}.ibiz-chat-messages::-webkit-scrollbar{width:6px}.ibiz-chat-messages::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-fill-2);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-input-material{display:flex;flex-wrap:wrap;gap:8px}.ibiz-pop-trigger-container{font-size:12px}.ibiz-pop{gap:4px;padding:4px;display:flex;min-width:120px;border-radius:8px;flex-direction:column;background-color:var(--ibiz-color-bg-3);border:1px solid var(--ibiz-color-border)}.ibiz-pop__item{display:flex;padding:0 8px;cursor:pointer;line-height:32px;border-radius:6px;align-items:center}.ibiz-pop__item:hover{background-color:var(--ibiz-color-primary-hover)}.ibiz-pop__item--caption{min-width:0;flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-pop__item svg{width:16px;height:16px;flex-shrink:0;margin-right:8px;fill:currentcolor;display:inline-block;vertical-align:middle}.ibiz-chat-input-material-wrapper{max-height:72px;padding:4px;overflow:hidden auto;font-size:16px;color:var(--ibiz-ai-chat-color);background-color:var(--ibiz-ai-chat-background-color)}.ibiz-chat-input-main-wrapper{display:flex;align-items:center;border:1px solid var(--ibiz-ai-chat-border-color);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-input__textarea{flex-grow:1;max-height:6em;padding:4px;overflow:hidden auto!important;font-size:16px;color:var(--ibiz-ai-chat-color);resize:none;background-color:var(--ibiz-ai-chat-background-color);border:none;outline:none}.ibiz-chat-input__textarea::-webkit-scrollbar{width:var(--ibiz-ai-chat-scroll-bar-width);height:var(--ibiz-ai-chat-scroll-bar-height)}.ibiz-chat-input__textarea::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-fill-2);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-input-action-wrapper{display:flex;gap:6px;align-items:center;padding:6px;color:var(--ibiz-ai-chat-color)}.ibiz-chat-input-action-wrapper__action-item{padding:3px;font-size:12px;border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-input-action-wrapper__action-item:hover{color:var(--ibiz-ai-chat-hover-color);cursor:pointer;background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-input-action-wrapper__action-item.is-disabled{color:var(--ibiz-ai-chat-disabled-color);pointer-events:none}.ibiz-chat-input-pop-actions{width:160px;min-height:48px;padding:8px}.ibiz-chat-input-pop-action-item{display:flex;align-items:center;padding:8px;margin-bottom:4px;line-height:22px;cursor:pointer;border-radius:4px;transition:background-color .2s}.ibiz-chat-input-pop-action-item:hover{background-color:var(--ibiz-color-fill-0)}.ibiz-chat-input-pop-action-item-icon{width:18px;height:18px;margin-right:8px;font-size:18px;color:var(--ibiz-ai-chat-color);pointer-events:none}.ibiz-chat-input-pop-action-item-title{font-size:14px;line-height:22px;color:var(--ibiz-ai-chat-color);pointer-events:none}.ibiz-chat-topic-item{height:38px;display:flex;padding:0 8px;cursor:pointer;border-radius:12px;position:relative;align-items:center;font-size:var(--ibiz-font-size-regular)}.ibiz-chat-topic-item:hover:not(.is-edit){color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-topic-item:hover:not(.is-edit) .ibiz-chat-topic-item__icon{opacity:1}.ibiz-chat-topic-item.is-active:not(.is-edit){color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-topic-item.is-edit{border:2px solid var(--ibiz-ai-chat-background-color-2)}.ibiz-chat-topic-item__caption{width:100%;height:100%;display:flex;align-items:center}.ibiz-chat-topic-item__caption--text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-chat-topic-item__caption--editor{width:100%;height:100%;border:none;outline:none;color:var(--ibiz-ai-chat-color);background:var(--ibiz-ai-chat-background-color)}.ibiz-chat-topic-item__icon{top:50%;gap:8px;opacity:0;right:10px;height:24px;display:flex;outline:none;padding:0 8px;border-radius:8px;position:absolute;align-items:center;justify-content:flex-end;transform:translateY(-50%);color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-topic-item__icon--item{font-size:12px}.ibiz-chat-search{gap:8px;width:100%;display:flex;line-height:32px;border-radius:1px;padding:1px 11px;align-items:center;justify-content:center;border:1px solid var(--ibiz-ai-chat-border-color)}.ibiz-chat-search:hover,.ibiz-chat-search.is-focus{border:1px solid var(--ibiz-ai-chat-background-color-2)}.ibiz-chat-search__prefix{width:14px;height:14px;display:flex;flex-shrink:0;font-size:14px;align-items:center}.ibiz-chat-search__inner{padding:2px 0 0;outline:0;flex-grow:1;border:none;height:28px;min-width:0;color:inherit;line-height:28px;background-color:initial}.ibiz-chat-topics{display:flex;flex-direction:column;gap:8px;height:100%;padding:8px 0}.ibiz-chat-topics__header{flex-shrink:0;padding:0 8px}.ibiz-chat-topics__main{flex-grow:1;padding:0 8px;overflow-y:auto}.ibiz-chat-topics__empty{font-size:var(--ibiz-font-size-regular);text-align:center}.ibiz-chat-topics__footer{display:flex;flex-shrink:0;align-items:center;justify-content:center;padding:0 8px}.ibiz-chat-topics__action{display:flex;gap:4px;align-items:center;padding:4px 12px;font-size:14px;cursor:pointer;border:1px solid var(--ibiz-ai-chat-border-color);border-radius:2px}.ibiz-chat-topics__action:hover{color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-topics__action>svg{width:14px!important;height:14px!important}.ibiz-chat-minimize{width:56px;height:56px;display:flex;z-index:99999;cursor:pointer;position:absolute;border-radius:50%;align-items:center;justify-content:center}.ibiz-chat-minimize.is-hidden{display:none}.ibiz-chat-minimize.is-show-halo{width:90px;height:90px;background-size:cover;background-position:center;background-repeat:no-repeat;background-image:url(assets/gif/halo.gif)}.ibiz-chat-minimize__content{width:56px;height:56px;display:flex;border-radius:50%;align-items:center;justify-content:center;color:var(--ibiz-ai-chat-color);background-color:var(--ibiz-ai-chat-background-color)}.ibiz-chat-minimize__content:hover{color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-minimize__content svg{fill:currentcolor;display:inline-block;vertical-align:middle}.ibiz-chat-minimize__content.is-show-border{border:1px solid var(--ibiz-ai-chat-border-color)}.ibiz-chat-minimize__content--popover{left:50%;bottom:90px;padding:8px;display:block;font-size:12px;border-radius:8px;position:absolute;transform:translate(-50%);box-shadow:0 2px 8px rgba(0,0,0,.1);background-color:var(--ibiz-ai-chat-background-color);color:var(--ibiz-ai-chat-color);border:1px solid var(--ibiz-ai-chat-border-color)}.ibiz-chat-minimize__content--popover .typewriter{direction:rtl;overflow:hidden;max-width:200px;width:fit-content;white-space:nowrap;text-overflow:ellipsis;animation:typing 3s steps(40,end)}@keyframes blink{0%,to{opacity:0}50%{opacity:1}}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:var(--ibiz-ai-chat-color)}}.ibiz-chat-container{--ibiz-ai-chat-color: #3b3b3b;--ibiz-ai-chat-icon-color: #3b3b3b;--ibiz-ai-chat-border-color: #e5e5e5;--ibiz-ai-chat-background-color: #fff;--ibiz-ai-chat-background-color-light: #f8fafb;--ibiz-ai-chat-disabled-color: rgba(59, 59, 59, .6);--ibiz-ai-chat-hover-color: #3b3b3b;--ibiz-ai-chat-hover-background-color: #e9e9e9;--ibiz-ai-chat-hover-border-color: #e5e5e5;--ibiz-ai-chat-border-radius: 5px;--ibiz-ai-chat-color-2: #4d6bfe;--ibiz-ai-chat-background-color-2: rgb(219, 234, 254);--ibiz-ai-chat-hover-background-color-2: #c3daf8;--ibiz-ai-chat-scroll-bar-width: 8px;--ibiz-ai-chat-scroll-bar-height: 8px;--ibiz-ai-chat-scroll-bar-radius: 4px}.ibiz-chat-container__dialog{position:absolute;z-index:1000;display:flex;flex-direction:column;background-color:var(--ibiz-ai-chat-background-color);border:1px solid var(--ibiz-ai-chat-border-color);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-container__dialog *{box-sizing:border-box}.ibiz-chat-container__dialog svg{display:inline-block;width:1em;height:1em;font-size:1.5em;vertical-align:middle;fill:currentcolor}.ibiz-chat-container__dialog.is-hidden{display:none}.ibiz-chat-container__toolbar{position:absolute;bottom:118px;left:50%;gap:8px 4px;justify-content:center;width:max-content;min-height:48px;margin:0;transform:translate(-50%)}.ibiz-chat-container__toolbar.is-has-materials{bottom:180px}.ibiz-chat-container *::-webkit-scrollbar{width:var(--ibiz-ai-chat-scroll-bar-width);height:var(--ibiz-ai-chat-scroll-bar-height)}.ibiz-chat-container *::-webkit-scrollbar-thumb{border-radius:var(--ibiz-ai-chat-scroll-bar-radius)}.ibiz-chat-container-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;height:60px;padding:4px;cursor:move;border-bottom:1px solid var(--ibiz-ai-chat-border-color)}.ibiz-chat-container-header-caption{padding:0 6px 0 16px;font-size:18px;font-weight:800}.ibiz-chat-container-header-action-wrapper{display:flex;gap:6px;align-items:center;height:100%;padding:0 6px}.ibiz-chat-container-header-action-wrapper__action-item{flex-shrink:0;padding:3px;font-size:12px;color:var(--ibiz-ai-chat-color);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-container-header-action-wrapper__action-item:hover{color:var(--ibiz-ai-chat-hover-color);cursor:pointer;background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-container-main{display:flex;height:calc(100% - 60px)}.ibiz-chat-container-main__left{flex-shrink:0;width:200px;height:100%;border-right:1px solid var(--ibiz-ai-chat-border-color)}.ibiz-chat-container-main__right{position:relative;display:flex;flex-direction:column;flex-grow:1;width:calc(100% - 200px);height:100%}.ibiz-chat-container-main__right .ibiz-chat-messages{padding-bottom:48px}.ibiz-chat-container-main__default{display:flex;flex-direction:column;flex-grow:1;height:calc(100% - 60px)}.ibiz-chat-container-content{position:relative;flex-grow:1;overflow:hidden}.ibiz-chat-container-footer{flex-shrink:0;padding:3px 6px;border-top:1px solid var(--ibiz-ai-chat-border-color)}
1
+ @charset "UTF-8";.ibiz-chat-thought-chain{--ibiz-chat-thought-chain-font-size: 12px;--ibiz-chat-thought-chain-header-height: 32px;--ibiz-chat-thought-chain-color-2: var(--ibiz-ai-chat-color-2);--ibiz-chat-thought-chain-bg: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-thought-chain-bg-2: var(--ibiz-ai-chat-hover-background-color-2);--ibiz-chat-thought-chain-border-radius: var(--ibiz-ai-chat-border-radius);--ibiz-chat-thought-chain-hover-bg-color: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-thought-chain-border: var(--ibiz-ai-chat-hover-background-color);display:flex;flex-direction:column;padding:8px 12px;font-size:var(--ibiz-chat-thought-chain-font-size);background-color:var(--ibiz-chat-thought-chain-bg);border-radius:var(--ibiz-chat-thought-chain-border-radius)}.ibiz-chat-thought-chain__item{display:flex}.ibiz-chat-thought-chain__item.is-collapsed:last-child .ibiz-chat-thought-chain__item-icon:after{display:none}.ibiz-chat-thought-chain__item.is-collapsed .ibiz-chat-thought-chain__item-title .ibiz-chat-thought-chain__icon{transform:rotate(180deg)}.ibiz-chat-thought-chain__item.is-collapsed .ibiz-chat-thought-chain__item-description{height:0}.ibiz-chat-thought-chain .ibiz-chat-thought-chain__item-icon{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:18px;padding-top:8px}.ibiz-chat-thought-chain .ibiz-chat-thought-chain__item-icon span{display:flex;flex:none;align-items:center;justify-content:center;width:16px;height:16px;margin-bottom:8px;font-size:10px;color:var(--ibiz-chat-thought-chain-color-2);background:var(--ibiz-chat-thought-chain-bg-2);border-radius:50%}.ibiz-chat-thought-chain .ibiz-chat-thought-chain__item-icon svg{width:16px;height:16px;margin-bottom:8px}.ibiz-chat-thought-chain .ibiz-chat-thought-chain__item-icon:after{width:1px;height:100%;content:"";background:var(--ibiz-chat-thought-chain-border);border-radius:13px;transition:.3s background cubic-bezier(.4,0,.2,1)}.ibiz-chat-thought-chain__item-content{flex:auto;padding-left:4px}.ibiz-chat-thought-chain__item-title{position:relative;display:flex;align-items:center;height:var(--ibiz-chat-thought-chain-header-height);padding:4px 4px 4px 6px;cursor:pointer;transition:.3s background-color}.ibiz-chat-thought-chain__item-title .ibiz-chat-thought-chain__icon{position:absolute;right:8px;flex-shrink:0;font-size:1em;cursor:pointer;transition:.3s transform}.ibiz-chat-thought-chain__item-title:hover{background-color:var(--ibiz-chat-thought-chain-bg-2);border-radius:8px}.ibiz-chat-thought-chain__item-description{height:100%;overflow:hidden;color:var(--ibiz-color-text-2);transition:height .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1)}.ibiz-chat-thought-chain.is-single .ibiz-chat-thought-chain__item-icon:after{display:none}@keyframes loading-animation{75%,to{opacity:0;transform:scale(2)}}.ibiz-chat-suggestions{--ibiz-chat-suggestions-bg: var(--ibiz-ai-chat-background-color);--ibiz-chat-suggestions-hover-bg-color: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-suggestions-border: var(--ibiz-ai-chat-border-color);display:flex;flex-direction:column;gap:var(--ibiz-spacing-base-tight);width:100%}.ibiz-chat-suggestions__item{display:flex;align-items:center;align-self:flex-start;justify-content:space-between;min-width:200px;height:32px;padding:0 12px;overflow:hidden;line-height:32px;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background-color:var(--ibiz-chat-suggestions-bg);border:1px solid var(--ibiz-chat-suggestions-border);border-radius:12px;transition:.3s background-color}.ibiz-chat-suggestions__item:hover{background-color:var(--ibiz-chat-suggestions-hover-bg-color)}.ibiz-chat-suggestions__item.is-action{color:var(--ibiz-ai-chat-color-2);background-color:var(--ibiz-ai-chat-background-color-2)}.ibiz-chat-suggestions__item.is-action:hover{background-color:var(--ibiz-ai-chat-hover-background-color-2)}.ibiz-chat-suggestions__item .ibiz-chat-suggestions__item-icon{margin-left:12px;font-size:18px}.ibiz-chat-tool-call-item{--ibiz-chat-tool-call-item-font-size: 14px;--ibiz-chat-tool-call-item-header-height: 32px;--ibiz-chat-tool-call-item-color-2: var(--ibiz-ai-chat-color-2);--ibiz-chat-tool-call-item-bg: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-tool-call-item-bg-2: var(--ibiz-ai-chat-hover-background-color-2);--ibiz-chat-tool-call-item-border-radius: var(--ibiz-ai-chat-border-radius);--ibiz-chat-tool-call-item-hover-bg-color: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-tool-call-item-border: var(--ibiz-ai-chat-border-color);--ibiz-chat-tool-call-item-bg-primary: #1e1e1e;--ibiz-chat-tool-call-item-bg-secondary: #2d2d2d;--ibiz-chat-tool-call-item-bg-tertiary: #3c3c3c;--ibiz-chat-tool-call-item-text-primary: #d4d4d4;--ibiz-chat-tool-call-item-text-secondary: #9cdcfe;--ibiz-chat-tool-call-item-text-error: #f44747;--ibiz-chat-tool-call-item-text-string: #ce9178;--ibiz-chat-tool-call-item-text-boolean: #569cd6;--ibiz-chat-tool-call-item-text-property: #9cdcfe;--ibiz-chat-tool-call-item-text-number: #b5cea8;--ibiz-chat-tool-call-item-border-color: #444;--ibiz-chat-tool-call-item-accent-primary: #0e639c;--ibiz-chat-tool-call-item-accent-error: rgba(244, 71, 71, .2);margin-bottom:8px;background-color:var(--ibiz-chat-tool-call-item-bg);border:var(--ibiz-chat-tool-call-item-border-color);border-radius:4px}.ibiz-chat-tool-call-item svg{width:14px!important;height:14px!important;cursor:pointer;background:none;border:none;fill:none!important}.ibiz-chat-tool-call-item__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 10px}.ibiz-chat-tool-call-item__header>div{display:flex;column-gap:4px;align-items:center}.ibiz-chat-tool-call-item__header-left{gap:8px;min-width:0;margin-right:8px}.ibiz-chat-tool-call-item__header-left--caption{flex-shrink:0}.ibiz-chat-tool-call-item__header-left--desc{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-chat-tool-call-item__header-right{flex-shrink:0}.ibiz-chat-tool-call-item__content{padding:8px 0}.ibiz-chat-tool-call-item__copy{display:flex;align-items:center}.ibiz-chat-tool-call-item .code-line{display:flex;min-height:18px;margin-bottom:5px;font-family:Consolas,monospace;font-size:.95rem}.ibiz-chat-tool-call-item .line-number{min-width:20px;margin-right:15px;color:#6a9955;text-align:right;user-select:none}.ibiz-chat-tool-call-item .property{color:var(--ibiz-chat-tool-call-item-text-property)}.ibiz-chat-tool-call-item .string{overflow:hidden;color:var(--ibiz-chat-tool-call-item-text-string);text-overflow:ellipsis;white-space:nowrap}.ibiz-chat-tool-call-item .boolean{color:var(--ibiz-chat-tool-call-item-text-boolean)}.ibiz-chat-tool-call-item .number{color:var(--ibiz-chat-tool-call-item-text-number)}.ibiz-chat-tool-call-item .null{color:var(--ibiz-chat-tool-call-item-text-boolean)}.ibiz-chat-tool-call-item .error{color:var(--ibiz-chat-tool-call-item-text-error)}.ibiz-chat-tool-call{--ibiz-chat-tool-call-font-size: 14px;--ibiz-chat-tool-call-header-height: 32px;--ibiz-chat-tool-call-color-2: var(--ibiz-ai-chat-color-2);--ibiz-chat-tool-call-bg: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-tool-call-bg-2: var(--ibiz-ai-chat-hover-background-color-2);--ibiz-chat-tool-call-border-radius: var(--ibiz-ai-chat-border-radius);--ibiz-chat-tool-call-hover-bg-color: var(--ibiz-ai-chat-hover-background-color);--ibiz-chat-tool-call-border: var(--ibiz-ai-chat-border-color);font-size:var(--ibiz-chat-tool-call-font-size);border-radius:var(--ibiz-chat-tool-call-border-radius)}.ibiz-chat-tool-call__toggle{display:block;padding:8px 0;margin-top:8px;color:var(--ibiz-chat-tool-call-color-2);text-align:center;cursor:pointer;background-color:var(--ibiz-chat-tool-call-bg);border-radius:var(--ibiz-chat-tool-call-border-radius)}.ibiz-chat-tool-call__toggle:hover{background-color:var(--ibiz-chat-tool-call-hover-bg-color)}.ibiz-markdown-message{padding:6px 10px}.ibiz-markdown-message .cherry{border-radius:var(--ibiz-ai-chat-border-radius);box-shadow:none}.ibiz-markdown-message .cherry *::-webkit-scrollbar{width:var(--ibiz-ai-chat-scroll-bar-width);height:var(--ibiz-ai-chat-scroll-bar-height)}.ibiz-markdown-message .cherry *::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-fill-2);border-radius:var(--ibiz-ai-chat-scroll-bar-radius)}.ibiz-markdown-message .cherry *::-webkit-scrollbar-thumb:hover{background-color:var(--ibiz-color-fill-2)}.ibiz-markdown-message .cherry div[data-type=codeBlock] pre[class*=language-]::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,.2)}.ibiz-markdown-message .cherry-markdown pre{background-color:var(--ibiz-ai-chat-background-color)}.ibiz-markdown-message .cherry-previewer{padding:8px;border:0}.ibiz-markdown-message .cherry-previewer figure{max-width:1200px}.ibiz-markdown-message .cherry-previewer figure>svg{width:100%;min-height:100px}.ibiz-markdown-message .anchor{display:none!important}.ibiz-markdown-message.is-loading .ibiz-markdown-message-header .ibiz-markdown-message-header__caption{font-size:0}.ibiz-markdown-message.is-loading .ibiz-markdown-message-header .ibiz-markdown-message-header__caption:after{display:block;width:11px;height:11px;content:"";border:3px solid #3b3b3b;border-top-color:transparent;border-radius:100%;animation:circle infinite .75s linear}.ibiz-markdown-message-header{display:flex;margin-bottom:8px}.ibiz-markdown-message-header__caption{flex:0;width:auto;min-width:32px;min-height:32px;padding:6px;margin-right:2px;font-size:14px;font-weight:800;color:var(--ibiz-ai-chat-color)}.ibiz-markdown-message-header__timeout{display:flex;align-items:center;padding:0 8px;font-size:14px;color:var(--ibiz-color-danger)}.ibiz-markdown-message-content{padding:10px 16px;background-color:var(--ibiz-ai-chat-background-color-light);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-markdown-message-content .cherry-markdown.theme__dark ul.cherry-list__default,.ibiz-markdown-message-content .cherry.theme__dark.cherry--no-toolbar,.ibiz-markdown-message-content .cherry div.cherry-previewer{color:var(--ibiz-ai-chat-color);background-color:var(--ibiz-ai-chat-background-color-light)}.ibiz-markdown-message-content .ibiz-chat-thought-chain+.ibiz-chat-tool-call{margin-top:8px}.ibiz-markdown-message-footer{padding:10px 0}@keyframes circle{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ibiz-ossfile-material{display:flex;width:100%;height:100%}.ibiz-ossfile-material-left{display:flex;align-items:center;justify-content:center}.ibiz-ossfile-material-right{width:calc(100% - 24px);height:100%;padding-left:8px}.ibiz-ossfile-material__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-ossfile-material__metadata{display:flex;gap:8px;align-items:center;font-size:14px}.ibiz-ossfile-material__metadata>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-common-material{display:flex;width:100%;height:100%}.ibiz-common-material-left{display:flex;align-items:center;justify-content:center;font-size:18px}.ibiz-common-material-right{width:calc(100% - 24px);height:100%;padding-left:8px}.ibiz-common-material__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-common-material__metadata{display:flex;gap:8px;align-items:center;font-size:14px}.ibiz-common-material__metadata>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-chat-input-material-item{position:relative;width:200px;height:60px;padding:8px;color:var(--ibiz-ai-chat-color);background-color:var(--ibiz-ai-chat-background-color);border:1px solid var(--ibiz-ai-chat-border-color);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-input-material-item:hover{color:var(--ibiz-ai-chat-hover-color);cursor:pointer;background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-input-material-item:hover .ibiz-chat-input-material-item__icon{opacity:1}.ibiz-chat-input-material-item.is-disabled{pointer-events:none}.ibiz-chat-input-material-item__icon{position:absolute;top:-4px;right:-4px;opacity:0}.ibiz-user-message-question{padding:6px 10px}.ibiz-user-message-question__content{position:relative;box-sizing:border-box;display:flex;justify-content:end;max-width:100%;font-size:14px;text-align:left;word-break:break-word;user-select:text;transition:all .3s ease}.ibiz-user-message-question__content--body{width:fit-content;padding:10px 16px;margin:0;font-size:14px;line-height:1.5;color:var(--color-fg-default);word-wrap:break-word;background:#e7f8ff;background-color:var(--ibiz-ai-chat-background-color-light);border-radius:var(--ibiz-ai-chat-border-radius);text-size-adjust:100%}.ibiz-user-message-question__content--body:before{display:table;content:""}.ibiz-user-message-question__content--body:after{display:table;clear:both;content:""}.ibiz-user-message-question__content--material{display:flex;flex-flow:row-reverse wrap;gap:8px;align-items:center;margin-bottom:8px}.ibiz-user-message-question__content .cherry{min-height:0;border-radius:var(--ibiz-ai-chat-border-radius);box-shadow:none}.ibiz-user-message-question__content .cherry *::-webkit-scrollbar{width:var(--ibiz-ai-chat-scroll-bar-width);height:var(--ibiz-ai-chat-scroll-bar-height)}.ibiz-user-message-question__content .cherry *::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-fill-2);border-radius:var(--ibiz-ai-chat-scroll-bar-radius)}.ibiz-user-message-question__content .cherry *::-webkit-scrollbar-thumb:hover{background-color:var(--ibiz-color-fill-2)}.ibiz-user-message-question__content .cherry-markdown p{margin:0}.ibiz-user-message-question__content .cherry-markdown pre{background-color:var(--ibiz-ai-chat-background-color)}.ibiz-user-message-question__content .cherry div.cherry-previewer{padding:0;color:var(--ibiz-ai-chat-color);background-color:var(--ibiz-ai-chat-background-color-light);border:0}.ibiz-user-message-question__content .cherry div.cherry-previewer figure{max-width:1200px}.ibiz-user-message-question__content .cherry div.cherry-previewer figure>svg{width:100%;min-height:100px}.ibiz-user-message-question__content .anchor{display:none!important}.ibiz-user-message-question__user-header{display:flex;align-items:center;justify-content:end;width:100%;height:32px;margin-bottom:8px}.ibiz-user-message-question__user{padding:6px;font-size:14px;font-weight:800}.ibiz-error-message{padding:6px 10px;text-align:left}.ibiz-error-message__content{width:fit-content;padding:10px 16px;color:#fff;background-color:red;border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-error-message .ibiz-error-message-header{display:flex;margin-bottom:8px}.ibiz-error-message-header__caption{flex:0;width:auto;min-width:32px;min-height:32px;padding:6px;margin-right:2px;font-size:14px;font-weight:800;color:var(--ibiz-ai-chat-color)}.ibiz-unknown-message{display:flex;padding:6px 10px;justify-content:end}.ibiz-unknown-message__content{padding:10px 16px;color:#000;width:max-content;background-color:#ccc;border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-message-item{padding:6px 0}.ibiz-chat-message-item .pre-wrap-container{word-wrap:break-word;white-space:pre-wrap}.ibiz-chat-toolbar-item{position:relative;display:flex;align-items:center;white-space:nowrap;cursor:pointer}.ibiz-chat-toolbar-item__content{display:flex;align-items:center;white-space:nowrap}.ibiz-chat-toolbar-item__content--icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:18px;height:18px;font-size:18px}.ibiz-chat-toolbar-item__content--label,.ibiz-chat-toolbar-item__more{display:flex;align-items:center}.ibiz-chat-toolbar-item__more--icon{font-size:18px}.ibiz-chat-toolbar-item-default{width:fit-content;font-size:14px;color:var(--ibiz-ai-chat-color-2)}.ibiz-chat-toolbar-item-default .ibiz-chat-toolbar-item__content{z-index:9;gap:6px;padding:2px 14px;line-height:28px;background-color:var(--ibiz-ai-chat-background-color-2);border-radius:12px}.ibiz-chat-toolbar-item-default.is-disabled{cursor:not-allowed}.ibiz-chat-toolbar-item-default.is-disabled .ibiz-chat-toolbar-item__content,.ibiz-chat-toolbar-item-default.is-disabled .ibiz-chat-toolbar-item__more{background-color:var(--ibiz-ai-chat-disabled-color)}.ibiz-chat-toolbar-item-default:not(.is-disabled) .ibiz-chat-toolbar-item__content:hover,.ibiz-chat-toolbar-item-default:not(.is-disabled) .ibiz-chat-toolbar-item__more:hover{background-color:var(--ibiz-ai-chat-hover-background-color-2)}.ibiz-chat-toolbar-item-default.is-more .ibiz-chat-toolbar-item__content{padding:2px 8px 2px 14px;border-radius:12px 0 0 12px}.ibiz-chat-toolbar-item-default .ibiz-chat-toolbar-item__more{z-index:9;height:32px;padding:2px 14px 2px 8px;background-color:var(--ibiz-ai-chat-background-color-2);border-left:1px solid var(--ibiz-ai-chat-border-color);border-radius:0 12px 12px 0}.ibiz-chat-toolbar-item-circle{max-width:32px;height:32px;padding:6px;overflow:hidden;font-size:12px;white-space:nowrap;border:1px solid var(--ibiz-ai-chat-border-color);border-radius:15px;transition:max-width .8s ease}.ibiz-chat-toolbar-item-circle.is-disabled{color:var(--ibiz-ai-chat-disabled-color);cursor:not-allowed}.ibiz-chat-toolbar-item-circle:hover:not(.is-disabled){max-width:200px;color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-toolbar-item-circle .ibiz-chat-toolbar-item__content--label{width:calc(100% - 32px);margin-left:8px;font-size:14px}.ibiz-chat-toolbar-item-dropdown{position:absolute;right:0;bottom:36px;display:flex;flex-direction:column;gap:4px;max-width:150px;padding:4px;background-color:var(--ibiz-ai-chat-background-color-2);border-radius:6px}.ibiz-chat-toolbar-item-dropdown__item{display:flex;gap:6px;align-items:center;padding:0 8px;line-height:32px;cursor:pointer;border-radius:6px}.ibiz-chat-toolbar-item-dropdown__item.is-disabled{cursor:not-allowed;background-color:var(--ibiz-ai-chat-disabled-color)}.ibiz-chat-toolbar-item-dropdown__item:hover:not(.is-disabled){background-color:var(--ibiz-ai-chat-hover-background-color-2)}.ibiz-chat-toolbar-item-dropdown__item--icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:18px;height:18px;font-size:18px}.ibiz-chat-toolbar-item-dropdown__item--label{flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-chat-toolbar{display:flex;flex-wrap:wrap;align-items:center}.ibiz-chat-toolbar .ibiz-chat-toolbar-item:not(:first-child){margin-left:6px}.ibiz-chat-back-bottom{position:absolute;z-index:5;display:none;align-items:center;justify-content:center;width:32px;height:32px;font-size:var(--ibiz-font-size-header-6);color:var(--ibiz-ai-chat-color-2);cursor:pointer;background-color:var(--ibiz-ai-chat-background-color-2);border-radius:var(--ibiz-border-radius-circle)}.ibiz-chat-back-bottom:hover{background-color:var(--ibiz-ai-chat-hover-background-color-2)}.ibiz-chat-back-bottom__icon{font-size:20px}.ibiz-chat-back-bottom.is-visible{display:flex}.ibiz-chat-messages{width:calc(100% - 12px);height:calc(100% - 12px);margin:6px;overflow:hidden auto}.ibiz-chat-messages::-webkit-scrollbar{width:6px}.ibiz-chat-messages::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-fill-2);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-input-material{display:flex;flex-wrap:wrap;gap:8px}.ibiz-pop-trigger-container{font-size:12px}.ibiz-pop{gap:4px;padding:4px;display:flex;min-width:120px;border-radius:8px;flex-direction:column;background-color:var(--ibiz-color-bg-3);border:1px solid var(--ibiz-color-border)}.ibiz-pop__item{display:flex;padding:0 8px;cursor:pointer;line-height:32px;border-radius:6px;align-items:center}.ibiz-pop__item:hover{background-color:var(--ibiz-color-primary-hover)}.ibiz-pop__item--caption{min-width:0;flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-pop__item svg{width:16px;height:16px;flex-shrink:0;margin-right:8px;fill:currentcolor;display:inline-block;vertical-align:middle}.ibiz-chat-select{position:relative;flex-grow:1;width:100%;min-width:90px;max-width:60%;font-size:var(--ibiz-font-size-regular)}.ibiz-chat-select__header{display:inline-flex;gap:var(--ibiz-spacing-extra-tight);align-items:center;justify-content:space-between;max-width:100%;min-height:var(--ibiz-height-control-default);line-height:1.1;cursor:pointer}.ibiz-chat-select__header--display-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-chat-select__header--prefix{display:inline-flex;align-items:center}.ibiz-chat-select__header--prefix .icon{font-size:1.2em}.ibiz-chat-select__header--suffix{display:inline-flex;align-items:center}.ibiz-chat-select__header--suffix .icon{font-size:1.2em;fill:none}.ibiz-chat-select__dropdown{position:absolute;bottom:100%;left:0;z-index:2;display:none;width:100%;height:0;padding:var(--ibiz-spacing-extra-tight) 0;overflow:hidden;background-color:var(--ibiz-color-bg-2);border-radius:var(--ibiz-border-radius-small);box-shadow:var(--ibiz-shadow-elevated);opacity:0}.ibiz-chat-select__dropdown--list{max-height:240px;padding:0;margin:0;overflow-y:auto;list-style:none}.ibiz-chat-select__dropdown--item{padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.ibiz-chat-select__dropdown--item:hover{background-color:var(--ibiz-color-fill-0)}.ibiz-chat-select__dropdown--item.is-active{color:var(--ibiz-color-primary-text);background-color:var(--ibiz-color-primary)}.ibiz-chat-select.is-visble .ibiz-chat-select__dropdown{display:block;height:auto;opacity:1}.ibiz-chat-select.is-disabled{color:var(--ibiz-color-disabled-text);pointer-events:none}.ibiz-chat-input-material-wrapper{max-height:72px;padding:4px;overflow:hidden auto;font-size:16px;color:var(--ibiz-ai-chat-color);background-color:var(--ibiz-ai-chat-background-color)}.ibiz-chat-input-main-wrapper{border:1px solid var(--ibiz-ai-chat-border-color);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-input-textarea-wrapper{width:100%;max-height:6em;padding:4px;overflow:hidden auto!important;font-size:16px;color:var(--ibiz-ai-chat-color);resize:none;background-color:var(--ibiz-ai-chat-background-color);border:none;outline:none}.ibiz-chat-input-textarea-wrapper::-webkit-scrollbar{width:var(--ibiz-ai-chat-scroll-bar-width);height:var(--ibiz-ai-chat-scroll-bar-height)}.ibiz-chat-input-textarea-wrapper::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-fill-2);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-input-action-wrapper{display:flex;align-items:center;justify-content:space-between;width:100%;height:40px}.ibiz-chat-input-left-action-wrapper{display:flex;flex:1;align-items:center;width:calc(100% - 96px);padding:6px}.ibiz-chat-input-right-action-wrapper{display:flex;gap:6px;align-items:center;padding:6px;color:var(--ibiz-ai-chat-color)}.ibiz-chat-input-right-action-wrapper__action-item{padding:3px;font-size:12px;border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-input-right-action-wrapper__action-item:hover{color:var(--ibiz-ai-chat-hover-color);cursor:pointer;background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-input-right-action-wrapper__action-item.is-disabled{color:var(--ibiz-ai-chat-disabled-color);pointer-events:none}.ibiz-chat-input-pop-actions{width:160px;min-height:48px;padding:8px}.ibiz-chat-input-pop-action-item{display:flex;align-items:center;padding:8px;margin-bottom:4px;line-height:22px;cursor:pointer;border-radius:4px;transition:background-color .2s}.ibiz-chat-input-pop-action-item:hover{background-color:var(--ibiz-color-fill-0)}.ibiz-chat-input-pop-action-item-icon{width:18px;height:18px;margin-right:8px;font-size:18px;color:var(--ibiz-ai-chat-color);pointer-events:none}.ibiz-chat-input-pop-action-item-title{font-size:14px;line-height:22px;color:var(--ibiz-ai-chat-color);pointer-events:none}.ibiz-chat-topic-item{height:38px;display:flex;padding:0 8px;cursor:pointer;border-radius:12px;position:relative;align-items:center;font-size:var(--ibiz-font-size-regular)}.ibiz-chat-topic-item:hover:not(.is-edit){color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-topic-item:hover:not(.is-edit) .ibiz-chat-topic-item__icon{opacity:1}.ibiz-chat-topic-item.is-active:not(.is-edit){color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-topic-item.is-edit{border:2px solid var(--ibiz-ai-chat-background-color-2)}.ibiz-chat-topic-item__caption{width:100%;height:100%;display:flex;align-items:center}.ibiz-chat-topic-item__caption--text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-chat-topic-item__caption--editor{width:100%;height:100%;border:none;outline:none;color:var(--ibiz-ai-chat-color);background:var(--ibiz-ai-chat-background-color)}.ibiz-chat-topic-item__icon{top:50%;gap:8px;opacity:0;right:10px;height:24px;display:flex;outline:none;padding:0 8px;border-radius:8px;position:absolute;align-items:center;justify-content:flex-end;transform:translateY(-50%);color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-topic-item__icon--item{font-size:12px}.ibiz-chat-search{display:flex;gap:8px;align-items:center;justify-content:center;width:100%;padding:1px 11px;line-height:32px;border:1px solid var(--ibiz-ai-chat-border-color);border-radius:1px}.ibiz-chat-search:hover,.ibiz-chat-search.is-focus{border:1px solid var(--ibiz-ai-chat-background-color-2)}.ibiz-chat-search__prefix{display:flex;flex-shrink:0;align-items:center;width:14px;height:14px;font-size:14px}.ibiz-chat-search__inner{flex-grow:1;min-width:0;height:28px;padding:2px 0 0;line-height:28px;color:inherit;background-color:initial;border:none;outline:0}.ibiz-chat-topics{display:flex;flex-direction:column;gap:8px;height:100%;padding:8px 0}.ibiz-chat-topics__header{flex-shrink:0;padding:0 8px}.ibiz-chat-topics__main{flex-grow:1;padding:0 8px;overflow-y:auto}.ibiz-chat-topics__empty{font-size:var(--ibiz-font-size-regular);text-align:center}.ibiz-chat-topics__footer{display:flex;flex-shrink:0;align-items:center;justify-content:center;padding:0 8px}.ibiz-chat-topics__action{display:flex;gap:4px;align-items:center;padding:4px 12px;font-size:14px;cursor:pointer;border:1px solid var(--ibiz-ai-chat-border-color);border-radius:2px}.ibiz-chat-topics__action:hover{color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-topics__action>svg{width:14px!important;height:14px!important}.ibiz-chat-minimize{width:56px;height:56px;display:flex;z-index:99999;cursor:pointer;position:absolute;border-radius:50%;align-items:center;justify-content:center}.ibiz-chat-minimize.is-hidden{display:none}.ibiz-chat-minimize.is-show-halo{width:90px;height:90px;background-size:cover;background-position:center;background-repeat:no-repeat;background-image:url(assets/gif/halo.gif)}.ibiz-chat-minimize__content{width:56px;height:56px;display:flex;border-radius:50%;align-items:center;justify-content:center;color:var(--ibiz-ai-chat-color);background-color:var(--ibiz-ai-chat-background-color)}.ibiz-chat-minimize__content:hover{color:var(--ibiz-ai-chat-hover-color);background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-minimize__content svg{fill:currentcolor;display:inline-block;vertical-align:middle}.ibiz-chat-minimize__content.is-show-border{border:1px solid var(--ibiz-ai-chat-border-color)}.ibiz-chat-minimize__content--popover{left:50%;bottom:90px;padding:8px;display:block;font-size:12px;border-radius:8px;position:absolute;transform:translate(-50%);box-shadow:0 2px 8px rgba(0,0,0,.1);background-color:var(--ibiz-ai-chat-background-color);color:var(--ibiz-ai-chat-color);border:1px solid var(--ibiz-ai-chat-border-color)}.ibiz-chat-minimize__content--popover .typewriter{direction:rtl;overflow:hidden;max-width:200px;width:fit-content;white-space:nowrap;text-overflow:ellipsis;animation:typing 3s steps(40,end)}@keyframes blink{0%,to{opacity:0}50%{opacity:1}}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:var(--ibiz-ai-chat-color)}}.ibiz-chat-container{--ibiz-ai-chat-color: #3b3b3b;--ibiz-ai-chat-icon-color: #3b3b3b;--ibiz-ai-chat-border-color: #e5e5e5;--ibiz-ai-chat-background-color: #fff;--ibiz-ai-chat-background-color-light: #f8fafb;--ibiz-ai-chat-disabled-color: rgba(59, 59, 59, .6);--ibiz-ai-chat-hover-color: #3b3b3b;--ibiz-ai-chat-hover-background-color: #e9e9e9;--ibiz-ai-chat-hover-border-color: #e5e5e5;--ibiz-ai-chat-border-radius: 5px;--ibiz-ai-chat-color-2: #4d6bfe;--ibiz-ai-chat-background-color-2: rgb(219, 234, 254);--ibiz-ai-chat-hover-background-color-2: #c3daf8;--ibiz-ai-chat-scroll-bar-width: 8px;--ibiz-ai-chat-scroll-bar-height: 8px;--ibiz-ai-chat-scroll-bar-radius: 4px}.ibiz-chat-container__dialog{position:absolute;z-index:1000;display:flex;flex-direction:column;background-color:var(--ibiz-ai-chat-background-color);border:1px solid var(--ibiz-ai-chat-border-color);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-container__dialog *{box-sizing:border-box}.ibiz-chat-container__dialog svg{display:inline-block;width:1em;height:1em;font-size:1.5em;vertical-align:middle;fill:currentcolor}.ibiz-chat-container__dialog.is-hidden{display:none}.ibiz-chat-container__toolbar{position:absolute;bottom:162px;left:50%;gap:8px 4px;justify-content:center;width:max-content;min-height:48px;margin:0;transform:translate(-50%)}.ibiz-chat-container__toolbar.is-has-materials{bottom:222px}.ibiz-chat-container *::-webkit-scrollbar{width:var(--ibiz-ai-chat-scroll-bar-width);height:var(--ibiz-ai-chat-scroll-bar-height)}.ibiz-chat-container *::-webkit-scrollbar-thumb{border-radius:var(--ibiz-ai-chat-scroll-bar-radius)}.ibiz-chat-container-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;height:60px;padding:4px;cursor:move;border-bottom:1px solid var(--ibiz-ai-chat-border-color)}.ibiz-chat-container-header-caption{padding:0 6px 0 16px;font-size:18px;font-weight:800}.ibiz-chat-container-header-action-wrapper{display:flex;gap:6px;align-items:center;height:100%;padding:0 6px}.ibiz-chat-container-header-action-wrapper__action-item{flex-shrink:0;padding:3px;font-size:12px;color:var(--ibiz-ai-chat-color);border-radius:var(--ibiz-ai-chat-border-radius)}.ibiz-chat-container-header-action-wrapper__action-item:hover{color:var(--ibiz-ai-chat-hover-color);cursor:pointer;background-color:var(--ibiz-ai-chat-hover-background-color)}.ibiz-chat-container-main{display:flex;height:calc(100% - 60px)}.ibiz-chat-container-main__left{flex-shrink:0;width:200px;height:100%;border-right:1px solid var(--ibiz-ai-chat-border-color)}.ibiz-chat-container-main__right{position:relative;display:flex;flex-direction:column;flex-grow:1;width:calc(100% - 200px);height:100%}.ibiz-chat-container-main__right .ibiz-chat-messages{padding-bottom:48px}.ibiz-chat-container-main__default{display:flex;flex-direction:column;flex-grow:1;height:calc(100% - 60px)}.ibiz-chat-container-content{position:relative;flex-grow:1;overflow:hidden}.ibiz-chat-container-footer{flex-shrink:0;padding:3px 6px;border-top:1px solid var(--ibiz-ai-chat-border-color)}
@@ -1,7 +1,7 @@
1
1
  import { Component } from 'preact';
2
2
  import { Namespace } from '../../utils';
3
3
  import { AiChatController, AiTopicController } from '../../controller';
4
- import { IChatToolbarItem, IChatContainerOptions, IAutoClose } from '../../interface';
4
+ import { IAutoClose, IChatToolbarItem, IChatContainerOptions } from '../../interface';
5
5
 
6
6
  export interface ChatContainerProps {
7
7
  /**
@@ -107,6 +107,9 @@ export interface ChatContainerProps {
107
107
  */
108
108
  openMode?: 'default' | 'minimize' | 'autoexpand';
109
109
  }
110
+ /**
111
+ * 容器状态
112
+ */
110
113
  interface ChatContainerState {
111
114
  /**
112
115
  * 全屏状态
@@ -122,11 +125,19 @@ interface ChatContainerState {
122
125
  * @memberof ChatContainerState
123
126
  */
124
127
  isMinimize: boolean;
128
+ /**
129
+ * 是否启用最小化
130
+ *
131
+ * @type {boolean}
132
+ * @memberof ChatContainerState
133
+ */
134
+ enableAIMinimize: boolean;
125
135
  }
126
136
  interface ContainerContext {
127
137
  zIndex: number;
128
138
  enableBackFill: boolean;
129
139
  newTopic: Function;
140
+ updateTopic: Function;
130
141
  }
131
142
  export declare const ContainerContext: import('preact').Context<ContainerContext>;
132
143
  /**
@@ -0,0 +1,68 @@
1
+
2
+ export interface CommonSelectOption {
3
+ /**
4
+ * 选项值
5
+ *
6
+ * @type {string}
7
+ * @memberof CommonSelectOption
8
+ */
9
+ value: string;
10
+ /**
11
+ * 选项显示文本
12
+ *
13
+ * @type {string}
14
+ * @memberof CommonSelectOption
15
+ */
16
+ label: string;
17
+ }
18
+ export interface CommonSelectProps {
19
+ /**
20
+ * 选项列表
21
+ *
22
+ * @type {CommonSelectOption[]}
23
+ * @memberof CommonSelectProps
24
+ */
25
+ options: CommonSelectOption[];
26
+ /**
27
+ * 当前选中值
28
+ *
29
+ * @type {string}
30
+ * @memberof CommonSelectProps
31
+ */
32
+ value?: string;
33
+ /**
34
+ * 默认值
35
+ *
36
+ * @type {string}
37
+ * @memberof CommonSelectProps
38
+ */
39
+ defaultValue?: string;
40
+ /**
41
+ * 类名
42
+ *
43
+ * @type {string}
44
+ * @memberof CommonSelectProps
45
+ */
46
+ className?: string;
47
+ /**
48
+ * 占位符文本
49
+ *
50
+ * @type {string}
51
+ * @memberof CommonSelectProps
52
+ */
53
+ placeholder?: string;
54
+ /**
55
+ * 值改变回调
56
+ *
57
+ * @memberof CommonSelectProps
58
+ */
59
+ onChange?: (value: string) => void;
60
+ /**
61
+ * 是否禁用
62
+ *
63
+ * @type {boolean}
64
+ * @memberof CommonSelectProps
65
+ */
66
+ disabled?: boolean;
67
+ }
68
+ export declare const CommonSelect: (props: CommonSelectProps) => import("preact").JSX.Element;
@@ -0,0 +1 @@
1
+ export { CommonSelect } from './common-select/common-select';
@@ -1,6 +1,6 @@
1
1
  import { Signal } from '@preact/signals';
2
2
  import { QXEvent } from 'qx-util';
3
- import { ChatMessage } from '../../entity';
3
+ import { AIAgent, ChatMessage } from '../../entity';
4
4
  import { ITopic, IMaterial, IChatMessage, IChatOptions, IChatSuggestion } from '../../interface';
5
5
 
6
6
  /**
@@ -52,6 +52,18 @@ export declare class AiChatController {
52
52
  * @type {Signal<boolean>}
53
53
  */
54
54
  readonly isLoading: Signal<boolean>;
55
+ /**
56
+ * 激活AI代理标识
57
+ *
58
+ * @type {(string | undefined)}
59
+ */
60
+ activeAIAgentID: string | undefined;
61
+ /**
62
+ * AI代理列表
63
+ *
64
+ * @type {Signal<AIAgent[]>}
65
+ */
66
+ readonly agentList: Signal<AIAgent[]>;
55
67
  /**
56
68
  * 视图参数
57
69
  *
@@ -98,6 +110,10 @@ export declare class AiChatController {
98
110
  * @memberof AiChatController
99
111
  */
100
112
  chatSessionid: string;
113
+ /**
114
+ * 模式参数,用于业务区分
115
+ */
116
+ chatMode: string | undefined;
101
117
  /**
102
118
  * Creates an instance of AiChatController.
103
119
  *
@@ -106,6 +122,24 @@ export declare class AiChatController {
106
122
  * @param {IChatOptions} opts 聊天配置
107
123
  */
108
124
  constructor(opts: IChatOptions);
125
+ /**
126
+ * 重置聊天
127
+ */
128
+ private reSetAIChat;
129
+ /**
130
+ * 初始化
131
+ */
132
+ private initAIChat;
133
+ /**
134
+ * 初始化AI代理列表
135
+ */
136
+ private initAIChatAgent;
137
+ /**
138
+ * 获取历史记录存储key(用于适配不同智能体存在不同的历史记录)
139
+ * @param topicId 话题标识
140
+ * @returns 历史存储key
141
+ */
142
+ private getHistoryStoreKey;
109
143
  /**
110
144
  * 获取历史记录
111
145
  *
@@ -174,7 +208,7 @@ export declare class AiChatController {
174
208
  * @date 2025-03-03 11:03:55
175
209
  * @return {*} {string}
176
210
  */
177
- stringlyMaterialResource(): string;
211
+ stringlyMaterialResource(clearable?: boolean): string;
178
212
  /**
179
213
  * @description 获取当前会话的消息集合
180
214
  * @private
@@ -284,6 +318,11 @@ export declare class AiChatController {
284
318
  * @return {*} {Promise<void>}
285
319
  */
286
320
  handleSuggestionClick(message: IChatMessage, suggestion: IChatSuggestion, event: MouseEvent): Promise<void>;
321
+ /**
322
+ * 设置当前激活的AI助手ID
323
+ * @param agentID
324
+ */
325
+ setActiveAIAgentID(agentID: string): Promise<void>;
287
326
  /**
288
327
  * 销毁
289
328
  *
@@ -1,6 +1,6 @@
1
1
  import { Signal } from '@preact/signals';
2
2
  import { ChatTopic } from '../../entity';
3
- import { ITopic, ITopicOptions } from '../../interface';
3
+ import { ITopic, ITopicChatEXParam, ITopicOptions } from '../../interface';
4
4
  import { ChatController } from '../chat/chat.controller';
5
5
 
6
6
  /**
@@ -53,6 +53,17 @@ export declare class AiTopicController {
53
53
  * @return {*} {Promise<void>}
54
54
  */
55
55
  fetchHistory(options: ITopicOptions): Promise<void>;
56
+ /**
57
+ * 获取指定标识话题
58
+ * @param topicid
59
+ * @returns
60
+ */
61
+ getCurrentTopicByID(topicid: string): ChatTopic | undefined;
62
+ /**
63
+ * 基于话题标识更新当前话题
64
+ * @param topicid 话题标识
65
+ */
66
+ updateCurrentTopicByID(topicid: string, args: ITopicChatEXParam): Promise<void>;
56
67
  /**
57
68
  * 更新当前话题
58
69
  *
@@ -110,7 +121,7 @@ export declare class AiTopicController {
110
121
  * @date 2025-03-18 18:03:49
111
122
  * @return {*} {Promise<void>}
112
123
  */
113
- newTopic(): Promise<void>;
124
+ newTopic(topicid: string, args: ITopicChatEXParam): Promise<void>;
114
125
  /**
115
126
  * 清空话题
116
127
  * - 当前激活项不清空
@@ -0,0 +1,12 @@
1
+ import { IAIAgent } from '../../interface';
2
+
3
+ export declare class AIAgent implements IAIAgent {
4
+ agent: IAIAgent;
5
+ get id(): string;
6
+ get caption(): string;
7
+ get default(): 0 | 1;
8
+ get order(): number | undefined;
9
+ get value(): string;
10
+ get label(): string;
11
+ constructor(agent: IAIAgent);
12
+ }
@@ -2,3 +2,4 @@ export { ChatMessage } from './chat-message/chat-message';
2
2
  export { ChatTopic } from './chart-topic/chart-topic';
3
3
  export { ChatMaterial } from './chart-material/chart-material';
4
4
  export { ChatSuggestion } from './chat-suggestion/chat-suggestion';
5
+ export { AIAgent } from './ai-agent/ai-agent';
@@ -0,0 +1 @@
1
+ export declare const Agent: () => import("preact").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const ArrowDown: () => import("preact").JSX.Element;
@@ -28,3 +28,5 @@ export { ResetDialogueSvg } from './reset-dialogue-svg';
28
28
  export { RenameSvg } from './rename-svg';
29
29
  export { ChevronForwardSvg } from './chevron-forward-svg';
30
30
  export { SearchSvg } from './search-svg';
31
+ export { Agent } from './agent';
32
+ export { ArrowDown } from './arrow-down';
@@ -0,0 +1,21 @@
1
+ /**
2
+ * ai代理接口
3
+ */
4
+ export interface IAIAgent {
5
+ /**
6
+ * 代理标识
7
+ */
8
+ id: string;
9
+ /**
10
+ * 代理名称
11
+ */
12
+ caption: string;
13
+ /**
14
+ * 是否默认代理,1:是,0:否
15
+ */
16
+ default: 0 | 1;
17
+ /**
18
+ * 排序
19
+ */
20
+ order: number | undefined;
21
+ }
@@ -1,3 +1,23 @@
1
+ /**
2
+ * 自动关闭窗口,用于在提问完成时配置窗口关闭模式
3
+ *
4
+ * @export
5
+ * @interface IAutoClose
6
+ */
7
+ export interface IAutoClose {
8
+ /**
9
+ * @description 模式
10
+ * - minimize:最小化;close:直接关闭;closetime:定时关闭
11
+ * @type {('minimize' | 'closetime' | 'close')}
12
+ */
13
+ mode: 'minimize' | 'close' | 'closetime';
14
+ /**
15
+ * @description 自动关闭延时时间,该值单位为秒(s),当 mode 值为closetime时生效
16
+ * @default 3
17
+ * @type {number}
18
+ */
19
+ duration?: number;
20
+ }
1
21
  /**
2
22
  * 聊天窗口呈现配置
3
23
  *
@@ -71,4 +91,24 @@ export interface IChatContainerOptions {
71
91
  * @type {boolean}
72
92
  */
73
93
  enableBackFill?: boolean;
94
+ /**
95
+ * 自动关闭
96
+ *
97
+ * @type {IAutoClose}
98
+ * @memberof IChatContainerOptions
99
+ */
100
+ autoClose?: IAutoClose;
101
+ /**
102
+ * @description AI窗口的打开模式
103
+ * - default:默认;minimize:最小化;autoexpand:自动展开
104
+ * @type {('default' | 'minimize' | 'autoexpand')}
105
+ * @memberof IChatContainerOptions
106
+ */
107
+ openMode?: 'default' | 'minimize' | 'autoexpand';
108
+ /**
109
+ * 是否允许最小化
110
+ *
111
+ * @type {boolean}
112
+ */
113
+ enableAIMinimize?: boolean;
74
114
  }
@@ -1,28 +1,18 @@
1
1
  import { AiChatController } from '../../controller';
2
+ import { IAIAgent } from '../i-ai-agent/i-ai-agent';
2
3
  import { IChatMessage } from '../i-chat-message/i-chat-message';
3
4
  import { IChatToolbarItem } from '../i-chat-toolbar-item/i-chat-toolbar-item';
4
5
  import { FileUploaderOptions } from '../i-file-uploader-options/i-file-uploader-options';
5
6
  import { ITopic } from '../i-topic-options/i-topic-options';
6
7
 
7
8
  /**
8
- * 自动关闭窗口,用于在提问完成时配置窗口关闭模式
9
- *
10
- * @export
11
- * @interface IAutoClose
9
+ * 话题聊天附加参数
12
10
  */
13
- export interface IAutoClose {
11
+ export interface ITopicChatEXParam {
14
12
  /**
15
- * @description 模式
16
- * - minimize:最小化;close:直接关闭;closetime:定时关闭
17
- * @type {('minimize' | 'closetime' | 'close')}
13
+ * 激活ai代理标识
18
14
  */
19
- mode: 'minimize' | 'close' | 'closetime';
20
- /**
21
- * @description 自动关闭延时时间,该值单位为秒(s),当 mode 值为closetime时生效
22
- * @default 3
23
- * @type {number}
24
- */
25
- duration?: number;
15
+ activeAIAgentID: string;
26
16
  }
27
17
  /**
28
18
  * 聊天数据
@@ -71,20 +61,6 @@ export interface IChat {
71
61
  * @memberof IChat
72
62
  */
73
63
  autoQuestion?: boolean;
74
- /**
75
- * 自动关闭窗口,用于在提问完成时配置窗口关闭模式
76
- *
77
- * @type {IAutoClose}
78
- * @memberof IChat
79
- */
80
- autoClose?: IAutoClose;
81
- /**
82
- * @description AI窗口的打开模式
83
- * - default:默认;minimize:默认最小化窗口;autoexpand:默认最小化窗口,当提问完成时自动展开窗口
84
- * @type {('default' | 'minimize' | 'autoexpand')}
85
- * @memberof IChat
86
- */
87
- openMode?: 'default' | 'minimize' | 'autoexpand';
88
64
  /**
89
65
  * @description 是否自动回填
90
66
  * - AI回答完成之后是否触发回填,默认关闭
@@ -138,6 +114,24 @@ export interface IChat {
138
114
  * @type {IChatToolbarItem[]}
139
115
  */
140
116
  otherToolbarItems?: IChatToolbarItem[];
117
+ /**
118
+ * 激活ai代理标识
119
+ */
120
+ activeAIAgentID?: string | undefined;
121
+ /**
122
+ * AI代理列表
123
+ *
124
+ * @type {IAIAgent[]}
125
+ */
126
+ aiAgentlist?: IAIAgent[];
127
+ /**
128
+ * 模式参数,用于业务区分
129
+ */
130
+ srfMode?: string;
131
+ /**
132
+ * 传入当前资源作为用户消息(如果外部传入,在请求历史记录后,需要附加当前资源作为用户消息)
133
+ */
134
+ appendCurResource: string;
141
135
  }
142
136
  /**
143
137
  * 聊天区配置参数
@@ -183,7 +177,7 @@ export interface IChatOptions extends IChat {
183
177
  * @param {IChatMessage[]} question 提问历史内容(包含当前提问)
184
178
  * @return {*} {Promise<boolean>} 等待回答,用于显示 loading 并获取最终成功与否
185
179
  */
186
- question(aiChat: AiChatController, context: object, params: object, otherParams: object, question: IChatMessage[], sessionid: string): Promise<boolean>;
180
+ question(aiChat: AiChatController, context: object, params: object, otherParams: object, question: IChatMessage[], sessionid: string, srfaiagent: string | undefined, srfmode: string | undefined): Promise<boolean>;
187
181
  /**
188
182
  * 中断消息
189
183
  *
@@ -1,5 +1,5 @@
1
1
  export type { IChatMessage } from './i-chat-message/i-chat-message';
2
- export type { IChat, IChatOptions, IAutoClose, } from './i-chat-options/i-chat-options';
2
+ export type { IChat, IChatOptions, ITopicChatEXParam, } from './i-chat-options/i-chat-options';
3
3
  export type { IMessageItemProvider } from './i-message-item-provider/i-message-item-provider';
4
4
  export type { IPortalAsyncAction } from './i-portal-async-action/i-portal-async-action';
5
5
  export type { IChatToolbarItem } from './i-chat-toolbar-item/i-chat-toolbar-item';
@@ -8,6 +8,7 @@ export type { IContainerOptions } from './i-container-options/i-container-option
8
8
  export type { IChatThoughtChain } from './i-chat-thought-chain/i-chat-thought-chain';
9
9
  export type { IMaterial } from './i-material/i-material';
10
10
  export type { FileUploaderOptions } from './i-file-uploader-options/i-file-uploader-options';
11
- export type { IChatContainerOptions } from './i-chat-container/i-chat-container';
11
+ export type { IAutoClose, IChatContainerOptions, } from './i-chat-container/i-chat-container';
12
12
  export type { IChatSuggestion } from './i-chat-suggestion/i-chat-suggestion';
13
13
  export type { IChatToolCall } from './i-chat-tool-call/i-chat-tool-call';
14
+ export type { IAIAgent } from './i-ai-agent/i-ai-agent';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ibiz-template-plugin/ai-chat",
3
- "version": "0.0.33",
3
+ "version": "0.0.35",
4
4
  "description": "iBiz AI交互框插件",
5
5
  "type": "module",
6
6
  "main": "dist/index.es.js",