@bothub-chat/ui 2.23.0 → 2.23.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as i,jsxs as e,Fragment as o}from"react/jsx-runtime";import{useRef as s,useState as t,useCallback as n,useEffect as r}from"react";import{MessageStyledWrapper as d,MessageStyledWithBottomPanel as c,MessageStyled as p,MessageContent as a,MessageTop as m,MessageSender as l,MessageName as x,MessageBlockTransaction as j,MessageAvatar as g,MessageBlockWrapper as u,MessageBlock as b,MessageBlockScrollbarWrapper as y,MessageBlockContent as h,MessageBlockTextArea as f,MessageBlockBottomPanel as M,MessageButtonsStyled as w}from"./styled.js";export{MessageAction,MessageActions,MessageBottom,MessageEditAction,MessageImageBottomArrowButton,MessageImageLeftArrowButton,MessageImageRightArrowButton,MessageImageTopArrowButton,MessageTag,MessageTags,MessageTransaction}from"./styled.js";import{Skeleton as T}from"../skeleton/index.js";import"../../theme/index.js";import{getTgMarkdown as k}from"../../utils/getTgMarkdown.js";import{MessageProvider as C}from"./context.js";export{MessageConsumer,MessageContext,useMessage}from"./context.js";import"tslib";export{MessageInlineCodeStyled}from"./components/code/inline/styled.js";export{MessageMultilineCodeBody,MessageMultilineCodeHead,MessageMultilineCodeLanguage,MessageMultilineCodeStyled}from"./components/code/multiline/styled.js";import"@react-spring/web";import"react-dom";import"../portal/styled.js";import"../tooltip/styled.js";import"../tooltip/arrow/styled.js";import"../tooltip/context.js";import"./components/code/multiline/copy/styled.js";import"../../icons/check-small/index.js";import"../../icons/copy/index.js";import"./components/code/multiline/content/styled.js";import{MessageParagraph as v}from"./components/paragraph/index.js";export{MessageBoldStyled}from"./components/bold/styled.js";export{MessageItalicStyled}from"./components/italic/styled.js";export{MessagePre}from"./components/pre/styled.js";export{MessageTableBody,MessageTableContent,MessageTableHead,MessageTableRow,MessageTableStyled}from"./components/table/styled.js";export{MessageTableCellStyled,MessageTableCellText,MessageTableHeadCell}from"./components/table/cell/styled.js";export{MessageListStyled}from"./components/list/styled.js";import"./components/list/context.js";export{MessageListItemStyled}from"./components/list/item/styled.js";export{MessageTitleStyled}from"./components/title/styled.js";export{MessageLinkStyled}from"./components/link/styled.js";export{MessageImageNative,MessageImageSkeleton,MessageImageStyled}from"./components/image/styled.js";export{MessageImageConsumer,MessageImageContext,MessageImageProvider,useMessageImage}from"./components/image/context.js";export{MessageImageGrid}from"./components/image/grid/styled.js";export{MessageImageButtonContent,MessageImageButtonStyled,MessageImageButtonZoneWrapper}from"./components/image/button/styled.js";export{MessageImageButtonsContent,MessageImageButtonsStyled}from"./components/image/button/list/styled.js";import{MessageMarkdown as S}from"./markdown/index.js";import"../scrollbar/styled.js";import{ScrollbarShadow as I}from"../scrollbar/shadow/index.js";import"../scrollbar/style/styled.js";import{MessageTimestamp as B}from"./timestamp/index.js";import{MessageActions as L}from"./actions/index.js";import{MessageVersions as R}from"./versions/index.js";import"./list/styled.js";import"./copy/styled.js";import"./badge-progress/styled.js";export{MessageButton}from"./button/styled.js";import"./button/list/styled.js";export{MessageFileInfo,MessageFileName,MessageFileSize,MessageFileStyled,MessageFiles}from"./file/styled.js";import"../icon/styled.js";import"../../icons/pdf-big/index.js";import"../../icons/txt-big/index.js";import"../../icons/word-big/index.js";import"../../icons/xls-big/index.js";import"../../icons/attach-file-big/index.js";import"./voice/styled.js";import"../../icons/arrow-down/index.js";import"../../icons/arrow-narrow-left/index.js";import"../../icons/arrow-narrow-right/index.js";import"../../icons/arrow-up/index.js";import"../../icons/bitcoin/index.js";import"../../icons/bot-circle/index.js";import"../../icons/bothub-agg/index.js";import"../../icons/business-colored/index.js";import"../../icons/check-circle/index.js";import"../../icons/close/index.js";import"../../icons/email-circle/index.js";import"../../icons/language/index.js";import"../../icons/lock-circle/index.js";import"../../icons/menu/index.js";import"../../icons/medium-circle/index.js";import"../../icons/tg-circle/index.js";import"../../icons/tg-colored/index.js";import"../../icons/youcassa/index.js";import"../../icons/dashboard/index.js";import"../../icons/user-profile/index.js";import"../../icons/logout/index.js";import"../../icons/habr-2/index.js";import"../../icons/arrow-2-down/index.js";import"../../icons/links/index.js";import"../../icons/free/index.js";import"../../icons/hotness/index.js";import"../../icons/checked/index.js";import"../../icons/ai/index.js";import"../../icons/bookmarks/index.js";import"../../icons/bookmarks-big/index.js";import"../../icons/chat/index.js";import"../../icons/chats/index.js";import"../../icons/coder/index.js";import"../../icons/edit/index.js";import"../../icons/minimize/index.js";import"../../icons/presets-big/index.js";import"../../icons/referal/index.js";import"../../icons/restore/index.js";import"../../icons/tariff/index.js";import"../../icons/trash/index.js";import"../../icons/unminimize/index.js";import"../../icons/update/index.js";import"../../icons/menu-dot/index.js";import"../../icons/plus-2/index.js";import"../../icons/plus-1/index.js";import"../../icons/send/index.js";import"../../icons/settings/index.js";import"../../icons/habr/index.js";import"../../icons/stop/index.js";import"../../icons/thumb-up/index.js";import"../../icons/thumb-down/index.js";import"../../icons/star/index.js";import"../../icons/info-big/index.js";import"../../icons/warning-big/index.js";import"../../icons/error-big/index.js";import"../../icons/success-big/index.js";import"../../icons/mj/index.js";import"../../icons/card/index.js";import"../../icons/arrow-narrow-up/index.js";import"../../icons/arrow-narrow-down/index.js";import"../../icons/filters/index.js";import"../../icons/info/index.js";import"../../icons/search-circle/index.js";import"../../icons/save/index.js";import"../../icons/light/index.js";import"../../icons/dark/index.js";import"../../icons/email-colored/index.js";import"../../icons/action-chat/index.js";import"../../icons/attach/index.js";import"../../icons/avatar-add/index.js";import"../../icons/brush/index.js";import"../../icons/calendar/index.js";import"../../icons/claude/index.js";import"../../icons/cookie/index.js";import"../../icons/dalle/index.js";import"../../icons/download-img/index.js";import"../../icons/error/index.js";import"../../icons/expand/index.js";import"../../icons/eye/index.js";import"../../icons/face/index.js";import"../../icons/gear/index.js";import"../../icons/gear-min/index.js";import"../../icons/generation/index.js";import"../../icons/gpt-3_5/index.js";import"../../icons/gpt-4/index.js";import"../../icons/imagine/index.js";import"../../icons/imagine-2/index.js";import"../../icons/loader/index.js";import"../../icons/loader-circular/index.js";import"../../icons/loader-circular-gradient/index.js";import"../../icons/loader-circular-gradient-2/index.js";import"../../icons/minus/index.js";import"../../icons/mj-white/index.js";import"../../icons/prompt/index.js";import"../../icons/rabbit/index.js";import"../../icons/ratio-1x1/index.js";import"../../icons/ratio-2x3/index.js";import"../../icons/ratio-3x2/index.js";import"../../icons/ratio-4x5/index.js";import"../../icons/ratio-4x7/index.js";import"../../icons/ratio-5x4/index.js";import"../../icons/ratio-7x4/index.js";import"../../icons/ratio-16x9/index.js";import"../../icons/ratio-9x16/index.js";import"../../icons/ratio-21x9/index.js";import"../../icons/ratio-9x21/index.js";import"../../icons/refferal-min/index.js";import"../../icons/search-data/index.js";import"../../icons/square/index.js";import"../../icons/turtle/index.js";import"../../icons/upscale/index.js";import"../../icons/withdraw/index.js";import"../../icons/search-plus/index.js";import"../../icons/lightning/index.js";import"../../icons/blog-circle/index.js";import"../../icons/stripe/index.js";import"../../icons/corporate/index.js";import"../../icons/public/index.js";import"../../icons/private/index.js";import"../../icons/mistral/index.js";import"../../icons/gemini/index.js";import"../../icons/search-simple/index.js";import"../../icons/sad-robot/index.js";import"../../icons/model/index.js";import"../../icons/phone-colored/index.js";import"../../icons/questions/index.js";import"../../icons/pdf/index.js";import"../../icons/xls/index.js";import"../../icons/word/index.js";import"../../icons/txt/index.js";import"../../icons/bothub-logo-gradient/index.js";import"../../icons/telegram-logo-gradient/index.js";import"../../icons/decline-circle/index.js";import"../../icons/simple-gear-bg/index.js";import"../../icons/advanced-filter/index.js";import"../../icons/big-corporate/index.js";import"../../icons/big-mj/index.js";import"../../icons/big-models/index.js";import"../../icons/big-stats/index.js";import"../../icons/big-success/index.js";import"../../icons/big-users/index.js";import"../../icons/optional-presets/index.js";import"../../icons/wallet-withdraw/index.js";import"../../icons/big-presets/index.js";import"../../icons/big-favorite/index.js";import"../../icons/big-referal/index.js";import"../../icons/attach-file/index.js";import"../../icons/voice/index.js";import"../../icons/play-button/index.js";import"../../icons/pause-button/index.js";import"../../icons/text-read/index.js";import"../../icons/text-hide/index.js";import"../../icons/best-chat-bots/index.js";import"../../icons/upload/index.js";import"../../icons/enter/index.js";import"../../icons/discord/index.js";import"../../icons/discord-circle/index.js";import"../../icons/black-forest-labs/index.js";import"../../icons/flux/index.js";import"../../icons/stable-diffusion/index.js";import"../../icons/stability-ai/index.js";import"../../icons/article-generator/index.js";import"../../icons/success/index.js";import"../../icons/google/index.js";import"../../icons/yandex/index.js";import"../../icons/vk/index.js";import"../../icons/resend/index.js";import"../../icons/big-article/index.js";import"../../icons/add-chat/index.js";import"../../icons/add-group/index.js";import"../../icons/drag-dot/index.js";import"../../icons/add-folder/index.js";import"../../icons/temp-chat/index.js";import"../../icons/delete-chat/index.js";import"../../icons/sidebar-chat/index.js";import"../../icons/organization/index.js";import"../../icons/simple-gear/index.js";import"../../icons/text-bold/index.js";import"../../icons/text-italic/index.js";import"../../icons/text-underline/index.js";import"../../icons/text-strikethrough/index.js";import"../../icons/refresh/index.js";import"../../icons/copy-variants/index.js";import"../../icons/sort-ascending/index.js";import"../../icons/sort-descending/index.js";import"../../icons/quote/index.js";import"../../icons/url-circle/index.js";import"../../icons/show-ui/index.js";import"../../icons/hide-ui/index.js";import"../../icons/sort-user/index.js";import"../../icons/happy-robot/index.js";import"../../icons/happy-robot-gradient/index.js";import"../../icons/min-window/index.js";import"../../icons/max-window/index.js";import"../../icons/manage-chat/index.js";import"../../icons/analyze-urls/index.js";import"../../icons/web-search/index.js";import"../../icons/include-context/index.js";import"../../icons/queue/index.js";import"../../icons/cot-r1/index.js";import"../../icons/sort-alphabet-bottom-top/index.js";import"../../icons/sort-alphabet-top-bottom/index.js";import"../../icons/news/index.js";import"./reasoning-block/styled.js";import"../typography/styled.js";import"./search-results/styled.js";import{useTheme as E}from"../../theme/hook.js";const $=({id:$,content:P,className:A,variant:N="user",color:z="default",name:F,tags:V,avatar:D,transaction:H,disableResend:q=!1,disableEdit:U=!1,disableDelete:W=!1,disableUpdate:G=!1,disableCopy:O=!1,copyPlainText:Z,copyTgText:_,editText:J,resendText:K,deleteText:Q,onReportText:X,submitEditTooltipLabel:Y,discardEditTooltipLabel:ii,updateTooltipLabel:ei,copyTooltipLabel:oi,typing:si=!1,timestamp:ti,timestampPosition:ni="right",skeleton:ri=!1,buttons:di,after:ci,components:pi,children:ai,version:mi,totalVersions:li,onCopy:xi,onCodeCopy:ji,onEdit:gi,onResend:ui,onDelete:bi,onUpdate:yi,onReport:hi,onNextVersion:fi,onPrevVersion:Mi})=>{const wi=E(),Ti=s(null),ki=s(null),Ci=s(null),[vi,Si]=t(!1),[Ii,Bi]=t(null!=P?P:""),Li=n((i=>{var e;Bi(null!==(e=i.target.textContent)&&void 0!==e?e:"")}),[]),Ri=n((i=>{const e=(new DOMParser).parseFromString(i.innerHTML,"text/html"),o=e.getElementsByTagName("code");for(const i of o){const o=e.createElement("span");o.innerText=i.innerText,i.replaceWith(o)}return[new ClipboardItem({"text/plain":new Blob([P],{type:"text/plain"}),"text/html":new Blob([e.body.innerHTML],{type:"text/html"})})]}),[P]),Ei=n((i=>[new ClipboardItem({"text/plain":new Blob([i.innerText],{type:"text/plain"})})]),[]),$i=n((i=>{const e=k(i);return[new ClipboardItem({"text/plain":new Blob([e],{type:"text/plain"})})]}),[]),Pi=n((()=>{if(ki.current)return null==xi?void 0:xi(Ei(ki.current))}),[ki.current]),Ai=n((()=>{if(P)return null==xi?void 0:xi($i(P))}),[ki.current]),Ni=n((()=>{if(ki.current&&P)return null==xi?void 0:xi(Ri(ki.current))}),[ki.current,P]);let zi;switch(z&&"object"==typeof CSS&&"function"==typeof CSS.supports&&CSS.supports("background",null!=z?z:"#000")||(z="default"),N){case"user":switch(z){case"default":zi=wi.colors.accent.primary;break;case"green":zi=wi.colors.gpt3;break;case"purple":zi=wi.colors.gpt4;break;default:zi=z}break;case"assistant":switch(z){case"default":zi="dark"===wi.mode?wi.colors.grayScale.gray2:wi.colors.grayScale.gray3;break;case"green":zi=wi.colors.gpt3;break;case"purple":zi=wi.colors.gpt4;break;default:zi=z}}return r((()=>{if(Ci.current){Ci.current.focus();const i=document.createRange(),e=window.getSelection();i.selectNodeContents(Ci.current),i.collapse(!1),null==e||e.removeAllRanges(),null==e||e.addRange(i)}}),[Ci,vi]),i(C,{variant:N,color:z,typing:si,onCopy:Pi,onCodeCopy:ji,children:i(d,{$variant:N,ref:Ti,children:e(c,{children:[i(p,{$variant:N,className:A,children:e(a,{$variant:N,children:[(F||H)&&e(m,{children:["string"==typeof F&&e(l,{children:[i(x,{$color:z,children:F}),V]}),"string"!=typeof F&&i("div",{}),i(j,{$top:!0,children:H})]}),"string"!=typeof F&&F,i(g,{children:D}),i(u,{children:e(b,{$variant:N,$hexColor:zi,$skeleton:ri,$hasTimestamp:!!ti,$timestampPosition:ni,children:[i(y,{scrollShadows:{color:zi,size:60,left:i(I,{side:"left"}),right:i(I,{side:"right"})},children:i(h,{ref:ki,$variant:N,children:vi?i(v,{disableMargin:!0,children:i(f,{onInput:Li,ref:Ci,children:P})}):e(o,{children:[!ri&&e(o,{children:["string"==typeof ai&&i(S,{components:pi,children:ai}),"string"!=typeof ai&&ai]}),ri&&i(v,{disableMargin:!0,children:i(T,{width:260,opacity:["light"===wi.mode?.1:.15,"light"===wi.mode?.225:.45],colors:["user"===N?wi.colors.base.white:"light"===wi.mode?wi.default.colors.base.black:wi.colors.grayScale.gray6]})}),ci]})})}),ti&&i(B,{time:ti,position:ni})]})})]})}),e(M,{$variant:N,children:[!ri&&i(L,{id:$,message:P,variant:N,skeleton:ri,disableResend:q,disableEdit:U,disableDelete:W,disableUpdate:G,disableCopy:O,copyPlainText:Z,copyTgText:_,editText:J,resendText:K,deleteText:Q,onReportText:X,submitEditTooltipLabel:Y,discardEditTooltipLabel:ii,updateTooltipLabel:ei,copyTooltipLabel:oi,editing:vi,editedText:Ii,messageRef:Ti,onEditing:Si,onEditedText:Bi,onEdit:gi,onResend:ui,onDelete:bi,onUpdate:yi,onReport:hi,onPlainTextCopy:Pi,onTgCopy:Ai,onCopy:Ni}),H&&i(j,{children:H}),i(R,{id:$,version:mi,totalVersions:li,onNextVersion:fi,onPrevVersion:Mi,editing:vi,variant:N})]}),i(w,{children:di})]})})})};export{$ as Message,g as MessageAvatar,b as MessageBlock,M as MessageBlockBottomPanel,h as MessageBlockContent,y as MessageBlockScrollbarWrapper,f as MessageBlockTextArea,j as MessageBlockTransaction,u as MessageBlockWrapper,w as MessageButtonsStyled,a as MessageContent,S as MessageMarkdown,x as MessageName,v as MessageParagraph,C as MessageProvider,l as MessageSender,p as MessageStyled,c as MessageStyledWithBottomPanel,d as MessageStyledWrapper,m as MessageTop};
|
|
1
|
+
import{jsx as i,jsxs as e,Fragment as o}from"react/jsx-runtime";import{useRef as s,useState as t,useCallback as n,useEffect as r}from"react";import{MessageStyledWrapper as d,MessageStyledWithBottomPanel as c,MessageStyled as p,MessageContent as a,MessageTop as m,MessageSender as l,MessageName as x,MessageBlockTransaction as j,MessageAvatar as g,MessageBlockWrapper as u,MessageBlock as b,MessageBlockScrollbarWrapper as y,MessageBlockContent as h,MessageBlockTextArea as f,MessageBlockBottomPanel as M,MessageButtonsStyled as w}from"./styled.js";export{MessageAction,MessageActions,MessageBottom,MessageEditAction,MessageImageBottomArrowButton,MessageImageLeftArrowButton,MessageImageRightArrowButton,MessageImageTopArrowButton,MessageTag,MessageTags,MessageTransaction}from"./styled.js";import{Skeleton as T}from"../skeleton/index.js";import"../../theme/index.js";import{getTgMarkdown as k}from"../../utils/getTgMarkdown.js";import{MessageProvider as C}from"./context.js";export{MessageConsumer,MessageContext,useMessage}from"./context.js";import"tslib";export{MessageInlineCodeStyled}from"./components/code/inline/styled.js";export{MessageMultilineCodeBody,MessageMultilineCodeHead,MessageMultilineCodeLanguage,MessageMultilineCodeStyled}from"./components/code/multiline/styled.js";import"@react-spring/web";import"react-dom";import"../portal/styled.js";import"../tooltip/styled.js";import"../tooltip/arrow/styled.js";import"../tooltip/context.js";import"./components/code/multiline/copy/styled.js";import"../../icons/check-small/index.js";import"../../icons/copy/index.js";import"./components/code/multiline/content/styled.js";import{MessageParagraph as v}from"./components/paragraph/index.js";export{MessageBoldStyled}from"./components/bold/styled.js";export{MessageItalicStyled}from"./components/italic/styled.js";export{MessagePre}from"./components/pre/styled.js";export{MessageTableBody,MessageTableContent,MessageTableHead,MessageTableRow,MessageTableStyled}from"./components/table/styled.js";export{MessageTableCellStyled,MessageTableCellText,MessageTableHeadCell}from"./components/table/cell/styled.js";export{MessageListStyled}from"./components/list/styled.js";import"./components/list/context.js";export{MessageListItemStyled}from"./components/list/item/styled.js";export{MessageTitleStyled}from"./components/title/styled.js";export{MessageLinkStyled}from"./components/link/styled.js";export{MessageImageNative,MessageImageSkeleton,MessageImageStyled}from"./components/image/styled.js";export{MessageImageConsumer,MessageImageContext,MessageImageProvider,useMessageImage}from"./components/image/context.js";export{MessageImageGrid}from"./components/image/grid/styled.js";export{MessageImageButtonContent,MessageImageButtonStyled,MessageImageButtonZoneWrapper}from"./components/image/button/styled.js";export{MessageImageButtonsContent,MessageImageButtonsStyled}from"./components/image/button/list/styled.js";import{MessageMarkdown as S}from"./markdown/index.js";import"../scrollbar/styled.js";import{ScrollbarShadow as I}from"../scrollbar/shadow/index.js";import"../scrollbar/style/styled.js";import{MessageTimestamp as B}from"./timestamp/index.js";import{MessageActions as L}from"./actions/index.js";import{MessageVersions as R}from"./versions/index.js";import"./list/styled.js";import"./copy/styled.js";import"./badge-progress/styled.js";export{MessageButton}from"./button/styled.js";import"./button/list/styled.js";export{MessageFileInfo,MessageFileName,MessageFileSize,MessageFileStyled,MessageFiles}from"./file/styled.js";import"../icon/styled.js";import"../../icons/pdf-big/index.js";import"../../icons/txt-big/index.js";import"../../icons/word-big/index.js";import"../../icons/xls-big/index.js";import"../../icons/attach-file-big/index.js";import"./voice/styled.js";import"../../icons/arrow-down/index.js";import"../../icons/arrow-narrow-left/index.js";import"../../icons/arrow-narrow-right/index.js";import"../../icons/arrow-up/index.js";import"../../icons/bitcoin/index.js";import"../../icons/bot-circle/index.js";import"../../icons/bothub-agg/index.js";import"../../icons/business-colored/index.js";import"../../icons/check-circle/index.js";import"../../icons/close/index.js";import"../../icons/email-circle/index.js";import"../../icons/language/index.js";import"../../icons/lock-circle/index.js";import"../../icons/menu/index.js";import"../../icons/medium-circle/index.js";import"../../icons/tg-circle/index.js";import"../../icons/tg-colored/index.js";import"../../icons/youcassa/index.js";import"../../icons/dashboard/index.js";import"../../icons/user-profile/index.js";import"../../icons/logout/index.js";import"../../icons/habr-2/index.js";import"../../icons/arrow-2-down/index.js";import"../../icons/links/index.js";import"../../icons/free/index.js";import"../../icons/hotness/index.js";import"../../icons/checked/index.js";import"../../icons/ai/index.js";import"../../icons/bookmarks/index.js";import"../../icons/bookmarks-big/index.js";import"../../icons/chat/index.js";import"../../icons/chats/index.js";import"../../icons/coder/index.js";import"../../icons/edit/index.js";import"../../icons/minimize/index.js";import"../../icons/presets-big/index.js";import"../../icons/referal/index.js";import"../../icons/restore/index.js";import"../../icons/tariff/index.js";import"../../icons/trash/index.js";import"../../icons/unminimize/index.js";import"../../icons/update/index.js";import"../../icons/menu-dot/index.js";import"../../icons/plus-2/index.js";import"../../icons/plus-1/index.js";import"../../icons/send/index.js";import"../../icons/settings/index.js";import"../../icons/habr/index.js";import"../../icons/stop/index.js";import"../../icons/thumb-up/index.js";import"../../icons/thumb-down/index.js";import"../../icons/star/index.js";import"../../icons/info-big/index.js";import"../../icons/warning-big/index.js";import"../../icons/error-big/index.js";import"../../icons/success-big/index.js";import"../../icons/mj/index.js";import"../../icons/card/index.js";import"../../icons/arrow-narrow-up/index.js";import"../../icons/arrow-narrow-down/index.js";import"../../icons/filters/index.js";import"../../icons/info/index.js";import"../../icons/search-circle/index.js";import"../../icons/save/index.js";import"../../icons/light/index.js";import"../../icons/dark/index.js";import"../../icons/email-colored/index.js";import"../../icons/action-chat/index.js";import"../../icons/attach/index.js";import"../../icons/avatar-add/index.js";import"../../icons/brush/index.js";import"../../icons/calendar/index.js";import"../../icons/claude/index.js";import"../../icons/cookie/index.js";import"../../icons/dalle/index.js";import"../../icons/download-img/index.js";import"../../icons/error/index.js";import"../../icons/expand/index.js";import"../../icons/eye/index.js";import"../../icons/face/index.js";import"../../icons/gear/index.js";import"../../icons/gear-min/index.js";import"../../icons/generation/index.js";import"../../icons/gpt-3_5/index.js";import"../../icons/gpt-4/index.js";import"../../icons/imagine/index.js";import"../../icons/imagine-2/index.js";import"../../icons/loader/index.js";import"../../icons/loader-circular/index.js";import"../../icons/loader-circular-gradient/index.js";import"../../icons/loader-circular-gradient-2/index.js";import"../../icons/minus/index.js";import"../../icons/mj-white/index.js";import"../../icons/prompt/index.js";import"../../icons/rabbit/index.js";import"../../icons/ratio-1x1/index.js";import"../../icons/ratio-2x3/index.js";import"../../icons/ratio-3x2/index.js";import"../../icons/ratio-4x5/index.js";import"../../icons/ratio-4x7/index.js";import"../../icons/ratio-5x4/index.js";import"../../icons/ratio-7x4/index.js";import"../../icons/ratio-16x9/index.js";import"../../icons/ratio-9x16/index.js";import"../../icons/ratio-21x9/index.js";import"../../icons/ratio-9x21/index.js";import"../../icons/refferal-min/index.js";import"../../icons/search-data/index.js";import"../../icons/square/index.js";import"../../icons/turtle/index.js";import"../../icons/upscale/index.js";import"../../icons/withdraw/index.js";import"../../icons/search-plus/index.js";import"../../icons/lightning/index.js";import"../../icons/blog-circle/index.js";import"../../icons/stripe/index.js";import"../../icons/corporate/index.js";import"../../icons/public/index.js";import"../../icons/private/index.js";import"../../icons/mistral/index.js";import"../../icons/gemini/index.js";import"../../icons/search-simple/index.js";import"../../icons/sad-robot/index.js";import"../../icons/model/index.js";import"../../icons/phone-colored/index.js";import"../../icons/questions/index.js";import"../../icons/pdf/index.js";import"../../icons/xls/index.js";import"../../icons/word/index.js";import"../../icons/txt/index.js";import"../../icons/bothub-logo-gradient/index.js";import"../../icons/telegram-logo-gradient/index.js";import"../../icons/decline-circle/index.js";import"../../icons/simple-gear-bg/index.js";import"../../icons/advanced-filter/index.js";import"../../icons/big-corporate/index.js";import"../../icons/big-mj/index.js";import"../../icons/big-models/index.js";import"../../icons/big-stats/index.js";import"../../icons/big-success/index.js";import"../../icons/big-users/index.js";import"../../icons/optional-presets/index.js";import"../../icons/wallet-withdraw/index.js";import"../../icons/big-presets/index.js";import"../../icons/big-favorite/index.js";import"../../icons/big-referal/index.js";import"../../icons/attach-file/index.js";import"../../icons/voice/index.js";import"../../icons/play-button/index.js";import"../../icons/pause-button/index.js";import"../../icons/text-read/index.js";import"../../icons/text-hide/index.js";import"../../icons/best-chat-bots/index.js";import"../../icons/upload/index.js";import"../../icons/enter/index.js";import"../../icons/discord/index.js";import"../../icons/discord-circle/index.js";import"../../icons/black-forest-labs/index.js";import"../../icons/flux/index.js";import"../../icons/stable-diffusion/index.js";import"../../icons/stability-ai/index.js";import"../../icons/article-generator/index.js";import"../../icons/success/index.js";import"../../icons/google/index.js";import"../../icons/yandex/index.js";import"../../icons/vk/index.js";import"../../icons/resend/index.js";import"../../icons/big-article/index.js";import"../../icons/add-chat/index.js";import"../../icons/add-group/index.js";import"../../icons/drag-dot/index.js";import"../../icons/add-folder/index.js";import"../../icons/temp-chat/index.js";import"../../icons/delete-chat/index.js";import"../../icons/sidebar-chat/index.js";import"../../icons/organization/index.js";import"../../icons/simple-gear/index.js";import"../../icons/text-bold/index.js";import"../../icons/text-italic/index.js";import"../../icons/text-underline/index.js";import"../../icons/text-strikethrough/index.js";import"../../icons/refresh/index.js";import"../../icons/copy-variants/index.js";import"../../icons/sort-ascending/index.js";import"../../icons/sort-descending/index.js";import"../../icons/quote/index.js";import"../../icons/url-circle/index.js";import"../../icons/show-ui/index.js";import"../../icons/hide-ui/index.js";import"../../icons/sort-user/index.js";import"../../icons/happy-robot/index.js";import"../../icons/happy-robot-gradient/index.js";import"../../icons/min-window/index.js";import"../../icons/max-window/index.js";import"../../icons/manage-chat/index.js";import"../../icons/analyze-urls/index.js";import"../../icons/web-search/index.js";import"../../icons/include-context/index.js";import"../../icons/queue/index.js";import"../../icons/cot-r1/index.js";import"../../icons/sort-alphabet-bottom-top/index.js";import"../../icons/sort-alphabet-top-bottom/index.js";import"../../icons/news/index.js";import"./reasoning-block/styled.js";import"../typography/styled.js";import"./search-results/styled.js";import{useTheme as E}from"../../theme/hook.js";const $=({id:$,content:P,className:A,variant:N="user",color:z="default",name:F,tags:V,avatar:D,transaction:H,disableResend:q=!1,disableEdit:U=!1,disableDelete:W=!1,disableUpdate:G=!1,disableCopy:O=!1,copyPlainText:Z,copyTgText:_,editText:J,resendText:K,deleteText:Q,onReportText:X,submitEditTooltipLabel:Y,discardEditTooltipLabel:ii,updateTooltipLabel:ei,copyTooltipLabel:oi,typing:si=!1,timestamp:ti,timestampPosition:ni="right",skeleton:ri=!1,buttons:di,after:ci,components:pi,children:ai,version:mi,totalVersions:li,onCopy:xi,onCodeCopy:ji,onEdit:gi,onResend:ui,onDelete:bi,onUpdate:yi,onReport:hi,onNextVersion:fi,onPrevVersion:Mi})=>{const wi=E(),Ti=s(null),ki=s(null),Ci=s(null),vi=s(null),[Si,Ii]=t(!1),[Bi,Li]=t(null!=P?P:""),Ri=n((i=>{var e;Li(null!==(e=i.target.textContent)&&void 0!==e?e:"")}),[]),Ei=n((i=>{const e=(new DOMParser).parseFromString(i.innerHTML,"text/html"),o=e.getElementsByTagName("code");for(const i of o){const o=e.createElement("span");o.innerText=i.innerText,i.replaceWith(o)}return[new ClipboardItem({"text/plain":new Blob([P],{type:"text/plain"}),"text/html":new Blob([e.body.innerHTML],{type:"text/html"})})]}),[P]),$i=n((i=>[new ClipboardItem({"text/plain":new Blob([i.innerText],{type:"text/plain"})})]),[]),Pi=n((i=>{const e=k(i);return[new ClipboardItem({"text/plain":new Blob([e],{type:"text/plain"})})]}),[]),Ai=n((()=>{if(ki.current)return null==xi?void 0:xi($i(ki.current))}),[ki.current,P]),Ni=n((()=>{if(Ci.current)return null==xi?void 0:xi(Pi(Ci.current))}),[Ci.current]),zi=n((()=>{if(ki.current&&P)return null==xi?void 0:xi(Ei(ki.current))}),[ki.current,P]);let Fi;switch(z&&"object"==typeof CSS&&"function"==typeof CSS.supports&&CSS.supports("background",null!=z?z:"#000")||(z="default"),N){case"user":switch(z){case"default":Fi=wi.colors.accent.primary;break;case"green":Fi=wi.colors.gpt3;break;case"purple":Fi=wi.colors.gpt4;break;default:Fi=z}break;case"assistant":switch(z){case"default":Fi="dark"===wi.mode?wi.colors.grayScale.gray2:wi.colors.grayScale.gray3;break;case"green":Fi=wi.colors.gpt3;break;case"purple":Fi=wi.colors.gpt4;break;default:Fi=z}}return r((()=>{if(vi.current){vi.current.focus();const i=document.createRange(),e=window.getSelection();i.selectNodeContents(vi.current),i.collapse(!1),null==e||e.removeAllRanges(),null==e||e.addRange(i)}}),[vi,Si]),r((()=>{P&&(Ci.current=P)}),[P]),i(C,{variant:N,color:z,typing:si,onCopy:Ai,onCodeCopy:ji,children:i(d,{$variant:N,ref:Ti,children:e(c,{children:[i(p,{$variant:N,className:A,children:e(a,{$variant:N,children:[(F||H)&&e(m,{children:["string"==typeof F&&e(l,{children:[i(x,{$color:z,children:F}),V]}),"string"!=typeof F&&i("div",{}),i(j,{$top:!0,children:H})]}),"string"!=typeof F&&F,i(g,{children:D}),i(u,{children:e(b,{$variant:N,$hexColor:Fi,$skeleton:ri,$hasTimestamp:!!ti,$timestampPosition:ni,children:[i(y,{scrollShadows:{color:Fi,size:60,left:i(I,{side:"left"}),right:i(I,{side:"right"})},children:i(h,{ref:ki,$variant:N,children:Si?i(v,{disableMargin:!0,children:i(f,{onInput:Ri,ref:vi,children:P})}):e(o,{children:[!ri&&e(o,{children:["string"==typeof ai&&i(S,{components:pi,children:ai}),"string"!=typeof ai&&ai]}),ri&&i(v,{disableMargin:!0,children:i(T,{width:260,opacity:["light"===wi.mode?.1:.15,"light"===wi.mode?.225:.45],colors:["user"===N?wi.colors.base.white:"light"===wi.mode?wi.default.colors.base.black:wi.colors.grayScale.gray6]})}),ci]})})}),ti&&i(B,{time:ti,position:ni})]})})]})}),e(M,{$variant:N,children:[!ri&&i(L,{id:$,message:P,variant:N,skeleton:ri,disableResend:q,disableEdit:U,disableDelete:W,disableUpdate:G,disableCopy:O,copyPlainText:Z,copyTgText:_,editText:J,resendText:K,deleteText:Q,onReportText:X,submitEditTooltipLabel:Y,discardEditTooltipLabel:ii,updateTooltipLabel:ei,copyTooltipLabel:oi,editing:Si,editedText:Bi,messageRef:Ti,onEditing:Ii,onEditedText:Li,onEdit:gi,onResend:ui,onDelete:bi,onUpdate:yi,onReport:hi,onPlainTextCopy:Ai,onTgCopy:Ni,onCopy:zi}),H&&i(j,{children:H}),i(R,{id:$,version:mi,totalVersions:li,onNextVersion:fi,onPrevVersion:Mi,editing:Si,variant:N})]}),i(w,{children:di})]})})})};export{$ as Message,g as MessageAvatar,b as MessageBlock,M as MessageBlockBottomPanel,h as MessageBlockContent,y as MessageBlockScrollbarWrapper,f as MessageBlockTextArea,j as MessageBlockTransaction,u as MessageBlockWrapper,w as MessageButtonsStyled,a as MessageContent,S as MessageMarkdown,x as MessageName,v as MessageParagraph,C as MessageProvider,l as MessageSender,p as MessageStyled,c as MessageStyledWithBottomPanel,d as MessageStyledWrapper,m as MessageTop};
|