@bothub-chat/ui 2.80.26 → 2.80.27
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/components/input-message/index.js +1 -1
- package/dist/components/message/components/cite/index.d.ts +5 -0
- package/dist/components/message/components/cite/index.js +1 -0
- package/dist/components/message/components/cite/styled.d.ts +4 -0
- package/dist/components/message/components/cite/styled.js +13 -0
- package/dist/components/message/components/index.d.ts +1 -0
- package/dist/components/message/index.js +1 -1
- package/dist/components/message/markdown/index.js +1 -1
- package/dist/components/message/markdown/markdown-components.js +1 -1
- package/dist/components/message/markdown/markdown-plugins.d.ts +4 -1
- package/dist/components/message/markdown/markdown-plugins.js +1 -0
- package/dist/components/message/markdown/styled.js +1 -1
- package/dist/components/message/markdown/useMarkdownPlugins.js +1 -1
- package/dist/components/message/markdown/utils.js +1 -1
- package/dist/components/message/reasoning-block/markdown-components.js +1 -1
- package/dist/components/tariff/card/index.d.ts +12 -2
- package/dist/components/tariff/card/index.js +1 -1
- package/dist/components/tariff/card/styled.d.ts +286 -0
- package/dist/components/tariff/card/styled.js +3 -3
- package/dist/index.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__rest as i,__awaiter as e}from"tslib";import{jsx as s,jsxs as o}from"react/jsx-runtime";import{useRef as n,useState as t,useCallback as r}from"react";import{InputMessageStyled as d,InputMessageContent as c,InputMessageActions as m,InputMessageUploadFile as a,InputMessageUploadFileLabel as p,InputMessageUploadFileInput as l,InputMessageMain as j,InputMessageEditWrapper as x,InputMessageContentWrapper as g,InputMessageContentInfo as u,InputMessageContentActionText as b,InputMessageContentTextWrapper as h,InputMessageContentTextFiles as y,InputMessageContentTextMessage as f,InputMessageCloseEditButton as k,InputMessageVoiceRecord as v,InputMessageVoiceRecordDot as w,InputMessageVoiceRecordTimeText as F,InputMessageConcatenateWarning as A,InputMessageVoiceFiles as C,InputMessageVoiceTrack as L,InputMessageVoiceFileDelete as V,InputMessageTextArea as D,InputMessageButtons as S,InputMessageVoicePlayButton as T,InputMessageVoicePauseButton as E,InputMessageVoiceButton as q,InputMessageSendButton as P,InputMessageSendIcon as R}from"./styled.js";import"marked";import"../message/styled.js";import"../loader/styled.js";import"../../theme/index.js";import"../loader/three-dots-loader/styled.js";import"../skeleton/index.js";import"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import"../../utils/colors/calculateGrayScale.js";import"../../utils/colors/calculateAccentColors.js";import{formatSeconds as $}from"../../utils/formatSeconds.js";import"../message/context.js";import"styled-components";import"../message/components/code/inline/styled.js";import"../message/components/code/multiline/styled.js";import"@react-spring/web";import"react-markdown";import"react-dom";import"../portal/styled.js";import"../tooltip/styled.js";import"../tooltip/arrow/styled.js";import"../tooltip/context.js";import"../message/components/code/multiline/copy/styled.js";import{CheckSmallIcon as z}from"../../icons/check-small/index.js";import"../../icons/copy/index.js";import"../message/components/code/multiline/content/styled.js";import"../message/components/paragraph/styled.js";import"../message/components/bold/styled.js";import"../message/components/italic/styled.js";import"../message/components/strike/styled.js";import"../message/components/blockquote/styled.js";import"../message/components/hr/styled.js";import"../message/components/pre/styled.js";import"../message/components/table/styled.js";import"../message/components/table/cell/styled.js";import"../message/components/list/styled.js";import"../message/components/list/context.js";import"../message/components/list/item/styled.js";import"../message/components/title/styled.js";import"../message/components/link/styled.js";import"../message/components/image/styled.js";import"../message/components/image/context.js";import"../message/components/image/grid/styled.js";import"../message/components/image/button/styled.js";import"../message/components/image/button/list/styled.js";import"../message/components/document-copy/styled.js";import"../message/markdown/styled.js";import"remark-math";import"rehype-katex";import"katex/dist/katex.min.css";import"../scrollbar/styled.js";import"../scrollbar/shadow/styled.js";import"../scrollbar/style/styled.js";import"../message/timestamp/styled.js";import"../../icons/menu-dot/index.js";import"../../icons/update/index.js";import"../../icons/resend/index.js";import{EditIcon as B}from"../../icons/edit/index.js";import"../../icons/trash/index.js";import"../../icons/thumb-down/index.js";import"../../icons/download-img/index.js";import"../message/actions/styled.js";import"../message/actions/copy-button/styled.js";import"../message/list/styled.js";import"../message/scroll-button/styled.js";import{IconProvider as O}from"../icon/context.js";import"../icon/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{CloseIcon as I}from"../../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/presets-big/index.js";import"../../icons/referal/index.js";import"../../icons/restore/index.js";import"../../icons/tariff/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/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{AttachIcon as K}from"../../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/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-big/index.js";import"../../icons/xls-big/index.js";import"../../icons/word-big/index.js";import"../../icons/txt-big/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/attach-file-big/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/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/sort-alphabet-ascending/index.js";import"../../icons/sort-alphabet-descending/index.js";import"../../icons/sort-date-ascending/index.js";import"../../icons/sort-date-descending/index.js";import"../../icons/cot-r1/index.js";import"../../icons/news/index.js";import"../../icons/volume/index.js";import"../../icons/flag-ru/index.js";import"../../icons/flag-kz/index.js";import"../../icons/print/index.js";import"../../icons/pc-icon-1/index.js";import"../../icons/pc-icon-2/index.js";import"../../icons/pc-icon-3/index.js";import"../../icons/star-unfilled/index.js";import"../../icons/image-generation/index.js";import"../../icons/speech-synthesys/index.js";import"../../icons/transcription/index.js";import"../../icons/text-rewrite/index.js";import"../../icons/code-generation/index.js";import"../../icons/essay-generation/index.js";import"../../icons/spelling/index.js";import"../../icons/text-generation/index.js";import"../../icons/traffic-analisys/index.js";import"../../icons/fav-profile/index.js";import"../../icons/exclamation/index.js";import"../../icons/article/index.js";import"../../icons/setchel/index.js";import"../../icons/assembly/index.js";import"../../icons/data-visualisation/index.js";import"../../icons/document-analisys/index.js";import"../../icons/problem-solvment/index.js";import"../../icons/setting-analisys/index.js";import"../../icons/translation/index.js";import"../../icons/stars/index.js";import"../../icons/academy/index.js";import"../../icons/articles/index.js";import"../../icons/blog-post/index.js";import"../../icons/book/index.js";import"../../icons/bow-tie/index.js";import"../../icons/case-study/index.js";import"../../icons/comments/index.js";import"../../icons/guide/index.js";import"../../icons/marketing/index.js";import"../../icons/post/index.js";import"../../icons/report/index.js";import"../../icons/review/index.js";import"../../icons/scientific-article/index.js";import"../../icons/selling-text/index.js";import"../../icons/textbook/index.js";import"../../icons/wind/index.js";import"../../icons/grok/index.js";import"../../icons/deepseek/index.js";import"../../icons/grid-horizontal/index.js";import"../../icons/grid-vertical/index.js";import"../../icons/star-gradient/index.js";import"../../icons/qwen/index.js";import"../../icons/sidebar-toggle-left/index.js";import"../../icons/sidebar-toggle-right/index.js";import"../../icons/system/index.js";import"../../icons/selector/index.js";import"../../icons/video-camera/index.js";import"../../icons/music-note/index.js";import"../../icons/add-profile/index.js";import"../../icons/token-counter/index.js";import"../../icons/customer-support/index.js";import"../../icons/sort-alphabet-top-bottom/index.js";import"../../icons/sort-alphabet-bottom-top/index.js";import"../../icons/pause/index.js";import"../../icons/play/index.js";import"../../icons/restore-2/index.js";import"../../icons/video-generation/index.js";import"../../icons/veo-model/index.js";import"../../icons/runway/index.js";import"../../icons/queue-select/index.js";import"../../icons/apple/index.js";import"../../icons/mail-colored/index.js";import"../../icons/shield/index.js";import"../../icons/stars-gradient/index.js";import"../../icons/fire/index.js";import"../../icons/brain/index.js";import"../../icons/mj-purple/index.js";import"../../icons/claude-black/index.js";import"../../icons/vk-filled/index.js";import"../../icons/tg/index.js";import"../../icons/gift/index.js";import"../../icons/exchange/index.js";import"../../icons/time/index.js";import"../../icons/folder/index.js";import"../../icons/history/index.js";import"../../icons/money-plus/index.js";import"../../icons/money-stack/index.js";import"../../icons/sort-numeric-bottom/index.js";import"../../icons/sort-numeric-top/index.js";import"../../icons/bulb/index.js";import"../../icons/prompt-queue/index.js";import"../../icons/image/index.js";import"../../icons/text/index.js";import"../../icons/code/index.js";import"../../icons/blue-grok/index.js";import"../../icons/double-image/index.js";import"../../icons/pdf-black/index.js";import"../../icons/csv/index.js";import"../../icons/xls-black/index.js";import"../../icons/word-black/index.js";import"../../icons/brain-black/index.js";import"../../icons/txt-black/index.js";import"../../icons/workspace/index.js";import"../../icons/chat-doc/index.js";import"../../icons/money-spend/index.js";import"../../icons/money-minus/index.js";import"../../icons/max-logo-gradient/index.js";import"../../icons/empty-word/index.js";import"../../icons/music-file/index.js";import"../../icons/sad-file/index.js";import"../../icons/happy-file/index.js";import"../../icons/volume-off/index.js";import"../../icons/github/index.js";import"../../icons/erase/index.js";import"../../icons/arrow-narrow-stars-right/index.js";import"../../icons/literature-list/index.js";import"../../icons/bell-dot/index.js";import"../../icons/bell/index.js";import"../../icons/kwaivgi/index.js";import"../../icons/dollar/index.js";import"../message/versions/styled.js";import"../message/copy/styled.js";import"../message/badge-progress/styled.js";import"../message/button/styled.js";import"../message/button/list/styled.js";import"../message/file/styled.js";import{MessageVoice as M}from"../message/voice/index.js";import"../message/reasoning-block/styled.js";import"../typography/styled.js";import"../message/search-results/styled.js";import"../message/video/styled.js";import"../message/music/styled.js";import{useVoice as N}from"./use-voice.js";import{useFiles as U}from"./use-files.js";import{useInput as G}from"./use-input.js";import{InputMessageFiles as H}from"./input-files.js";import{useTheme as W}from"../../theme/hook.js";const _=_=>{var{className:J,placeholder:Q,editingProps:X,hiddenSend:Y=!1,message:Z,files:ii,imageRequiredText:ei,disabled:si=!1,sendDisabled:oi=!1,textAreaDisabled:ni=!1,messageSubmitKey:ti="enter",concatenateText:ri,uploadFileLimit:di=20,concatenateVideo:ci,hideUploadFile:mi=!1,uploadFileDisabled:ai=!1,uploadFileAccept:pi,autoFocus:li=!0,voice:ji=!1,onChange:xi,handleImageClick:gi,onFilesChange:ui,onVoiceFilesChange:bi,onTextAreaChange:hi,onSend:yi,onFocus:fi,onBlur:ki,emitError:vi,actions:wi,attachAriaLabel:Fi,sendAriaLabel:Ai,saveAriaLabel:Ci,voiceAriaLabel:Li,stopVoiceAriaLabel:Vi,pauseVoiceAriaLabel:Di,resumeVoiceAriaLabel:Si,cancelEditAriaLabel:Ti,deleteVoiceAriaLabel:Ei,deleteFileAriaLabel:qi}=_,Pi=i(_,["className","placeholder","editingProps","hiddenSend","message","files","imageRequiredText","disabled","sendDisabled","textAreaDisabled","messageSubmitKey","concatenateText","uploadFileLimit","concatenateVideo","hideUploadFile","uploadFileDisabled","uploadFileAccept","autoFocus","voice","onChange","handleImageClick","onFilesChange","onVoiceFilesChange","onTextAreaChange","onSend","onFocus","onBlur","emitError","actions","attachAriaLabel","sendAriaLabel","saveAriaLabel","voiceAriaLabel","stopVoiceAriaLabel","pauseVoiceAriaLabel","resumeVoiceAriaLabel","cancelEditAriaLabel","deleteVoiceAriaLabel","deleteFileAriaLabel"]);const Ri=W(),$i=n(null),[zi,Bi]=t(!1),{files:Oi,setFiles:Ii,handleFilePaste:Ki,handleFileInputChange:Mi,handleSideUploadFiles:Ni,handleDeleteFile:Ui}=U({uploadFileAccept:pi,uploadFileLimit:di,uploadFileDisabled:ai,initialFiles:ii,emitError:vi,onFilesChange:ui}),{voiceFiles:Gi,isVoiceRecording:Hi,isVoicePaused:Wi,voiceRecordingTime:_i,setVoiceFiles:Ji,handleVoiceRecordStart:Qi,handleVoiceRecordEnd:Xi,handleVoiceResume:Yi,handleVoicePause:Zi,handleVoiceFileDelete:ie}=N({onVoiceFilesChange:bi}),{textareaRef:ee,isFocus:se,height:oe,message:ne,setHeight:te,setMessage:re,handleFocus:de,handleBlur:ce,handleClick:me,handleChange:ae}=G({initialMessage:Z,sendDisabled:oi,disabled:si,autoFocus:li,messageSubmitKey:ti,onChange:xi,onSendMessage:()=>{null==yi||yi(ne,Oi),null==Ii||Ii([]),null==Ji||Ji([])},onTextAreaChange:hi,onFocus:fi,onBlur:ki}),pe=r(i=>{i.stopPropagation(),null==yi||yi(ne,Oi),null==re||re(""),null==Ii||Ii([]),null==Ji||Ji([]),te("calc(var(--bothub-scale, 1) * 22px)")},[ne,Oi,yi,re,Ii,Ji]),le=r(i=>{var e;i.stopPropagation(),null===(e=$i.current)||void 0===e||e.click()},[$i]),je=null==Oi?void 0:Oi.filter(i=>i.native.type.startsWith("video/"));return s(d,{$active:se,$dragActive:zi,$disabled:si,$textAreaDisabled:ni,$voiceRecording:Hi,className:J,onClick:me,onDragEnter:()=>Bi(!0),onDragLeave:()=>Bi(!1),onDragOver:i=>(i.stopPropagation(),i.preventDefault(),!1),onDrop:i=>e(void 0,void 0,void 0,function*(){if(i.dataTransfer.files.length>0)return i.stopPropagation(),i.preventDefault(),yield Ni([...i.dataTransfer.files]),Bi(!1),!1}),children:o(c,{children:[o(m,{children:[!mi&&o(a,{children:[s(p,{$disabled:Oi.length>=di||si||ai,"aria-label":Fi,onClick:le,children:s(K,{size:18,fill:Ri.colors.base.white})}),s(l,{ref:$i,type:"file",accept:pi,multiple:!0,disabled:Oi.length>=di||si||ai,onChange:Mi},Oi.length)]}),wi]}),o(j,{onClick:me,children:[(null==X?void 0:X.isEditing)&&o(x,{children:[s(O,{size:24,children:s(B,{})}),o(g,{children:[o(u,{children:[s(b,{children:X.editingTitle}),o(h,{children:[s(y,{children:X.editFiles}),s(f,{children:X.editString})]})]}),s(k,{"aria-label":Ti,onClick:X.resetEdit,children:s(O,{size:18,children:s(I,{})})})]})]}),Hi&&null!==_i&&o(v,{children:[s(w,{}),s(F,{children:$(_i)})]}),s(H,{files:Oi,handleImageClick:gi,handleDeleteFile:Ui,deleteFileAriaLabel:qi}),ei&&s(A,{children:ei}),Gi.length>1&&s(A,{children:ri}),je.length>1&&s(A,{children:ci}),Gi.length>0&&s(C,{children:Gi.map(i=>o(L,{children:[s(M,{variant:"input",height:18,src:i.src,duration:i.duration,waveData:i.waveData,disableTranscription:!0}),s(V,{"aria-label":Ei,onClick:ie.bind(null,i)})]},i.src))}),(!ni||ni&&Q&&Oi.length!==di||ni&&ne)&&s(D,Object.assign({$disabled:si},Pi,{ref:ee,value:ne,placeholder:Q,disabled:si||ni,style:Object.assign(Object.assign({},Pi.style),{height:oe}),onFocus:de,onBlur:ce,onChange:ae,onPaste:Ki}))]}),o(S,{children:[Hi&&(Wi?s(T,{"aria-label":Si,onClick:Yi}):s(E,{"aria-label":Di,onClick:Zi})),ji&&s(q,{$isRecording:Hi,disabled:si||oi,"aria-label":Hi?Vi:Li,"aria-pressed":Hi,onClick:Hi?Xi:Qi,"data-test":"submit-message"}),!Y&&!Hi&&s(P,Object.assign({disabled:si||oi||Hi,"aria-label":(null==X?void 0:X.isEditing)&&null!=Ci?Ci:Ai,onClick:pe},Ri.bright&&{iconFill:Ri.default.colors.base.black},{"data-test":"submit-message",children:(null==X?void 0:X.isEditing)?s(z,{}):s(R,{})}))]})]})})};export{_ as InputMessage,H as InputMessageFiles};
|
|
1
|
+
import{__rest as i,__awaiter as e}from"tslib";import{jsx as s,jsxs as o}from"react/jsx-runtime";import{useRef as n,useState as t,useCallback as r}from"react";import{InputMessageStyled as d,InputMessageContent as c,InputMessageActions as m,InputMessageUploadFile as a,InputMessageUploadFileLabel as p,InputMessageUploadFileInput as l,InputMessageMain as j,InputMessageEditWrapper as x,InputMessageContentWrapper as g,InputMessageContentInfo as u,InputMessageContentActionText as b,InputMessageContentTextWrapper as h,InputMessageContentTextFiles as y,InputMessageContentTextMessage as f,InputMessageCloseEditButton as k,InputMessageVoiceRecord as v,InputMessageVoiceRecordDot as w,InputMessageVoiceRecordTimeText as F,InputMessageConcatenateWarning as A,InputMessageVoiceFiles as C,InputMessageVoiceTrack as L,InputMessageVoiceFileDelete as V,InputMessageTextArea as D,InputMessageButtons as S,InputMessageVoicePlayButton as T,InputMessageVoicePauseButton as E,InputMessageVoiceButton as q,InputMessageSendButton as P,InputMessageSendIcon as R}from"./styled.js";import"marked";import"../message/styled.js";import"../loader/styled.js";import"../../theme/index.js";import"../loader/three-dots-loader/styled.js";import"../skeleton/index.js";import"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import"../../utils/colors/calculateGrayScale.js";import"../../utils/colors/calculateAccentColors.js";import{formatSeconds as $}from"../../utils/formatSeconds.js";import"../message/context.js";import"styled-components";import"../message/components/code/inline/styled.js";import"../message/components/code/multiline/styled.js";import"@react-spring/web";import"react-markdown";import"react-dom";import"../portal/styled.js";import"../tooltip/styled.js";import"../tooltip/arrow/styled.js";import"../tooltip/context.js";import"../message/components/code/multiline/copy/styled.js";import{CheckSmallIcon as z}from"../../icons/check-small/index.js";import"../../icons/copy/index.js";import"../message/components/code/multiline/content/styled.js";import"../message/components/paragraph/styled.js";import"../message/components/bold/styled.js";import"../message/components/italic/styled.js";import"../message/components/strike/styled.js";import"../message/components/blockquote/styled.js";import"../message/components/hr/styled.js";import"../message/components/pre/styled.js";import"../message/components/table/styled.js";import"../message/components/table/cell/styled.js";import"../message/components/list/styled.js";import"../message/components/list/context.js";import"../message/components/list/item/styled.js";import"../message/components/title/styled.js";import"../message/components/link/styled.js";import"../message/components/image/styled.js";import"../message/components/image/context.js";import"../message/components/image/grid/styled.js";import"../message/components/image/button/styled.js";import"../message/components/image/button/list/styled.js";import"../message/components/document-copy/styled.js";import"../message/components/cite/styled.js";import"../message/markdown/styled.js";import"remark-math";import"rehype-katex";import"katex/dist/katex.min.css";import"../scrollbar/styled.js";import"../scrollbar/shadow/styled.js";import"../scrollbar/style/styled.js";import"../message/timestamp/styled.js";import"../../icons/menu-dot/index.js";import"../../icons/update/index.js";import"../../icons/resend/index.js";import{EditIcon as B}from"../../icons/edit/index.js";import"../../icons/trash/index.js";import"../../icons/thumb-down/index.js";import"../../icons/download-img/index.js";import"../message/actions/styled.js";import"../message/actions/copy-button/styled.js";import"../message/list/styled.js";import"../message/scroll-button/styled.js";import{IconProvider as O}from"../icon/context.js";import"../icon/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{CloseIcon as I}from"../../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/presets-big/index.js";import"../../icons/referal/index.js";import"../../icons/restore/index.js";import"../../icons/tariff/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/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{AttachIcon as K}from"../../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/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-big/index.js";import"../../icons/xls-big/index.js";import"../../icons/word-big/index.js";import"../../icons/txt-big/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/attach-file-big/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/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/sort-alphabet-ascending/index.js";import"../../icons/sort-alphabet-descending/index.js";import"../../icons/sort-date-ascending/index.js";import"../../icons/sort-date-descending/index.js";import"../../icons/cot-r1/index.js";import"../../icons/news/index.js";import"../../icons/volume/index.js";import"../../icons/flag-ru/index.js";import"../../icons/flag-kz/index.js";import"../../icons/print/index.js";import"../../icons/pc-icon-1/index.js";import"../../icons/pc-icon-2/index.js";import"../../icons/pc-icon-3/index.js";import"../../icons/star-unfilled/index.js";import"../../icons/image-generation/index.js";import"../../icons/speech-synthesys/index.js";import"../../icons/transcription/index.js";import"../../icons/text-rewrite/index.js";import"../../icons/code-generation/index.js";import"../../icons/essay-generation/index.js";import"../../icons/spelling/index.js";import"../../icons/text-generation/index.js";import"../../icons/traffic-analisys/index.js";import"../../icons/fav-profile/index.js";import"../../icons/exclamation/index.js";import"../../icons/article/index.js";import"../../icons/setchel/index.js";import"../../icons/assembly/index.js";import"../../icons/data-visualisation/index.js";import"../../icons/document-analisys/index.js";import"../../icons/problem-solvment/index.js";import"../../icons/setting-analisys/index.js";import"../../icons/translation/index.js";import"../../icons/stars/index.js";import"../../icons/academy/index.js";import"../../icons/articles/index.js";import"../../icons/blog-post/index.js";import"../../icons/book/index.js";import"../../icons/bow-tie/index.js";import"../../icons/case-study/index.js";import"../../icons/comments/index.js";import"../../icons/guide/index.js";import"../../icons/marketing/index.js";import"../../icons/post/index.js";import"../../icons/report/index.js";import"../../icons/review/index.js";import"../../icons/scientific-article/index.js";import"../../icons/selling-text/index.js";import"../../icons/textbook/index.js";import"../../icons/wind/index.js";import"../../icons/grok/index.js";import"../../icons/deepseek/index.js";import"../../icons/grid-horizontal/index.js";import"../../icons/grid-vertical/index.js";import"../../icons/star-gradient/index.js";import"../../icons/qwen/index.js";import"../../icons/sidebar-toggle-left/index.js";import"../../icons/sidebar-toggle-right/index.js";import"../../icons/system/index.js";import"../../icons/selector/index.js";import"../../icons/video-camera/index.js";import"../../icons/music-note/index.js";import"../../icons/add-profile/index.js";import"../../icons/token-counter/index.js";import"../../icons/customer-support/index.js";import"../../icons/sort-alphabet-top-bottom/index.js";import"../../icons/sort-alphabet-bottom-top/index.js";import"../../icons/pause/index.js";import"../../icons/play/index.js";import"../../icons/restore-2/index.js";import"../../icons/video-generation/index.js";import"../../icons/veo-model/index.js";import"../../icons/runway/index.js";import"../../icons/queue-select/index.js";import"../../icons/apple/index.js";import"../../icons/mail-colored/index.js";import"../../icons/shield/index.js";import"../../icons/stars-gradient/index.js";import"../../icons/fire/index.js";import"../../icons/brain/index.js";import"../../icons/mj-purple/index.js";import"../../icons/claude-black/index.js";import"../../icons/vk-filled/index.js";import"../../icons/tg/index.js";import"../../icons/gift/index.js";import"../../icons/exchange/index.js";import"../../icons/time/index.js";import"../../icons/folder/index.js";import"../../icons/history/index.js";import"../../icons/money-plus/index.js";import"../../icons/money-stack/index.js";import"../../icons/sort-numeric-bottom/index.js";import"../../icons/sort-numeric-top/index.js";import"../../icons/bulb/index.js";import"../../icons/prompt-queue/index.js";import"../../icons/image/index.js";import"../../icons/text/index.js";import"../../icons/code/index.js";import"../../icons/blue-grok/index.js";import"../../icons/double-image/index.js";import"../../icons/pdf-black/index.js";import"../../icons/csv/index.js";import"../../icons/xls-black/index.js";import"../../icons/word-black/index.js";import"../../icons/brain-black/index.js";import"../../icons/txt-black/index.js";import"../../icons/workspace/index.js";import"../../icons/chat-doc/index.js";import"../../icons/money-spend/index.js";import"../../icons/money-minus/index.js";import"../../icons/max-logo-gradient/index.js";import"../../icons/empty-word/index.js";import"../../icons/music-file/index.js";import"../../icons/sad-file/index.js";import"../../icons/happy-file/index.js";import"../../icons/volume-off/index.js";import"../../icons/github/index.js";import"../../icons/erase/index.js";import"../../icons/arrow-narrow-stars-right/index.js";import"../../icons/literature-list/index.js";import"../../icons/bell-dot/index.js";import"../../icons/bell/index.js";import"../../icons/kwaivgi/index.js";import"../../icons/dollar/index.js";import"../message/versions/styled.js";import"../message/copy/styled.js";import"../message/badge-progress/styled.js";import"../message/button/styled.js";import"../message/button/list/styled.js";import"../message/file/styled.js";import{MessageVoice as M}from"../message/voice/index.js";import"../message/reasoning-block/styled.js";import"../typography/styled.js";import"../message/search-results/styled.js";import"../message/video/styled.js";import"../message/music/styled.js";import{useVoice as N}from"./use-voice.js";import{useFiles as U}from"./use-files.js";import{useInput as G}from"./use-input.js";import{InputMessageFiles as H}from"./input-files.js";import{useTheme as W}from"../../theme/hook.js";const _=_=>{var{className:J,placeholder:Q,editingProps:X,hiddenSend:Y=!1,message:Z,files:ii,imageRequiredText:ei,disabled:si=!1,sendDisabled:oi=!1,textAreaDisabled:ni=!1,messageSubmitKey:ti="enter",concatenateText:ri,uploadFileLimit:di=20,concatenateVideo:ci,hideUploadFile:mi=!1,uploadFileDisabled:ai=!1,uploadFileAccept:pi,autoFocus:li=!0,voice:ji=!1,onChange:xi,handleImageClick:gi,onFilesChange:ui,onVoiceFilesChange:bi,onTextAreaChange:hi,onSend:yi,onFocus:fi,onBlur:ki,emitError:vi,actions:wi,attachAriaLabel:Fi,sendAriaLabel:Ai,saveAriaLabel:Ci,voiceAriaLabel:Li,stopVoiceAriaLabel:Vi,pauseVoiceAriaLabel:Di,resumeVoiceAriaLabel:Si,cancelEditAriaLabel:Ti,deleteVoiceAriaLabel:Ei,deleteFileAriaLabel:qi}=_,Pi=i(_,["className","placeholder","editingProps","hiddenSend","message","files","imageRequiredText","disabled","sendDisabled","textAreaDisabled","messageSubmitKey","concatenateText","uploadFileLimit","concatenateVideo","hideUploadFile","uploadFileDisabled","uploadFileAccept","autoFocus","voice","onChange","handleImageClick","onFilesChange","onVoiceFilesChange","onTextAreaChange","onSend","onFocus","onBlur","emitError","actions","attachAriaLabel","sendAriaLabel","saveAriaLabel","voiceAriaLabel","stopVoiceAriaLabel","pauseVoiceAriaLabel","resumeVoiceAriaLabel","cancelEditAriaLabel","deleteVoiceAriaLabel","deleteFileAriaLabel"]);const Ri=W(),$i=n(null),[zi,Bi]=t(!1),{files:Oi,setFiles:Ii,handleFilePaste:Ki,handleFileInputChange:Mi,handleSideUploadFiles:Ni,handleDeleteFile:Ui}=U({uploadFileAccept:pi,uploadFileLimit:di,uploadFileDisabled:ai,initialFiles:ii,emitError:vi,onFilesChange:ui}),{voiceFiles:Gi,isVoiceRecording:Hi,isVoicePaused:Wi,voiceRecordingTime:_i,setVoiceFiles:Ji,handleVoiceRecordStart:Qi,handleVoiceRecordEnd:Xi,handleVoiceResume:Yi,handleVoicePause:Zi,handleVoiceFileDelete:ie}=N({onVoiceFilesChange:bi}),{textareaRef:ee,isFocus:se,height:oe,message:ne,setHeight:te,setMessage:re,handleFocus:de,handleBlur:ce,handleClick:me,handleChange:ae}=G({initialMessage:Z,sendDisabled:oi,disabled:si,autoFocus:li,messageSubmitKey:ti,onChange:xi,onSendMessage:()=>{null==yi||yi(ne,Oi),null==Ii||Ii([]),null==Ji||Ji([])},onTextAreaChange:hi,onFocus:fi,onBlur:ki}),pe=r(i=>{i.stopPropagation(),null==yi||yi(ne,Oi),null==re||re(""),null==Ii||Ii([]),null==Ji||Ji([]),te("calc(var(--bothub-scale, 1) * 22px)")},[ne,Oi,yi,re,Ii,Ji]),le=r(i=>{var e;i.stopPropagation(),null===(e=$i.current)||void 0===e||e.click()},[$i]),je=null==Oi?void 0:Oi.filter(i=>i.native.type.startsWith("video/"));return s(d,{$active:se,$dragActive:zi,$disabled:si,$textAreaDisabled:ni,$voiceRecording:Hi,className:J,onClick:me,onDragEnter:()=>Bi(!0),onDragLeave:()=>Bi(!1),onDragOver:i=>(i.stopPropagation(),i.preventDefault(),!1),onDrop:i=>e(void 0,void 0,void 0,function*(){if(i.dataTransfer.files.length>0)return i.stopPropagation(),i.preventDefault(),yield Ni([...i.dataTransfer.files]),Bi(!1),!1}),children:o(c,{children:[o(m,{children:[!mi&&o(a,{children:[s(p,{$disabled:Oi.length>=di||si||ai,"aria-label":Fi,onClick:le,children:s(K,{size:18,fill:Ri.colors.base.white})}),s(l,{ref:$i,type:"file",accept:pi,multiple:!0,disabled:Oi.length>=di||si||ai,onChange:Mi},Oi.length)]}),wi]}),o(j,{onClick:me,children:[(null==X?void 0:X.isEditing)&&o(x,{children:[s(O,{size:24,children:s(B,{})}),o(g,{children:[o(u,{children:[s(b,{children:X.editingTitle}),o(h,{children:[s(y,{children:X.editFiles}),s(f,{children:X.editString})]})]}),s(k,{"aria-label":Ti,onClick:X.resetEdit,children:s(O,{size:18,children:s(I,{})})})]})]}),Hi&&null!==_i&&o(v,{children:[s(w,{}),s(F,{children:$(_i)})]}),s(H,{files:Oi,handleImageClick:gi,handleDeleteFile:Ui,deleteFileAriaLabel:qi}),ei&&s(A,{children:ei}),Gi.length>1&&s(A,{children:ri}),je.length>1&&s(A,{children:ci}),Gi.length>0&&s(C,{children:Gi.map(i=>o(L,{children:[s(M,{variant:"input",height:18,src:i.src,duration:i.duration,waveData:i.waveData,disableTranscription:!0}),s(V,{"aria-label":Ei,onClick:ie.bind(null,i)})]},i.src))}),(!ni||ni&&Q&&Oi.length!==di||ni&&ne)&&s(D,Object.assign({$disabled:si},Pi,{ref:ee,value:ne,placeholder:Q,disabled:si||ni,style:Object.assign(Object.assign({},Pi.style),{height:oe}),onFocus:de,onBlur:ce,onChange:ae,onPaste:Ki}))]}),o(S,{children:[Hi&&(Wi?s(T,{"aria-label":Si,onClick:Yi}):s(E,{"aria-label":Di,onClick:Zi})),ji&&s(q,{$isRecording:Hi,disabled:si||oi,"aria-label":Hi?Vi:Li,"aria-pressed":Hi,onClick:Hi?Xi:Qi,"data-test":"submit-message"}),!Y&&!Hi&&s(P,Object.assign({disabled:si||oi||Hi,"aria-label":(null==X?void 0:X.isEditing)&&null!=Ci?Ci:Ai,onClick:pe},Ri.bright&&{iconFill:Ri.default.colors.base.black},{"data-test":"submit-message",children:(null==X?void 0:X.isEditing)?s(z,{}):s(R,{})}))]})]})})};export{_ as InputMessage,H as InputMessageFiles};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { MessageCiteStyled, MessageCiteStyledProps } from './styled';
|
|
3
|
+
export type MessageCiteProps = Omit<React.ComponentProps<typeof MessageCiteStyled>, keyof MessageCiteStyledProps>;
|
|
4
|
+
export declare const MessageCite: React.FC<MessageCiteProps>;
|
|
5
|
+
export * from './styled';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{__rest as o}from"tslib";import{jsx as r}from"react/jsx-runtime";import{useMessage as t}from"../../context.js";import{MessageCiteStyled as s}from"./styled.js";const m=m=>{var e=o(m,[]);const{color:i}=t();return r(s,Object.assign({$messageColor:i},e))};export{m as MessageCite,s as MessageCiteStyled};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export interface MessageCiteStyledProps {
|
|
2
|
+
$messageColor: string;
|
|
3
|
+
}
|
|
4
|
+
export declare const MessageCiteStyled: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, MessageCiteStyledProps>>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import{styled as e,css as o}from"styled-components";const t=e.cite.withConfig({displayName:"styled__MessageCiteStyled",componentId:"sc-z3zzds-0"})(["color:",";font-style:italic;&::selection{","}"],({theme:e,$messageColor:o})=>e.colors.base.white,({$messageColor:e,theme:t})=>{switch(e){case"default":return o`
|
|
2
|
+
background: ${"light"===t.mode?t.default.colors.accent.primary:t.colors.base.white};
|
|
3
|
+
color: ${"light"===t.mode?t.default.colors.base.white:t.colors.accent.primary};
|
|
4
|
+
`;case"green":return o`
|
|
5
|
+
background: ${t.default.colors.base.white};
|
|
6
|
+
color: ${t.colors.gpt3};
|
|
7
|
+
`;case"purple":return o`
|
|
8
|
+
background: ${t.default.colors.base.white};
|
|
9
|
+
color: ${t.colors.gpt4};
|
|
10
|
+
`;default:return o`
|
|
11
|
+
background: ${t.default.colors.base.white};
|
|
12
|
+
color: ${e};
|
|
13
|
+
`}});export{t as MessageCiteStyled};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as i}from"tslib";import{jsx as o,jsxs as e,Fragment as s}from"react/jsx-runtime";import{useRef as n,useCallback as t,useEffect as r}from"react";import{marked as d}from"marked";import{MessageStyledWrapper as c,MessageStyledWithBottomPanel as p,MessageStyled as m,MessageContent as a,MessageTop as l,MessageSender as x,MessageName as j,MessageAvatarWrapper as g,MessageAvatar as u,MessageBlockWrapper as b,MessageBlock as y,MessageBlockScrollbarWrapper as h,MessageBlockContent as f,MessageBlockBottomPanel as w,MessageBlockTransaction as k,MessageButtonsStyled as M}from"./styled.js";export{MessageAction,MessageBlockTextArea,MessageEditAction,MessageImageBottomArrowButton,MessageImageLeftArrowButton,MessageImageRightArrowButton,MessageImageTopArrowButton,MessageTag,MessageTags,MessageTransaction}from"./styled.js";import{Loader as v}from"../loader/index.js";import{Skeleton as T}from"../skeleton/index.js";import"../../theme/index.js";import{getTgMarkdown as C}from"../../utils/getTgMarkdown.js";import{colorToRgba as S}from"../../utils/colors/colorToRgba.js";import"../../utils/colors/calculateGrayScale.js";import"../../utils/colors/calculateAccentColors.js";import{MessageProvider as I}from"./context.js";export{MessageConsumer,MessageContext,useMessage}from"./context.js";import"styled-components";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-markdown";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 B}from"./components/paragraph/index.js";export{MessageBoldStyled}from"./components/bold/styled.js";export{MessageItalicStyled}from"./components/italic/styled.js";export{MessageStrikeStyled}from"./components/strike/styled.js";export{MessageBlockquoteStyled}from"./components/blockquote/styled.js";export{MessageHrStyled}from"./components/hr/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"./components/document-copy/styled.js";import{MessageMarkdown as L}from"./markdown/index.js";import"../scrollbar/styled.js";import{ScrollbarShadow as $}from"../scrollbar/shadow/index.js";import"../scrollbar/style/styled.js";import{MessageTimestamp as R}from"./timestamp/index.js";import{MessageActions as q}from"./actions/index.js";import{MessageVersions as A}from"./versions/index.js";import"./list/styled.js";import"./scroll-button/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/loader-circular-gradient-2/index.js";import"./reasoning-block/styled.js";import"../../icons/analyze-urls/index.js";import"../typography/styled.js";import"./search-results/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/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/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/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/web-search/index.js";import"../../icons/include-context/index.js";import"../../icons/queue/index.js";import"../../icons/sort-alphabet-ascending/index.js";import"../../icons/sort-alphabet-descending/index.js";import"../../icons/sort-date-ascending/index.js";import"../../icons/sort-date-descending/index.js";import"../../icons/cot-r1/index.js";import"../../icons/news/index.js";import"../../icons/volume/index.js";import"../../icons/flag-ru/index.js";import"../../icons/flag-kz/index.js";import"../../icons/print/index.js";import"../../icons/pc-icon-1/index.js";import"../../icons/pc-icon-2/index.js";import"../../icons/pc-icon-3/index.js";import"../../icons/star-unfilled/index.js";import"../../icons/image-generation/index.js";import"../../icons/speech-synthesys/index.js";import"../../icons/transcription/index.js";import"../../icons/text-rewrite/index.js";import"../../icons/code-generation/index.js";import"../../icons/essay-generation/index.js";import"../../icons/spelling/index.js";import"../../icons/text-generation/index.js";import"../../icons/traffic-analisys/index.js";import"../../icons/fav-profile/index.js";import"../../icons/exclamation/index.js";import"../../icons/article/index.js";import"../../icons/setchel/index.js";import"../../icons/assembly/index.js";import"../../icons/data-visualisation/index.js";import"../../icons/document-analisys/index.js";import"../../icons/problem-solvment/index.js";import"../../icons/setting-analisys/index.js";import"../../icons/translation/index.js";import"../../icons/stars/index.js";import"../../icons/academy/index.js";import"../../icons/articles/index.js";import"../../icons/blog-post/index.js";import"../../icons/book/index.js";import"../../icons/bow-tie/index.js";import"../../icons/case-study/index.js";import"../../icons/comments/index.js";import"../../icons/guide/index.js";import"../../icons/marketing/index.js";import"../../icons/post/index.js";import"../../icons/report/index.js";import"../../icons/review/index.js";import"../../icons/scientific-article/index.js";import"../../icons/selling-text/index.js";import"../../icons/textbook/index.js";import"../../icons/wind/index.js";import"../../icons/grok/index.js";import"../../icons/deepseek/index.js";import"../../icons/grid-horizontal/index.js";import"../../icons/grid-vertical/index.js";import"../../icons/star-gradient/index.js";import"../../icons/qwen/index.js";import"../../icons/sidebar-toggle-left/index.js";import"../../icons/sidebar-toggle-right/index.js";import"../../icons/system/index.js";import"../../icons/selector/index.js";import"../../icons/video-camera/index.js";import"../../icons/music-note/index.js";import"../../icons/add-profile/index.js";import"../../icons/token-counter/index.js";import"../../icons/customer-support/index.js";import"../../icons/sort-alphabet-top-bottom/index.js";import"../../icons/sort-alphabet-bottom-top/index.js";import"../../icons/pause/index.js";import"../../icons/play/index.js";import"../../icons/restore-2/index.js";import"../../icons/video-generation/index.js";import"../../icons/veo-model/index.js";import"../../icons/runway/index.js";import"../../icons/queue-select/index.js";import"../../icons/apple/index.js";import"../../icons/mail-colored/index.js";import"../../icons/shield/index.js";import"../../icons/stars-gradient/index.js";import"../../icons/fire/index.js";import"../../icons/brain/index.js";import"../../icons/mj-purple/index.js";import"../../icons/claude-black/index.js";import"../../icons/vk-filled/index.js";import"../../icons/tg/index.js";import"../../icons/gift/index.js";import"../../icons/exchange/index.js";import"../../icons/time/index.js";import"../../icons/folder/index.js";import"../../icons/history/index.js";import"../../icons/money-plus/index.js";import"../../icons/money-stack/index.js";import"../../icons/sort-numeric-bottom/index.js";import"../../icons/sort-numeric-top/index.js";import"../../icons/bulb/index.js";import"../../icons/prompt-queue/index.js";import"../../icons/image/index.js";import"../../icons/text/index.js";import"../../icons/code/index.js";import"../../icons/blue-grok/index.js";import"../../icons/double-image/index.js";import"../../icons/pdf-black/index.js";import"../../icons/csv/index.js";import"../../icons/xls-black/index.js";import"../../icons/word-black/index.js";import"../../icons/brain-black/index.js";import"../../icons/txt-black/index.js";import"../../icons/workspace/index.js";import"../../icons/chat-doc/index.js";import"../../icons/money-spend/index.js";import"../../icons/money-minus/index.js";import"../../icons/max-logo-gradient/index.js";import"../../icons/empty-word/index.js";import"../../icons/music-file/index.js";import"../../icons/sad-file/index.js";import"../../icons/happy-file/index.js";import"../../icons/volume-off/index.js";import"../../icons/github/index.js";import"../../icons/erase/index.js";import"../../icons/arrow-narrow-stars-right/index.js";import"../../icons/literature-list/index.js";import"../../icons/bell-dot/index.js";import"../../icons/bell/index.js";import"../../icons/kwaivgi/index.js";import"../../icons/dollar/index.js";import"./video/styled.js";import"./music/styled.js";import{useTheme as P}from"../../theme/hook.js";const D=({id:D,content:E,className:z,variant:N="user",color:V="default",name:F,tags:H,avatar:O,transaction:U,edited:G=!1,editedText:W,disableModal:Z=!1,disableResend:_=!1,disableEdit:J=!1,disableDelete:K=!1,disableUpdate:Q=!1,disableCopy:X=!1,disableDownload:Y=!0,disableEncryption:ii=!0,hasCacheTokens:oi=!1,editOutOfMenu:ei=!1,copyPlainText:si,copyTgText:ni,editText:ti,resendText:ri,deleteText:di,onReportText:ci,downloadTooltipLabel:pi,updateTooltipLabel:mi,copyTooltipLabel:ai,encryptionTooltipLabel:li,cacheTokenTooltipLabel:xi,typing:ji=!1,timestamp:gi,timestampPosition:ui="right",skeleton:bi=!1,buttons:yi,after:hi,components:fi,children:wi,version:ki,totalVersions:Mi,hideActions:vi,loader:Ti,onCopy:Ci,onCodeCopy:Si,onEdit:Ii,onDelete:Bi,onUpdate:Li,onReport:$i,onNextVersion:Ri,onPrevVersion:qi,onDownload:Ai})=>{const Pi=P(),Di=n(null),Ei=n(null),zi=n(null),Ni=t(()=>i(void 0,void 0,void 0,function*(){const i=(yield d.parse(zi.current)).replace(/<p>([\s\S]*?)<\/p>/g,"<pre>$1</pre>");return[new ClipboardItem({"text/plain":new Blob([zi.current],{type:"text/plain"}),"text/html":new Blob([i],{type:"text/html"})})]}),[]),Vi=t(i=>[new ClipboardItem({"text/plain":new Blob([i.innerText.replace(/\n{3,}/g,"\n\n")],{type:"text/plain"})})],[]),Fi=t(i=>{const o=C(i);return[new ClipboardItem({"text/plain":new Blob([o],{type:"text/plain"})})]},[]),Hi=t(()=>{if(Ei.current)return null==Ci?void 0:Ci(Vi(Ei.current))},[E]),Oi=t(()=>{if(zi.current)return null==Ci?void 0:Ci(Fi(zi.current))},[]),Ui=t(()=>i(void 0,void 0,void 0,function*(){if(zi.current)return null==Ci?void 0:Ci(yield Ni())}),[]);let Gi;switch(V&&"object"==typeof CSS&&"function"==typeof CSS.supports&&CSS.supports("background",null!=V?V:"#000")||(V="default"),N){case"user":switch(V){case"default":if("custom"===Pi.scheme){Gi=Pi.colors.custom.message.user.background;break}if("standard"===Pi.scheme){Gi="dark"===Pi.mode?S(Pi.colors.accent.primaryLight,.5):S(Pi.colors.accent.primaryLight,.2);break}Gi=Pi.colors.accent.primary;break;case"green":Gi=Pi.colors.gpt3;break;case"purple":Gi=Pi.colors.gpt4;break;default:Gi=V}break;case"assistant":switch(V){case"default":Gi="dark"===Pi.mode?Pi.colors.grayScale.gray2:Pi.colors.grayScale.gray3;break;case"green":Gi=Pi.colors.gpt3;break;case"purple":Gi=Pi.colors.gpt4;break;default:Gi=V}}return r(()=>{E&&(zi.current=E)},[E]),o(I,{variant:N,color:V,typing:ji,onCopy:Hi,onCodeCopy:Si,children:o(c,{$variant:N,ref:Di,children:e(p,{children:[o(m,{$variant:N,className:z,"data-date":gi,children:e(a,{$variant:N,children:[F&&e(l,{children:["string"==typeof F&&e(x,{children:[o(j,{$color:V,children:F}),H]}),"string"!=typeof F&&o("div",{})]}),"string"!=typeof F&&F,o(g,{$variant:N,children:o(u,{children:O})}),o(b,{children:o(y,{$variant:N,$hexColor:Gi,$skeleton:bi,$hasTimestamp:!!gi,$timestampPosition:ui,children:e(h,{scrollShadows:{color:Gi,size:60,left:o($,{side:"left"}),right:o($,{side:"right"})},children:[o(f,{ref:Ei,$variant:N,children:e(s,{children:[!bi&&(Ti?o(B,{disableMargin:!0,children:o(v,{})}):e(s,{children:["string"==typeof wi&&o(L,{components:fi,children:wi}),"string"!=typeof wi&&wi]})),bi&&o(B,{disableMargin:!0,children:o(T,{width:260,opacity:["light"===Pi.mode?.1:.15,"light"===Pi.mode?.225:.45],colors:["user"===N?Pi.colors.base.white:"light"===Pi.mode?Pi.default.colors.base.black:Pi.colors.grayScale.gray6]})}),hi]})}),"user"===N&&o(R,{edited:G,editedText:W,time:gi,position:ui,color:Gi})]})})}),gi&&"assistant"===N&&o(R,{time:gi,position:ui,color:Gi}),e(w,{$variant:N,children:[U&&o(k,{children:U}),!bi&&!vi&&o(q,{id:D,onDownload:Ai,disableDownload:Y,message:E,variant:N,skeleton:bi,disableModal:Z,disableResend:_,disableEdit:J,disableDelete:K,disableUpdate:Q,disableCopy:X,disableEncryption:ii,hasCacheTokens:oi,editOutOfMenu:ei,copyPlainText:si,copyTgText:ni,editText:ti,resendText:ri,deleteText:di,onReportText:ci,downloadTooltipLabel:pi,updateTooltipLabel:mi,copyTooltipLabel:ai,encryptionTooltipLabel:li,cacheTokenTooltipLabel:xi,onEdit:Ii,onResend:Li,onDelete:Bi,onUpdate:Li,onReport:$i,onPlainTextCopy:Hi,onTgCopy:Oi,onCopy:Ui}),o(A,{id:D,version:ki,totalVersions:Mi,onNextVersion:Ri,onPrevVersion:qi,variant:N})]})]})}),o(M,{children:yi})]})})})};export{D as Message,u as MessageAvatar,g as MessageAvatarWrapper,y as MessageBlock,w as MessageBlockBottomPanel,f as MessageBlockContent,h as MessageBlockScrollbarWrapper,k as MessageBlockTransaction,b as MessageBlockWrapper,M as MessageButtonsStyled,a as MessageContent,L as MessageMarkdown,j as MessageName,B as MessageParagraph,I as MessageProvider,x as MessageSender,m as MessageStyled,p as MessageStyledWithBottomPanel,c as MessageStyledWrapper,l as MessageTop};
|
|
1
|
+
import{__awaiter as i}from"tslib";import{jsx as o,jsxs as e,Fragment as s}from"react/jsx-runtime";import{useRef as n,useCallback as t,useEffect as r}from"react";import{marked as d}from"marked";import{MessageStyledWrapper as c,MessageStyledWithBottomPanel as p,MessageStyled as m,MessageContent as a,MessageTop as l,MessageSender as x,MessageName as j,MessageAvatarWrapper as g,MessageAvatar as u,MessageBlockWrapper as b,MessageBlock as y,MessageBlockScrollbarWrapper as h,MessageBlockContent as f,MessageBlockBottomPanel as w,MessageBlockTransaction as k,MessageButtonsStyled as M}from"./styled.js";export{MessageAction,MessageBlockTextArea,MessageEditAction,MessageImageBottomArrowButton,MessageImageLeftArrowButton,MessageImageRightArrowButton,MessageImageTopArrowButton,MessageTag,MessageTags,MessageTransaction}from"./styled.js";import{Loader as v}from"../loader/index.js";import{Skeleton as T}from"../skeleton/index.js";import"../../theme/index.js";import{getTgMarkdown as C}from"../../utils/getTgMarkdown.js";import{colorToRgba as S}from"../../utils/colors/colorToRgba.js";import"../../utils/colors/calculateGrayScale.js";import"../../utils/colors/calculateAccentColors.js";import{MessageProvider as I}from"./context.js";export{MessageConsumer,MessageContext,useMessage}from"./context.js";import"styled-components";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-markdown";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 B}from"./components/paragraph/index.js";export{MessageBoldStyled}from"./components/bold/styled.js";export{MessageItalicStyled}from"./components/italic/styled.js";export{MessageStrikeStyled}from"./components/strike/styled.js";export{MessageBlockquoteStyled}from"./components/blockquote/styled.js";export{MessageHrStyled}from"./components/hr/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"./components/document-copy/styled.js";export{MessageCiteStyled}from"./components/cite/styled.js";import{MessageMarkdown as L}from"./markdown/index.js";import"../scrollbar/styled.js";import{ScrollbarShadow as $}from"../scrollbar/shadow/index.js";import"../scrollbar/style/styled.js";import{MessageTimestamp as R}from"./timestamp/index.js";import{MessageActions as q}from"./actions/index.js";import{MessageVersions as A}from"./versions/index.js";import"./list/styled.js";import"./scroll-button/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/loader-circular-gradient-2/index.js";import"./reasoning-block/styled.js";import"../../icons/analyze-urls/index.js";import"../typography/styled.js";import"./search-results/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/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/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/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/web-search/index.js";import"../../icons/include-context/index.js";import"../../icons/queue/index.js";import"../../icons/sort-alphabet-ascending/index.js";import"../../icons/sort-alphabet-descending/index.js";import"../../icons/sort-date-ascending/index.js";import"../../icons/sort-date-descending/index.js";import"../../icons/cot-r1/index.js";import"../../icons/news/index.js";import"../../icons/volume/index.js";import"../../icons/flag-ru/index.js";import"../../icons/flag-kz/index.js";import"../../icons/print/index.js";import"../../icons/pc-icon-1/index.js";import"../../icons/pc-icon-2/index.js";import"../../icons/pc-icon-3/index.js";import"../../icons/star-unfilled/index.js";import"../../icons/image-generation/index.js";import"../../icons/speech-synthesys/index.js";import"../../icons/transcription/index.js";import"../../icons/text-rewrite/index.js";import"../../icons/code-generation/index.js";import"../../icons/essay-generation/index.js";import"../../icons/spelling/index.js";import"../../icons/text-generation/index.js";import"../../icons/traffic-analisys/index.js";import"../../icons/fav-profile/index.js";import"../../icons/exclamation/index.js";import"../../icons/article/index.js";import"../../icons/setchel/index.js";import"../../icons/assembly/index.js";import"../../icons/data-visualisation/index.js";import"../../icons/document-analisys/index.js";import"../../icons/problem-solvment/index.js";import"../../icons/setting-analisys/index.js";import"../../icons/translation/index.js";import"../../icons/stars/index.js";import"../../icons/academy/index.js";import"../../icons/articles/index.js";import"../../icons/blog-post/index.js";import"../../icons/book/index.js";import"../../icons/bow-tie/index.js";import"../../icons/case-study/index.js";import"../../icons/comments/index.js";import"../../icons/guide/index.js";import"../../icons/marketing/index.js";import"../../icons/post/index.js";import"../../icons/report/index.js";import"../../icons/review/index.js";import"../../icons/scientific-article/index.js";import"../../icons/selling-text/index.js";import"../../icons/textbook/index.js";import"../../icons/wind/index.js";import"../../icons/grok/index.js";import"../../icons/deepseek/index.js";import"../../icons/grid-horizontal/index.js";import"../../icons/grid-vertical/index.js";import"../../icons/star-gradient/index.js";import"../../icons/qwen/index.js";import"../../icons/sidebar-toggle-left/index.js";import"../../icons/sidebar-toggle-right/index.js";import"../../icons/system/index.js";import"../../icons/selector/index.js";import"../../icons/video-camera/index.js";import"../../icons/music-note/index.js";import"../../icons/add-profile/index.js";import"../../icons/token-counter/index.js";import"../../icons/customer-support/index.js";import"../../icons/sort-alphabet-top-bottom/index.js";import"../../icons/sort-alphabet-bottom-top/index.js";import"../../icons/pause/index.js";import"../../icons/play/index.js";import"../../icons/restore-2/index.js";import"../../icons/video-generation/index.js";import"../../icons/veo-model/index.js";import"../../icons/runway/index.js";import"../../icons/queue-select/index.js";import"../../icons/apple/index.js";import"../../icons/mail-colored/index.js";import"../../icons/shield/index.js";import"../../icons/stars-gradient/index.js";import"../../icons/fire/index.js";import"../../icons/brain/index.js";import"../../icons/mj-purple/index.js";import"../../icons/claude-black/index.js";import"../../icons/vk-filled/index.js";import"../../icons/tg/index.js";import"../../icons/gift/index.js";import"../../icons/exchange/index.js";import"../../icons/time/index.js";import"../../icons/folder/index.js";import"../../icons/history/index.js";import"../../icons/money-plus/index.js";import"../../icons/money-stack/index.js";import"../../icons/sort-numeric-bottom/index.js";import"../../icons/sort-numeric-top/index.js";import"../../icons/bulb/index.js";import"../../icons/prompt-queue/index.js";import"../../icons/image/index.js";import"../../icons/text/index.js";import"../../icons/code/index.js";import"../../icons/blue-grok/index.js";import"../../icons/double-image/index.js";import"../../icons/pdf-black/index.js";import"../../icons/csv/index.js";import"../../icons/xls-black/index.js";import"../../icons/word-black/index.js";import"../../icons/brain-black/index.js";import"../../icons/txt-black/index.js";import"../../icons/workspace/index.js";import"../../icons/chat-doc/index.js";import"../../icons/money-spend/index.js";import"../../icons/money-minus/index.js";import"../../icons/max-logo-gradient/index.js";import"../../icons/empty-word/index.js";import"../../icons/music-file/index.js";import"../../icons/sad-file/index.js";import"../../icons/happy-file/index.js";import"../../icons/volume-off/index.js";import"../../icons/github/index.js";import"../../icons/erase/index.js";import"../../icons/arrow-narrow-stars-right/index.js";import"../../icons/literature-list/index.js";import"../../icons/bell-dot/index.js";import"../../icons/bell/index.js";import"../../icons/kwaivgi/index.js";import"../../icons/dollar/index.js";import"./video/styled.js";import"./music/styled.js";import{useTheme as P}from"../../theme/hook.js";const D=({id:D,content:E,className:z,variant:N="user",color:V="default",name:F,tags:H,avatar:O,transaction:U,edited:G=!1,editedText:W,disableModal:Z=!1,disableResend:_=!1,disableEdit:J=!1,disableDelete:K=!1,disableUpdate:Q=!1,disableCopy:X=!1,disableDownload:Y=!0,disableEncryption:ii=!0,hasCacheTokens:oi=!1,editOutOfMenu:ei=!1,copyPlainText:si,copyTgText:ni,editText:ti,resendText:ri,deleteText:di,onReportText:ci,downloadTooltipLabel:pi,updateTooltipLabel:mi,copyTooltipLabel:ai,encryptionTooltipLabel:li,cacheTokenTooltipLabel:xi,typing:ji=!1,timestamp:gi,timestampPosition:ui="right",skeleton:bi=!1,buttons:yi,after:hi,components:fi,children:wi,version:ki,totalVersions:Mi,hideActions:vi,loader:Ti,onCopy:Ci,onCodeCopy:Si,onEdit:Ii,onDelete:Bi,onUpdate:Li,onReport:$i,onNextVersion:Ri,onPrevVersion:qi,onDownload:Ai})=>{const Pi=P(),Di=n(null),Ei=n(null),zi=n(null),Ni=t(()=>i(void 0,void 0,void 0,function*(){const i=(yield d.parse(zi.current)).replace(/<p>([\s\S]*?)<\/p>/g,"<pre>$1</pre>");return[new ClipboardItem({"text/plain":new Blob([zi.current],{type:"text/plain"}),"text/html":new Blob([i],{type:"text/html"})})]}),[]),Vi=t(i=>[new ClipboardItem({"text/plain":new Blob([i.innerText.replace(/\n{3,}/g,"\n\n")],{type:"text/plain"})})],[]),Fi=t(i=>{const o=C(i);return[new ClipboardItem({"text/plain":new Blob([o],{type:"text/plain"})})]},[]),Hi=t(()=>{if(Ei.current)return null==Ci?void 0:Ci(Vi(Ei.current))},[E]),Oi=t(()=>{if(zi.current)return null==Ci?void 0:Ci(Fi(zi.current))},[]),Ui=t(()=>i(void 0,void 0,void 0,function*(){if(zi.current)return null==Ci?void 0:Ci(yield Ni())}),[]);let Gi;switch(V&&"object"==typeof CSS&&"function"==typeof CSS.supports&&CSS.supports("background",null!=V?V:"#000")||(V="default"),N){case"user":switch(V){case"default":if("custom"===Pi.scheme){Gi=Pi.colors.custom.message.user.background;break}if("standard"===Pi.scheme){Gi="dark"===Pi.mode?S(Pi.colors.accent.primaryLight,.5):S(Pi.colors.accent.primaryLight,.2);break}Gi=Pi.colors.accent.primary;break;case"green":Gi=Pi.colors.gpt3;break;case"purple":Gi=Pi.colors.gpt4;break;default:Gi=V}break;case"assistant":switch(V){case"default":Gi="dark"===Pi.mode?Pi.colors.grayScale.gray2:Pi.colors.grayScale.gray3;break;case"green":Gi=Pi.colors.gpt3;break;case"purple":Gi=Pi.colors.gpt4;break;default:Gi=V}}return r(()=>{E&&(zi.current=E)},[E]),o(I,{variant:N,color:V,typing:ji,onCopy:Hi,onCodeCopy:Si,children:o(c,{$variant:N,ref:Di,children:e(p,{children:[o(m,{$variant:N,className:z,"data-date":gi,children:e(a,{$variant:N,children:[F&&e(l,{children:["string"==typeof F&&e(x,{children:[o(j,{$color:V,children:F}),H]}),"string"!=typeof F&&o("div",{})]}),"string"!=typeof F&&F,o(g,{$variant:N,children:o(u,{children:O})}),o(b,{children:o(y,{$variant:N,$hexColor:Gi,$skeleton:bi,$hasTimestamp:!!gi,$timestampPosition:ui,children:e(h,{scrollShadows:{color:Gi,size:60,left:o($,{side:"left"}),right:o($,{side:"right"})},children:[o(f,{ref:Ei,$variant:N,children:e(s,{children:[!bi&&(Ti?o(B,{disableMargin:!0,children:o(v,{})}):e(s,{children:["string"==typeof wi&&o(L,{components:fi,children:wi}),"string"!=typeof wi&&wi]})),bi&&o(B,{disableMargin:!0,children:o(T,{width:260,opacity:["light"===Pi.mode?.1:.15,"light"===Pi.mode?.225:.45],colors:["user"===N?Pi.colors.base.white:"light"===Pi.mode?Pi.default.colors.base.black:Pi.colors.grayScale.gray6]})}),hi]})}),"user"===N&&o(R,{edited:G,editedText:W,time:gi,position:ui,color:Gi})]})})}),gi&&"assistant"===N&&o(R,{time:gi,position:ui,color:Gi}),e(w,{$variant:N,children:[U&&o(k,{children:U}),!bi&&!vi&&o(q,{id:D,onDownload:Ai,disableDownload:Y,message:E,variant:N,skeleton:bi,disableModal:Z,disableResend:_,disableEdit:J,disableDelete:K,disableUpdate:Q,disableCopy:X,disableEncryption:ii,hasCacheTokens:oi,editOutOfMenu:ei,copyPlainText:si,copyTgText:ni,editText:ti,resendText:ri,deleteText:di,onReportText:ci,downloadTooltipLabel:pi,updateTooltipLabel:mi,copyTooltipLabel:ai,encryptionTooltipLabel:li,cacheTokenTooltipLabel:xi,onEdit:Ii,onResend:Li,onDelete:Bi,onUpdate:Li,onReport:$i,onPlainTextCopy:Hi,onTgCopy:Oi,onCopy:Ui}),o(A,{id:D,version:ki,totalVersions:Mi,onNextVersion:Ri,onPrevVersion:qi,variant:N})]})]})}),o(M,{children:yi})]})})})};export{D as Message,u as MessageAvatar,g as MessageAvatarWrapper,y as MessageBlock,w as MessageBlockBottomPanel,f as MessageBlockContent,h as MessageBlockScrollbarWrapper,k as MessageBlockTransaction,b as MessageBlockWrapper,M as MessageButtonsStyled,a as MessageContent,L as MessageMarkdown,j as MessageName,B as MessageParagraph,I as MessageProvider,x as MessageSender,m as MessageStyled,p as MessageStyledWithBottomPanel,c as MessageStyledWrapper,l as MessageTop};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t,jsxs as o,Fragment as e}from"react/jsx-runtime";import{forwardRef as s,useMemo as r}from"react";import i from"react-markdown";import{useMessage as n}from"../context.js";import"tslib";import"styled-components";import"../components/code/inline/styled.js";import"../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"../../../theme/index.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 m}from"../components/paragraph/index.js";import"../components/bold/styled.js";import"../components/italic/styled.js";import"../components/strike/styled.js";import"../components/blockquote/styled.js";import"../components/hr/styled.js";import"../components/pre/styled.js";import"../components/table/styled.js";import"../components/table/cell/styled.js";import"../components/list/styled.js";import"../components/list/context.js";import"../components/list/item/styled.js";import"../components/title/styled.js";import"../components/link/styled.js";import"../components/image/styled.js";import"../components/image/context.js";import"../components/image/grid/styled.js";import"../components/image/button/styled.js";import"../components/image/button/list/styled.js";import"../components/document-copy/styled.js";import"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import"../../../utils/colors/calculateGrayScale.js";import"../../../utils/colors/calculateAccentColors.js";import{MessageMarkdownStyled as p,MessageMarkdownLine as l}from"./styled.js";import{markdownComponents as c}from"./markdown-components.js";import{normalizeMessageMarkdown as d}from"./utils.js";import{useMarkdownPlugins as a}from"./useMarkdownPlugins.js";const j=s(({children:s,components:j={},componentsOverride:y={},disableTyping:u=!1,forceMarkdown:g=!1},f)=>{const{typing:k,variant:h,color:b}=n(),x=!g&&"user"===h,w=r(()=>"string"!=typeof s||x?s:d(s),[s,x]),{remarkPlugins:P,rehypePlugins:M}=a(),v=r(()=>"string"!=typeof w?null:t(p,{ref:f,children:t(l,{$typing:!u&&k,$color:b,children:t(i,{remarkPlugins:P,rehypePlugins:M,components:c(j,y,P,M),children:w})})}),[k,u,b,w,P,M,f,j,y]);return o(e,{children:[x&&"string"==typeof s&&t(m,{wrap:!0,disableMargin:!0,children:w}),!x&&"string"==typeof s&&v]})});export{j as MessageMarkdown};
|
|
1
|
+
import{jsx as t,jsxs as o,Fragment as e}from"react/jsx-runtime";import{forwardRef as s,useMemo as r}from"react";import i from"react-markdown";import{useMessage as n}from"../context.js";import"tslib";import"styled-components";import"../components/code/inline/styled.js";import"../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"../../../theme/index.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 m}from"../components/paragraph/index.js";import"../components/bold/styled.js";import"../components/italic/styled.js";import"../components/strike/styled.js";import"../components/blockquote/styled.js";import"../components/hr/styled.js";import"../components/pre/styled.js";import"../components/table/styled.js";import"../components/table/cell/styled.js";import"../components/list/styled.js";import"../components/list/context.js";import"../components/list/item/styled.js";import"../components/title/styled.js";import"../components/link/styled.js";import"../components/image/styled.js";import"../components/image/context.js";import"../components/image/grid/styled.js";import"../components/image/button/styled.js";import"../components/image/button/list/styled.js";import"../components/document-copy/styled.js";import"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import"../../../utils/colors/calculateGrayScale.js";import"../../../utils/colors/calculateAccentColors.js";import"../components/cite/styled.js";import{MessageMarkdownStyled as p,MessageMarkdownLine as l}from"./styled.js";import{markdownComponents as c}from"./markdown-components.js";import{normalizeMessageMarkdown as d}from"./utils.js";import{useMarkdownPlugins as a}from"./useMarkdownPlugins.js";const j=s(({children:s,components:j={},componentsOverride:y={},disableTyping:u=!1,forceMarkdown:g=!1},f)=>{const{typing:k,variant:h,color:b}=n(),x=!g&&"user"===h,w=r(()=>"string"!=typeof s||x?s:d(s),[s,x]),{remarkPlugins:P,rehypePlugins:M}=a(),v=r(()=>"string"!=typeof w?null:t(p,{ref:f,children:t(l,{$typing:!u&&k,$color:b,children:t(i,{remarkPlugins:P,rehypePlugins:M,components:c(j,y,P,M),children:w})})}),[k,u,b,w,P,M,f,j,y]);return o(e,{children:[x&&"string"==typeof s&&t(m,{wrap:!0,disableMargin:!0,children:w}),!x&&"string"==typeof s&&v]})});export{j as MessageMarkdown};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as n}from"react/jsx-runtime";import{MessageInlineCode as e}from"../components/code/inline/index.js";import{MessageMultilineCode as
|
|
1
|
+
import{jsx as n}from"react/jsx-runtime";import{MessageInlineCode as e}from"../components/code/inline/index.js";import{MessageMultilineCode as i}from"../components/code/multiline/index.js";import{MessageParagraph as r}from"../components/paragraph/index.js";import{MessageBold as t}from"../components/bold/index.js";import{MessageItalic as o}from"../components/italic/index.js";import{MessageStrike as c}from"../components/strike/index.js";import{MessageBlockquote as l}from"../components/blockquote/index.js";import{MessageHr as d}from"../components/hr/index.js";import{MessagePre as s}from"../components/pre/styled.js";import{MessageTable as m}from"../components/table/index.js";import{MessageList as h}from"../components/list/index.js";import{MessageTitle as a}from"../components/title/index.js";import{MessageLink as p}from"../components/link/index.js";import{MessageImage as u}from"../components/image/index.js";import{GeneratedDocumentBlock as j}from"../components/document-copy/index.js";import{MessageCite as b}from"../components/cite/index.js";import{MessageTableHead as g,MessageTableBody as f,MessageTableRow as x}from"../components/table/styled.js";import{MessageTableCell as v}from"../components/table/cell/index.js";import{MessageListItem as k}from"../components/list/item/index.js";function y(y,O,q,w){const L={p:({children:e})=>n(r,{wrap:!0,children:e}),b:({children:e})=>n(t,{children:e}),strong:({children:e})=>n(t,{component:"strong",children:e}),i:({children:e})=>n(o,{children:e}),em:({children:e})=>n(o,{component:"em",children:e}),del:({children:e})=>n(c,{children:e}),blockquote:({children:e})=>n(l,{children:e}),cite:({children:e})=>n(b,{children:e}),hr:()=>n(d,{}),pre:({children:e})=>n(s,{children:e}),table:({children:e})=>n(m,{children:e}),thead:({children:e})=>n(g,{children:e}),tbody:({children:e})=>n(f,{children:e}),tr:({children:e})=>n(x,{children:e}),td:({children:e})=>n(v,{children:e}),th:({children:e})=>n(v,{head:!0,children:e}),ul:({children:e})=>n(h,{children:e}),ol:({start:e,children:i})=>n(h,{variant:"number",start:e,children:i}),li:({children:e})=>n(k,{children:e}),h1:({children:e})=>n(a,{variant:"h1",children:e}),h2:({children:e})=>n(a,{variant:"h2",children:e}),h3:({children:e})=>n(a,{variant:"h3",children:e}),h4:({children:e})=>n(a,{variant:"h4",children:e}),h5:({children:e})=>n(a,{variant:"h5",children:e}),h6:({children:e})=>n(a,{variant:"h6",children:e}),a:({href:e,children:i})=>n(p,{href:e,target:"_blank",children:i}),img:({src:e,alt:i})=>{if(!e)return null;const r=Object.assign(Object.assign({},y.image),{src:e,alt:i,disableSkeleton:!0,buttons:null});return n(u,Object.assign({},r,y.image&&y.image.buttons&&{buttons:y.image.buttons(r)}))}};return Object.assign(Object.assign(Object.assign({},L),{code:({className:r,children:t})=>{var o;const c=String(t),l=c.replace(/\n$/,"");if(!l)return null;const d=!(null==r?void 0:r.startsWith("language-"))&&!c.endsWith("\n"),s=/language-(\w+)/.exec(r||""),m=s?s[1]:"",h="tg"===m;return"doc"===m||"result"===m||h?n(j,{code:l,copyLabel:null===(o=y.document)||void 0===o?void 0:o.copyLabel,remarkPlugins:q,rehypePlugins:w,baseComponents:L,isTg:h}):d?n(e,{children:l}):n(i,Object.assign({},y.code,{className:r,children:l}))}}),O)}export{y as markdownComponents};
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import remarkMath from 'remark-math';
|
|
2
2
|
import rehypeKatex from 'rehype-katex';
|
|
3
|
+
import type { Plugin } from 'unified';
|
|
4
|
+
import type { Root } from 'mdast';
|
|
3
5
|
import 'katex/dist/katex.min.css';
|
|
4
|
-
|
|
6
|
+
declare const remarkCite: Plugin<[], Root>;
|
|
7
|
+
export { remarkMath, rehypeKatex, remarkCite };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{default as remarkMath}from"remark-math";export{default as rehypeKatex}from"rehype-katex";import"katex/dist/katex.min.css";const e=()=>e=>{const t=e=>{const{children:o}=e;for(let e=0;e<o.length;e++){const t=o[e];if("html"!==t.type||"<cite>"!==t.value.toLowerCase())continue;const a=o.findIndex((t,o)=>o>e&&"html"===t.type&&"</cite>"===t.value.toLowerCase());if(-1===a)continue;const c={type:"cite",children:o.slice(e+1,a),data:{hName:"cite"}};o.splice(e,a-e+1,c)}for(const e of o)"children"in e&&t(e)};t(e)};export{e as remarkCite};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{styled as t,css as o,keyframes as i}from"styled-components";import s from"react";import"tslib";import"react/jsx-runtime";import{MessageInlineCodeStyled as l}from"../components/code/inline/styled.js";import"../context.js";import{MessageMultilineCodeStyled as e}from"../components/code/multiline/styled.js";import"@react-spring/web";import"react-markdown";import"react-dom";import"../../portal/styled.js";import"../../tooltip/styled.js";import"../../tooltip/arrow/styled.js";import"../../../theme/index.js";import"../../tooltip/context.js";import"../components/code/multiline/copy/styled.js";import"../../../icons/check-small/index.js";import"../../../icons/copy/index.js";import{MessageMultilineCodeContentContainer as m,MessageMultilineCodeLastLine as c}from"../components/code/multiline/content/styled.js";import{MessageParagraphStyled as r}from"../components/paragraph/styled.js";import{MessageBoldStyled as n}from"../components/bold/styled.js";import{MessageItalicStyled as p}from"../components/italic/styled.js";import{MessageStrikeStyled as a}from"../components/strike/styled.js";import{MessageBlockquoteStyled as d}from"../components/blockquote/styled.js";import"../components/hr/styled.js";import{MessagePre as h}from"../components/pre/styled.js";import{MessageTableStyled as y,MessageTableRow as j}from"../components/table/styled.js";import{MessageTableCellStyled as f}from"../components/table/cell/styled.js";import{MessageListStyled as g}from"../components/list/styled.js";import"../components/list/context.js";import{MessageListItemStyled as u}from"../components/list/item/styled.js";import{MessageTitleStyled as x}from"../components/title/styled.js";import{MessageLinkStyled as $}from"../components/link/styled.js";import"../components/image/styled.js";import"../components/image/context.js";import"../components/image/grid/styled.js";import"../components/image/button/styled.js";import"../components/image/button/list/styled.js";import"../components/document-copy/styled.js";import"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import"../../../utils/colors/calculateGrayScale.js";import"../../../utils/colors/calculateAccentColors.js";const b=t.div.withConfig({displayName:"styled__MessageMarkdownStyled",componentId:"sc-8jnypu-0"})(["display:flex;flex-direction:column;align-items:flex-start;gap:10px;width:100%;"]),w=s.memo(t.div.withConfig({displayName:"styled__MessageMarkdownLine",componentId:"sc-8jnypu-1"})(["display:block;width:100%;color:",";font-weight:400;font-size:16px;line-height:22px;> *:first-child{margin-top:0px;}> *:last-child{margin-bottom:0px;}> ",":first-child{> ","{margin-top:0px;}}> ",":last-child{> ","{margin-bottom:0px;}}",""],({theme:t})=>"custom"===t.scheme?t.colors.custom.message.assistant.text:"dark"===t.mode?t.colors.base.white:"#a1a19a",h,e,h,e,({$typing:t,$color:i,theme:s})=>t&&o`
|
|
1
|
+
import{styled as t,css as o,keyframes as i}from"styled-components";import s from"react";import"tslib";import"react/jsx-runtime";import{MessageInlineCodeStyled as l}from"../components/code/inline/styled.js";import"../context.js";import{MessageMultilineCodeStyled as e}from"../components/code/multiline/styled.js";import"@react-spring/web";import"react-markdown";import"react-dom";import"../../portal/styled.js";import"../../tooltip/styled.js";import"../../tooltip/arrow/styled.js";import"../../../theme/index.js";import"../../tooltip/context.js";import"../components/code/multiline/copy/styled.js";import"../../../icons/check-small/index.js";import"../../../icons/copy/index.js";import{MessageMultilineCodeContentContainer as m,MessageMultilineCodeLastLine as c}from"../components/code/multiline/content/styled.js";import{MessageParagraphStyled as r}from"../components/paragraph/styled.js";import{MessageBoldStyled as n}from"../components/bold/styled.js";import{MessageItalicStyled as p}from"../components/italic/styled.js";import{MessageStrikeStyled as a}from"../components/strike/styled.js";import{MessageBlockquoteStyled as d}from"../components/blockquote/styled.js";import"../components/hr/styled.js";import{MessagePre as h}from"../components/pre/styled.js";import{MessageTableStyled as y,MessageTableRow as j}from"../components/table/styled.js";import{MessageTableCellStyled as f}from"../components/table/cell/styled.js";import{MessageListStyled as g}from"../components/list/styled.js";import"../components/list/context.js";import{MessageListItemStyled as u}from"../components/list/item/styled.js";import{MessageTitleStyled as x}from"../components/title/styled.js";import{MessageLinkStyled as $}from"../components/link/styled.js";import"../components/image/styled.js";import"../components/image/context.js";import"../components/image/grid/styled.js";import"../components/image/button/styled.js";import"../components/image/button/list/styled.js";import"../components/document-copy/styled.js";import"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import"../../../utils/colors/calculateGrayScale.js";import"../../../utils/colors/calculateAccentColors.js";import"../components/cite/styled.js";const b=t.div.withConfig({displayName:"styled__MessageMarkdownStyled",componentId:"sc-8jnypu-0"})(["display:flex;flex-direction:column;align-items:flex-start;gap:10px;width:100%;"]),w=s.memo(t.div.withConfig({displayName:"styled__MessageMarkdownLine",componentId:"sc-8jnypu-1"})(["display:block;width:100%;color:",";font-weight:400;font-size:16px;line-height:22px;> *:first-child{margin-top:0px;}> *:last-child{margin-bottom:0px;}> ",":first-child{> ","{margin-top:0px;}}> ",":last-child{> ","{margin-bottom:0px;}}",""],({theme:t})=>"custom"===t.scheme?t.colors.custom.message.assistant.text:"dark"===t.mode?t.colors.base.white:"#a1a19a",h,e,h,e,({$typing:t,$color:i,theme:s})=>t&&o`
|
|
2
2
|
&:last-child
|
|
3
3
|
> ${r}:last-child,
|
|
4
4
|
&:last-child
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useMemo as r}from"react";import
|
|
1
|
+
import{useMemo as r}from"react";import o from"remark-gfm";import"../../../theme/index.js";import{remarkCite as t}from"./markdown-plugins.js";import{useTheme as m}from"../../../theme/hook.js";import e from"remark-math";import i from"rehype-katex";const p=()=>{const p=m();return{remarkPlugins:r(()=>[o,[e,{singleDollarTextMath:!0}],t],[]),rehypePlugins:r(()=>[[i,{output:"html",errorColor:p.colors.orange,strict:!1}]],[p])}};export{p as useMarkdownPlugins};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=/(```[\s\S]*?```|`[^`\n]*`)/g,n=/(\$\$[\s\S]*?\$\$)/g,
|
|
1
|
+
const t=/(```[\s\S]*?```|`[^`\n]*`)/g,n=/(\$\$[\s\S]*?\$\$)/g,e=/[=^_\\{}]/,r=/[=^_{}]|\\[a-zA-Z]+|[+\-*/<>]\s*\d|\d\s*[+\-*/<>]/;function i(t){return" "===t||"\n"===t||"\t"===t||"\r"===t}function $(t){return void 0!==t&&t>="0"&&t<="9"}function s(t,n){for(let e=n;e<t.length;e+=1)if("$"===t[e]&&"\\"!==t[e-1])if("$"!==t[e+1]){if(!i(t[e-1])&&!$(t[e+1]))return e}else e+=1;return-1}function u(t){return!e.test(t)&&!/^\d+[^\d\s.,$]/.test(t)&&/^\d[\d.,]*\s/.test(t)}function o(t){return r.test(t)}function c(t){return function(t){return t.replace(/\\\$\$([\s\S]*?)\\\$\$/g,(t,n)=>`$$\n${n.trim()}\n$$`).replace(new RegExp("(?<!\\\\)\\\\\\[([\\s\\S]*?)(?<!\\\\)\\\\]","g"),(t,n)=>o(n)?`$$\n${n.trim()}\n$$`:t).replace(new RegExp("(?<!\\\\)\\\\\\((.+?)(?<!\\\\)\\\\\\)","g"),(t,n)=>o(n)?`$${n.trim()}$`:t)}(t).split(n).map(t=>function(t){return t.startsWith("$$")&&t.endsWith("$$")}(t)?t:function(t){let n="";for(let e=0;e<t.length;e+=1){const r=t[e];if("$"===r&&"\\"!==t[e-1]&&$(t[e+1])){const r=s(t,e+1),i=-1===r?"":t.slice(e+1,r);if(-1===r||u(i)){n+="\\$";continue}}n+=r}return n}(t)).join("")}function f(n){return n.split(t).map(t=>function(t){return t.startsWith("```")||t.startsWith("`")}(t)?t:c(t)).join("")}export{f as normalizeMessageMarkdown};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{MessageInlineCode as o}from"../components/code/inline/index.js";import{MessageMultilineCode as e}from"../components/code/multiline/index.js";import{MessageParagraph as n}from"../components/paragraph/index.js";import{MessageBold as r}from"../components/bold/index.js";import{MessageItalic as i}from"../components/italic/index.js";import"tslib";import"../components/strike/styled.js";import"../context.js";import"../components/blockquote/styled.js";import"../components/hr/styled.js";import{MessagePre as m}from"../components/pre/styled.js";import"../components/table/styled.js";import"../components/table/cell/styled.js";import"../components/list/styled.js";import"../components/list/context.js";import"../components/list/item/styled.js";import{MessageTitle as s}from"../components/title/index.js";import{MessageLink as c}from"../components/link/index.js";import"react";import"../components/image/styled.js";import"../components/image/context.js";import"../../../theme/index.js";import"../components/image/grid/styled.js";import"../components/image/button/styled.js";import"../components/image/button/list/styled.js";import"react-markdown";import"../components/document-copy/styled.js";import"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import"../../../utils/colors/calculateGrayScale.js";import"../../../utils/colors/calculateAccentColors.js";const l="body-s-regular",p={p:({children:o})=>t(n,{wrap:!0,variant:l,children:o}),b:({children:o})=>t(r,{variant:l,children:o}),pre:({children:o})=>t(m,{children:o}),code:({className:n,children:r})=>{const i=String(r);if(!i)return null;return!n||!n.startsWith("language-")?t(o,{children:i}):t(e,{className:n,children:i})},strong:({children:o})=>t(r,{component:"strong",variant:l,children:o}),i:({children:o})=>t(i,{variant:l,children:o}),em:({children:o})=>t(i,{component:"em",variant:l,children:o}),a:({href:o,children:e})=>t(c,{href:o,target:"_blank",variant:l,children:e}),h1:({children:o})=>t(s,{variant:"h3",children:o}),h2:({children:o})=>t(s,{variant:"h4",children:o}),h3:({children:o})=>t(s,{variant:"h5",children:o})};export{p as reasoningComponentsOverride};
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{MessageInlineCode as o}from"../components/code/inline/index.js";import{MessageMultilineCode as e}from"../components/code/multiline/index.js";import{MessageParagraph as n}from"../components/paragraph/index.js";import{MessageBold as r}from"../components/bold/index.js";import{MessageItalic as i}from"../components/italic/index.js";import"tslib";import"../components/strike/styled.js";import"../context.js";import"../components/blockquote/styled.js";import"../components/hr/styled.js";import{MessagePre as m}from"../components/pre/styled.js";import"../components/table/styled.js";import"../components/table/cell/styled.js";import"../components/list/styled.js";import"../components/list/context.js";import"../components/list/item/styled.js";import{MessageTitle as s}from"../components/title/index.js";import{MessageLink as c}from"../components/link/index.js";import"react";import"../components/image/styled.js";import"../components/image/context.js";import"../../../theme/index.js";import"../components/image/grid/styled.js";import"../components/image/button/styled.js";import"../components/image/button/list/styled.js";import"react-markdown";import"../components/document-copy/styled.js";import"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import"../../../utils/colors/calculateGrayScale.js";import"../../../utils/colors/calculateAccentColors.js";import"../components/cite/styled.js";const l="body-s-regular",p={p:({children:o})=>t(n,{wrap:!0,variant:l,children:o}),b:({children:o})=>t(r,{variant:l,children:o}),pre:({children:o})=>t(m,{children:o}),code:({className:n,children:r})=>{const i=String(r);if(!i)return null;return!n||!n.startsWith("language-")?t(o,{children:i}):t(e,{className:n,children:i})},strong:({children:o})=>t(r,{component:"strong",variant:l,children:o}),i:({children:o})=>t(i,{variant:l,children:o}),em:({children:o})=>t(i,{component:"em",variant:l,children:o}),a:({href:o,children:e})=>t(c,{href:o,target:"_blank",variant:l,children:e}),h1:({children:o})=>t(s,{variant:"h3",children:o}),h2:({children:o})=>t(s,{variant:"h4",children:o}),h3:({children:o})=>t(s,{variant:"h5",children:o})};export{p as reasoningComponentsOverride};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { TariffType } from './types';
|
|
2
|
-
type
|
|
2
|
+
type TariffCardCommonProps = {
|
|
3
3
|
label: string;
|
|
4
4
|
variant: TariffType;
|
|
5
5
|
description?: string;
|
|
@@ -7,11 +7,21 @@ type TariffCardProps = {
|
|
|
7
7
|
currency: string;
|
|
8
8
|
price: string;
|
|
9
9
|
discount?: string;
|
|
10
|
-
selected?: boolean;
|
|
11
10
|
caps: string;
|
|
12
11
|
popularText?: string;
|
|
13
12
|
onClick?: (e: React.MouseEvent) => void;
|
|
14
13
|
};
|
|
14
|
+
type TariffCardRadioProps = TariffCardCommonProps & {
|
|
15
|
+
control?: 'radio';
|
|
16
|
+
selected?: boolean;
|
|
17
|
+
button?: never;
|
|
18
|
+
};
|
|
19
|
+
type TariffCardButtonProps = TariffCardCommonProps & {
|
|
20
|
+
control: 'button';
|
|
21
|
+
button: React.ReactNode;
|
|
22
|
+
selected?: never;
|
|
23
|
+
};
|
|
24
|
+
type TariffCardProps = TariffCardRadioProps | TariffCardButtonProps;
|
|
15
25
|
type TariffCardEnterpriseProps = {
|
|
16
26
|
label: string;
|
|
17
27
|
variant: 'ENTERPRISE';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as r,jsx as
|
|
1
|
+
import{jsxs as r,jsx as a}from"react/jsx-runtime";import{Radio as i}from"../../radio/index.js";import{TariffCardIsPopular as n,TariffCardIsPopularContainer as t,TariffCardStarUnfilledIcon as e,TariffCardIsPopularText as l,TariffCardBackground as o,TariffCardStyled as c,TariffCardStyledContent as d,TariffCardContainer as E,TariffCardLabel as v,TariffCardCapsContainer as R,TariffCardCapsText as h,TariffCardCapsBadge as p,TariffCardContainerPrice as s,TariffCardPrice as u,TariffCardCurrency as T,TariffCardEnterpriseButtonContainer as f,TariffCardDescription as P,TariffCardButtonContainer as I,TariffCardDiscount as N}from"./styled.js";export{TariffCardArrow,TariffCardEnterpriseButton}from"./styled.js";const S=S=>{var x;const $="ENTERPRISE"===S.variant?"button":null!==(x=S.control)&&void 0!==x?x:"radio",m="ENTERPRISE"!==S.variant&&"radio"===$&&!!S.selected;return r(n,{$active:"PREMIUM"===S.variant&&!!S.popularText,$variant:S.variant,"data-test":S.variant,children:["PREMIUM"===S.variant&&!!S.popularText&&r(t,{children:[a(e,{fill:"#fff",size:16}),a(l,{children:S.popularText})]}),a(o,{children:r(c,{onClick:r=>{var a;"ENTERPRISE"!==S.variant&&(r.preventDefault(),null===(a=S.onClick)||void 0===a||a.call(S,r))},$variant:S.variant,$active:m,$clickable:"ENTERPRISE"!==S.variant&&("radio"===$||!!S.onClick),children:[r(d,{$variant:S.variant,$control:$,children:["ENTERPRISE"!==S.variant&&"radio"===$&&a(i,{checked:m}),r(E,{children:[a(v,{$color:S.variant,children:S.label}),r(R,{children:[a(h,{children:S.extraText}),"ENTERPRISE"!==S.variant&&a(p,{color:"blue",children:`${S.caps} Caps`})]})]}),"ENTERPRISE"!==S.variant&&r(s,{children:[r(u,{children:[S.price," "]}),a(T,{children:S.currency})]}),"ENTERPRISE"===S.variant&&a(f,{children:S.button})]}),a(P,{children:S.description}),"ENTERPRISE"!==S.variant&&"button"===S.control&&a(I,{onClick:r=>r.stopPropagation(),children:S.button}),"ENTERPRISE"!==S.variant&&S.discount&&a(N,{children:S.discount})]})})]})};export{S as TariffCard};
|