@bothub-chat/ui 2.50.2-develop-ab341618-5a26-4145-a185-ccdcd2f3d3af → 2.50.3-feat-input-7e478a80-657a-49c5-aedc-cfc31f0e167c
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/avatar/index.js +1 -1
- package/dist/components/datepicker/types.d.ts +1 -1
- package/dist/components/datepicker/ui/datepicker.js +1 -1
- package/dist/components/file-field/index.js +1 -1
- package/dist/components/file-icon/index.js +1 -1
- package/dist/components/footer/index.js +1 -1
- package/dist/components/footer/mobile/index.js +1 -1
- package/dist/components/header/index.js +1 -1
- package/dist/components/header/menu-nav/config.js +1 -1
- package/dist/components/header/menu-nav/index.js +1 -1
- package/dist/components/header/menu-nav/styled.js +2 -2
- package/dist/components/header/multi-level-menu/multi-level-menu-accordion/ui/styled.js +1 -1
- package/dist/components/header/multi-level-menu/multi-level-menu-first-level/ui/styled.js +1 -1
- package/dist/components/header/multi-level-menu/styled.js +1 -1
- package/dist/components/input-message/index.d.ts +4 -2
- package/dist/components/input-message/index.js +1 -1
- package/dist/components/input-message/styled.d.ts +5998 -3999
- package/dist/components/input-message/styled.js +26 -6
- package/dist/components/input-message/types.d.ts +6 -0
- package/dist/components/lang-switcher/styled.js +1 -1
- package/dist/components/message/actions/index.js +1 -1
- package/dist/components/message/index.js +1 -1
- package/dist/components/message/scroll-button/styled.js +1 -1
- package/dist/components/message/video/index.js +1 -1
- package/dist/components/pagination/styled.js +1 -1
- package/dist/components/select-field/select-modal/index.js +1 -1
- package/dist/components/select-field/select-modal/option/checkbox-group/styled.js +1 -1
- package/dist/components/select-field/select-modal/option/list/index.js +1 -1
- package/dist/components/select-field/styled.js +3 -3
- package/dist/components/sidebar/chat/index.js +1 -1
- package/dist/components/sidebar/chat/styled.js +1 -1
- package/dist/components/sidebar/index.js +1 -1
- package/dist/components/sidebar/styled.js +1 -1
- package/dist/components/slider/index.js +1 -1
- package/dist/components/stepper/styled.js +1 -1
- package/dist/components/tariff/card/styled.js +3 -3
- package/dist/components/text-field/index.js +1 -1
- package/dist/components/uploaded-file/index.js +1 -1
- package/dist/components/uploaded-file/styled.js +1 -1
- package/dist/icons/index.d.ts +0 -5
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/dist/icons/history/index.d.ts +0 -1
- package/dist/icons/history/index.js +0 -1
- package/dist/icons/money-plus/index.d.ts +0 -1
- package/dist/icons/money-plus/index.js +0 -1
- package/dist/icons/money-stack/index.d.ts +0 -1
- package/dist/icons/money-stack/index.js +0 -1
- package/dist/icons/sort-numeric-bottom/index.d.ts +0 -1
- package/dist/icons/sort-numeric-bottom/index.js +0 -1
- package/dist/icons/sort-numeric-top/index.d.ts +0 -1
- package/dist/icons/sort-numeric-top/index.js +0 -1
|
@@ -1,14 +1,34 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{styled as i,css as a,keyframes as n}from"styled-components";import{animated as s}from"@react-spring/web";import{Button as r}from"../button/index.js";import{EnterIcon as l}from"../../icons/enter/index.js";import{
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{styled as i,css as a,keyframes as n}from"styled-components";import{animated as s}from"@react-spring/web";import{Button as r}from"../button/index.js";import{EnterIcon as l}from"../../icons/enter/index.js";import{SendIcon as d}from"../../icons/send/index.js";import{CloseIcon as c}from"../../icons/close/index.js";import{Chip as p}from"../chip/index.js";import{VoiceIcon as g}from"../../icons/voice/index.js";import{PauseIcon as m}from"../../icons/pause/index.js";import{PlayIcon as u}from"../../icons/play/index.js";import{Plus2Icon as y}from"../../icons/plus-2/index.js";import{ExclamationIcon as h}from"../../icons/exclamation/index.js";import"tslib";import{IconProvider as x}from"../icon/context.js";import"../icon/styled.js";import"react";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{Typography as f}from"../typography/index.js";import{adaptive as b}from"../../adaptive/index.js";const w=i.div.withConfig({displayName:"styled__InputMessageStyled",componentId:"sc-4jukeb-0"})(["display:flex;flex-direction:column;gap:14px;position:relative;border-radius:10px;border:1px solid ",";background:",";width:100%;padding:14px 20px;max-width:",";box-sizing:border-box;overflow:visible;cursor:",";outline:none;"," ",""],({theme:e,$active:t,$disabled:o})=>o?e.colors.grayScale.gray2:t?e.colors.accent.primary:e.colors.grayScale.gray2,({theme:e,$disabled:t})=>t?e.colors.grayScale.gray3:"light"===e.mode?e.default.colors.base.white:e.colors.grayScale.gray4,({theme:e})=>e.dashboard.chat.containerWidth,({$disabled:e,$textAreaDisabled:t,$voiceRecording:o})=>e?"not-allowed":t||o?"default":"text",({$disabled:e})=>!e&&a`
|
|
2
2
|
&:hover {
|
|
3
3
|
border-color: ${({theme:e})=>e.colors.accent.primary};
|
|
4
4
|
}
|
|
5
|
-
`,({$dragActive:e})=>e&&"\n opacity: 0.85;\n "),
|
|
5
|
+
`,({$dragActive:e})=>e&&"\n opacity: 0.85;\n "),I=i.div.withConfig({displayName:"styled__InputMessageContent",componentId:"sc-4jukeb-1"})(["width:100%;gap:14px;display:grid;grid-template-areas:'input input input' 'configure . buttons';grid-auto-rows:min-content;grid-auto-columns:min-content auto min-content;align-items:center;"]),_=i.div.withConfig({displayName:"styled__InputMessageConfigure",componentId:"sc-4jukeb-2"})(["display:flex;align-items:center;gap:14px;position:relative;width:fit-content;height:100%;user-select:none;grid-area:configure;"]),k=i.button.attrs({children:e(y,{})}).withConfig({displayName:"styled__InputMessageConfigureButton",componentId:"sc-4jukeb-3"})(["all:unset;display:flex;align-items:center;padding:10px;border-radius:8px;background-color:",";transition:background-color 300ms ease-in-out,transform 50ms ease-in;&:hover{cursor:pointer;background-color:",";}&:active{transform:scale(0.98) translateY(1px);}",""],({theme:e})=>e.colors.grayScale.gray4,({theme:e})=>e.colors.grayScale.gray3,({theme:e,$disabled:t})=>t&&a`
|
|
6
|
+
background-color: ${e.colors.grayScale.gray2} !important;
|
|
7
|
+
`),j=i(s.div).withConfig({displayName:"styled__InputMessageConfigureMenu",componentId:"sc-4jukeb-4"})(["position:absolute;bottom:calc(100% + 8px);left:0;width:max-content;display:flex;justify-content:center;flex-direction:column;padding:8px;border-radius:10px;border:1px solid ",";background-color:",";"],({theme:e})=>e.colors.grayScale.gray2,({theme:e})=>e.colors.grayScale.gray4),v=a`
|
|
8
|
+
all: unset;
|
|
9
|
+
display: flex;
|
|
10
|
+
flex: 1;
|
|
11
|
+
align-items: center;
|
|
12
|
+
padding: 10px 12px;
|
|
13
|
+
gap: 8px;
|
|
14
|
+
border-radius: 8px;
|
|
15
|
+
`,M=i.button.attrs(({theme:i,children:a,icon:n})=>({children:t(o,{children:[n&&e(x,{fill:i.colors.base.white,size:18,children:n}),e(f,{variant:"body-m-medium",children:a})]})})).withConfig({displayName:"styled__InputMessageMenuOption",componentId:"sc-4jukeb-5"})([""," &:hover{cursor:pointer;background-color:",";}&:active{transform:scale(0.98) translateY(1px);}"],v,({theme:e})=>e.colors.grayScale.gray3),C=i.div.withConfig({displayName:"styled__InputMessageUploadFile",componentId:"sc-4jukeb-6"})(["display:inline-flex;"]),S=i.input.attrs({id:"inputMessageUploadFileInput"}).withConfig({displayName:"styled__InputMessageUploadFileInput",componentId:"sc-4jukeb-7"})(["display:none;"]),N=i.label.attrs({htmlFor:"inputMessageUploadFileInput"}).withConfig({displayName:"styled__InputMessageUploadFileLabel",componentId:"sc-4jukeb-8"})([""," ",""],v,({theme:e,$disabled:t})=>t?a`
|
|
16
|
+
background-color: ${e.colors.grayScale.gray2};
|
|
17
|
+
`:a`
|
|
18
|
+
&:hover {
|
|
19
|
+
cursor: pointer;
|
|
20
|
+
background-color: ${({theme:e})=>e.colors.grayScale.gray3};
|
|
21
|
+
}
|
|
22
|
+
&:active {
|
|
23
|
+
transform: scale(0.98) translateY(1px);
|
|
24
|
+
}
|
|
25
|
+
`),$=i.hr.withConfig({displayName:"styled__InputMessageMenuHr",componentId:"sc-4jukeb-9"})(["all:unset;margin-block:8px;height:1px;width:100%;background-color:",";"],({theme:e})=>e.colors.grayScale.gray2),F=i.div.withConfig({displayName:"styled__InputMessageMain",componentId:"sc-4jukeb-10"})(["display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:14px;width:100%;grid-area:input;"]),z=i.div.withConfig({displayName:"styled__InputMessageButtons",componentId:"sc-4jukeb-11"})(["display:flex;gap:10px;align-items:center;grid-area:buttons;"]),V=i.div.withConfig({displayName:"styled__InputMessageFiles",componentId:"sc-4jukeb-12"})(["display:flex;flex-wrap:wrap;gap:10px 14px;cursor:default;max-height:200px;overflow-y:auto;"]),T=i(p).attrs({variant:"input"}).withConfig({displayName:"styled__InputMessageFile",componentId:"sc-4jukeb-13"})([""]),B=i(V).withConfig({displayName:"styled__InputMessageVoiceFiles",componentId:"sc-4jukeb-14"})(["width:100%;"]),R=i.div.withConfig({displayName:"styled__InputMessageVoiceTrack",componentId:"sc-4jukeb-15"})(["display:flex;gap:14px;align-items:center;"]),U=i(f).attrs(({theme:i,children:a})=>({variant:"body-m-regular",children:t(o,{children:[e(h,{fill:i.colors.accent.primaryLight}),a]})})).withConfig({displayName:"styled__InputMessageConcatenateWarning",componentId:"sc-4jukeb-16"})(["display:flex;align-items:center;gap:8px;color:",";"],({theme:e})=>e.colors.accent.primaryLight),Y=i(r).attrs({variant:"text",children:e(c,{})}).withConfig({displayName:"styled__InputMessageVoiceFileDelete",componentId:"sc-4jukeb-17"})([""]),A=i.textarea.withConfig({displayName:"styled__InputMessageTextArea",componentId:"sc-4jukeb-18"})(["display:flex;height:auto;width:100%;min-height:22px;max-height:270px;background:none;outline:none;resize:none;border:none;color:",";flex-shrink:0;overflow:auto;scrollbar-width:none;padding:0px;&::placeholder{color:",";}&::-webkit-scrollbar{display:none;}"," font-weight:400;font-size:18px;line-height:23.4px;@media (max-width:","){font-size:16px;line-height:22px;}"],({theme:e,$disabled:t})=>t?e.colors.grayScale.gray1:e.colors.base.white,({theme:e})=>e.colors.grayScale.gray1,({$disabled:e})=>e&&a`
|
|
6
26
|
cursor: not-allowed;
|
|
7
|
-
`,({theme:e})=>e.mobile.maxWidth),
|
|
27
|
+
`,({theme:e})=>e.mobile.maxWidth),D=i(r).withConfig({displayName:"styled__InputMessageSendButton",componentId:"sc-4jukeb-19"})(["flex-shrink:0;svg{pointer-events:none;}"]),L=i(r).attrs({variant:"text",children:e(m,{})}).withConfig({displayName:"styled__InputMessageVoicePauseButton",componentId:"sc-4jukeb-20"})(["padding:10px;margin-left:10px;"]),W=i(L).attrs({children:e(u,{})}).withConfig({displayName:"styled__InputMessageVoicePlayButton",componentId:"sc-4jukeb-21"})([""]),H=i(D).attrs(({theme:t,disabled:o})=>({variant:"text",startIcon:e(g,{}),iconFill:o?t.colors.grayScale.gray1:t.bright?t.default.colors.base.black:t.colors.base.white,disableHoverColor:!0})).withConfig({displayName:"styled__InputMessageVoiceButton",componentId:"sc-4jukeb-22"})(["margin-inline:10px;padding:10px;border-radius:8px;background-color:",";position:relative;z-index:0;"," &:before{content:'';height:140%;width:140%;position:absolute;top:-20%;left:-20%;background-color:",";opacity:",";filter:blur(18px);z-index:-1;transition:opacity 300ms ease-out;}"],({theme:e,$isRecording:t})=>t?e.colors.critic:"transparent",({theme:e,$isRecording:t})=>t&&a`
|
|
8
28
|
svg path {
|
|
9
29
|
fill: ${e.default.colors.base.white} !important;
|
|
10
30
|
}
|
|
11
|
-
`,({theme:e})=>e.colors.critic,({$isRecording:e})=>e?1:0),
|
|
31
|
+
`,({theme:e})=>e.colors.critic,({$isRecording:e})=>e?1:0),O=d,P=i.div.withConfig({displayName:"styled__InputMessageVoiceRecord",componentId:"sc-4jukeb-23"})(["display:flex;align-items:center;gap:8px;"]),q=i.span.withConfig({displayName:"styled__InputMessageVoiceRecordDot",componentId:"sc-4jukeb-24"})(["display:inline-flex;width:8px;height:8px;background:",";border-radius:50%;animation:"," 1s ease-in-out infinite;"],({theme:e})=>e.colors.critic,()=>n`
|
|
12
32
|
from {
|
|
13
33
|
opacity: 1;
|
|
14
34
|
}
|
|
@@ -18,8 +38,8 @@ import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{styled as
|
|
|
18
38
|
to {
|
|
19
39
|
opacity: 1;
|
|
20
40
|
}
|
|
21
|
-
`),
|
|
41
|
+
`),E=i(f).attrs({variant:"body-s-medium"}).withConfig({displayName:"styled__InputMessageVoiceRecordTimeText",componentId:"sc-4jukeb-25"})(["cursor:default;"]),G=i.div.withConfig({displayName:"styled__InputMessageToggleSendStyled",componentId:"sc-4jukeb-26"})(["position:relative;width:fit-content;height:fit-content;",""],b({tablet:a`
|
|
22
42
|
display: none;
|
|
23
43
|
`,mobile:a`
|
|
24
44
|
display: none;
|
|
25
|
-
`})),
|
|
45
|
+
`})),J=i(r).attrs({variant:"text",startIcon:e(l,{}),iconSize:24}).withConfig({displayName:"styled__InputMessageToggleSendButton",componentId:"sc-4jukeb-27"})(["svg{g path{fill:"," !important;}}display:flex;&:hover{svg{path{fill:"," !important;}}}"],({theme:e})=>e.colors.grayScale.gray3,({theme:e})=>"dark"===e.mode?e.colors.grayScale.gray2:e.colors.grayScale.gray1),K=i(s.div).withConfig({displayName:"styled__InputMessageToggleSendModalStyled",componentId:"sc-4jukeb-28"})(["display:flex;flex-direction:column;gap:6px;max-height:fit-content;width:max-content;max-width:60vw;padding:6px;position:absolute;bottom:calc(100% + 10px);right:0;border-radius:10px;border:1px "," solid;background-color:",";z-index:50;user-select:none;-moz-user-select:none;-webkit-user-select:none;"],({theme:e})=>e.colors.grayScale.gray2,({theme:e})=>"dark"===e.mode?e.colors.grayScale.gray4:e.default.colors.base.white),Q=i.button.withConfig({displayName:"styled__InputMessageToggleSendModalOption",componentId:"sc-4jukeb-29"})(["all:unset;margin:0;padding:12px;border-radius:8px;background-color:",";cursor:pointer;transition:opacity 0.1s ease-in-out,transform 0.1s ease-in-out,filter 0.1s ease-in-out;&:hover{filter:",";transition:filter 100ms ease-in-out;}&:active{transform:translateY(1px);}"],({theme:e,active:t})=>"dark"===e.mode?t?e.colors.grayScale.gray3:e.colors.grayScale.gray4:t?e.colors.grayScale.gray3:e.default.colors.base.white,({theme:e})=>"dark"===e.mode?"brightness(120%)":"brightness(80%)");export{z as InputMessageButtons,U as InputMessageConcatenateWarning,_ as InputMessageConfigure,k as InputMessageConfigureButton,j as InputMessageConfigureMenu,I as InputMessageContent,T as InputMessageFile,V as InputMessageFiles,F as InputMessageMain,$ as InputMessageMenuHr,M as InputMessageMenuOption,D as InputMessageSendButton,O as InputMessageSendIcon,w as InputMessageStyled,A as InputMessageTextArea,J as InputMessageToggleSendButton,Q as InputMessageToggleSendModalOption,K as InputMessageToggleSendModalStyled,G as InputMessageToggleSendStyled,C as InputMessageUploadFile,S as InputMessageUploadFileInput,N as InputMessageUploadFileLabel,H as InputMessageVoiceButton,Y as InputMessageVoiceFileDelete,B as InputMessageVoiceFiles,L as InputMessageVoicePauseButton,W as InputMessageVoicePlayButton,P as InputMessageVoiceRecord,q as InputMessageVoiceRecordDot,E as InputMessageVoiceRecordTimeText,R as InputMessageVoiceTrack};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
export interface IInputMessageFile {
|
|
2
3
|
name: string;
|
|
3
4
|
previewUrl: string | null;
|
|
@@ -9,3 +10,8 @@ export interface IInputMessageVoiceFile {
|
|
|
9
10
|
src: string;
|
|
10
11
|
blob: Blob;
|
|
11
12
|
}
|
|
13
|
+
export interface IConfigureOption {
|
|
14
|
+
icon?: React.ReactNode;
|
|
15
|
+
children?: React.ReactNode;
|
|
16
|
+
onClick?: () => unknown;
|
|
17
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{styled as i}from"styled-components";import{animated as o}from"@react-spring/web";import{Typography as s}from"../typography/index.js";import{SelectField as n}from"../select-field/index.js";import{Button as e}from"../button/index.js";import{ArrowDownIcon as t}from"../../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"tslib";import"react/jsx-runtime";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/copy/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/check-small/index.js";import"../../icons/stop/index.js";import"../../icons/thumb-up/index.js";import"../../icons/thumb-down/index.js";import"../../icons/star/index.js";import"../../icons/info-big/index.js";import"../../icons/warning-big/index.js";import"../../icons/error-big/index.js";import"../../icons/success-big/index.js";import"../../icons/mj/index.js";import"../../icons/card/index.js";import"../../icons/arrow-narrow-up/index.js";import"../../icons/arrow-narrow-down/index.js";import"../../icons/filters/index.js";import"../../icons/info/index.js";import"../../icons/search-circle/index.js";import"../../icons/save/index.js";import"../../icons/light/index.js";import"../../icons/dark/index.js";import"../../icons/email-colored/index.js";import"../../icons/action-chat/index.js";import"../../icons/attach/index.js";import"../../icons/avatar-add/index.js";import"../../icons/brush/index.js";import"../../icons/calendar/index.js";import"../../icons/claude/index.js";import"../../icons/cookie/index.js";import"../../icons/dalle/index.js";import"../../icons/download-img/index.js";import"../../icons/error/index.js";import"../../icons/expand/index.js";import"../../icons/eye/index.js";import"../../icons/face/index.js";import"../../icons/gear/index.js";import"../../icons/gear-min/index.js";import"../../icons/generation/index.js";import"../../icons/gpt-3_5/index.js";import"../../icons/gpt-4/index.js";import"../../icons/imagine/index.js";import"../../icons/imagine-2/index.js";import"../../icons/loader/index.js";import"../../icons/loader-circular/index.js";import"../../icons/loader-circular-gradient/index.js";import"../../icons/loader-circular-gradient-2/index.js";import"../../icons/minus/index.js";import"../../icons/mj-white/index.js";import"../../icons/prompt/index.js";import"../../icons/rabbit/index.js";import"../../icons/ratio-1x1/index.js";import"../../icons/ratio-2x3/index.js";import"../../icons/ratio-3x2/index.js";import"../../icons/ratio-4x5/index.js";import"../../icons/ratio-4x7/index.js";import"../../icons/ratio-5x4/index.js";import"../../icons/ratio-7x4/index.js";import"../../icons/ratio-16x9/index.js";import"../../icons/ratio-9x16/index.js";import"../../icons/ratio-21x9/index.js";import"../../icons/ratio-9x21/index.js";import"../../icons/refferal-min/index.js";import"../../icons/search-data/index.js";import"../../icons/square/index.js";import"../../icons/turtle/index.js";import"../../icons/upscale/index.js";import"../../icons/withdraw/index.js";import"../../icons/search-plus/index.js";import"../../icons/lightning/index.js";import"../../icons/blog-circle/index.js";import"../../icons/stripe/index.js";import"../../icons/corporate/index.js";import"../../icons/public/index.js";import"../../icons/private/index.js";import"../../icons/mistral/index.js";import"../../icons/gemini/index.js";import"../../icons/search-simple/index.js";import"../../icons/sad-robot/index.js";import"../../icons/model/index.js";import"../../icons/phone-colored/index.js";import"../../icons/questions/index.js";import"../../icons/pdf-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/resend/index.js";import"../../icons/big-article/index.js";import"../../icons/add-chat/index.js";import"../../icons/add-group/index.js";import"../../icons/drag-dot/index.js";import"../../icons/add-folder/index.js";import"../../icons/temp-chat/index.js";import"../../icons/delete-chat/index.js";import"../../icons/sidebar-chat/index.js";import"../../icons/organization/index.js";import"../../icons/simple-gear/index.js";import"../../icons/text-bold/index.js";import"../../icons/text-italic/index.js";import"../../icons/text-underline/index.js";import"../../icons/text-strikethrough/index.js";import"../../icons/refresh/index.js";import"../../icons/copy-variants/index.js";import"../../icons/sort-ascending/index.js";import"../../icons/sort-descending/index.js";import"../../icons/quote/index.js";import"../../icons/url-circle/index.js";import"../../icons/show-ui/index.js";import"../../icons/hide-ui/index.js";import"../../icons/sort-user/index.js";import"../../icons/happy-robot/index.js";import"../../icons/happy-robot-gradient/index.js";import"../../icons/min-window/index.js";import"../../icons/max-window/index.js";import"../../icons/manage-chat/index.js";import"../../icons/analyze-urls/index.js";import"../../icons/web-search/index.js";import"../../icons/include-context/index.js";import"../../icons/queue/index.js";import"../../icons/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/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";const r=i.div.withConfig({displayName:"styled__LangSwitcherStyled",componentId:"sc-13zlbee-0"})(["display:flex;flex-direction:column;align-items:center;width:fit-content;position:relative;"]),c=i(o.ul).withConfig({displayName:"styled__LangSwitcherList",componentId:"sc-13zlbee-1"})(["position:absolute;margin-top:28px;display:grid;grid-template-columns:auto auto;align-items:center;row-gap:16px;column-gap:8px;transform-origin:top center;flex-direction:column;width:fit-content;padding:16px 20px;border-radius:16px;border:1px solid ",";background:",";"],({theme:i})=>i.colors.grayScale.gray2,({theme:i})=>i.colors.grayScale.gray4),d=i(s).attrs({variant:"body-m-semibold"}).withConfig({displayName:"styled__LangSwitcherItem",componentId:"sc-13zlbee-2"})(["display:flex;gap:8px;align-items:center;"]),p=i(s).attrs({variant:"body-s-medium"}).withConfig({displayName:"styled__LangSwitcherLabel",componentId:"sc-13zlbee-3"})(["width:max-content;"]),m=i(n).withConfig({displayName:"styled__LangSwitcherInput",componentId:"sc-13zlbee-4"})(["min-width:160px;& > *:first-child{background:",";}"],({theme:i})=>i.colors.grayScale.gray7),x=i(e).attrs({variant:"text"}).withConfig({displayName:"styled__LangSwitcherButton",componentId:"sc-13zlbee-5"})(["white-space:nowrap;"]),j=i(t).withConfig({displayName:"styled__LangSwitcherIcon",componentId:"sc-13zlbee-6"})(["pointer-events:none;transition:transform 0.2s ease-in-out;transform:",";"],({$open:i})=>i?"rotateZ(-180deg)":"rotateZ(0)");export{x as LangSwitcherButton,j as LangSwitcherIcon,m as LangSwitcherInput,d as LangSwitcherItem,p as LangSwitcherLabel,c as LangSwitcherList,r as LangSwitcherStyled};
|
|
1
|
+
import{styled as i}from"styled-components";import{animated as o}from"@react-spring/web";import{Typography as s}from"../typography/index.js";import{SelectField as n}from"../select-field/index.js";import{Button as e}from"../button/index.js";import{ArrowDownIcon as t}from"../../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"tslib";import"react/jsx-runtime";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/copy/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/check-small/index.js";import"../../icons/stop/index.js";import"../../icons/thumb-up/index.js";import"../../icons/thumb-down/index.js";import"../../icons/star/index.js";import"../../icons/info-big/index.js";import"../../icons/warning-big/index.js";import"../../icons/error-big/index.js";import"../../icons/success-big/index.js";import"../../icons/mj/index.js";import"../../icons/card/index.js";import"../../icons/arrow-narrow-up/index.js";import"../../icons/arrow-narrow-down/index.js";import"../../icons/filters/index.js";import"../../icons/info/index.js";import"../../icons/search-circle/index.js";import"../../icons/save/index.js";import"../../icons/light/index.js";import"../../icons/dark/index.js";import"../../icons/email-colored/index.js";import"../../icons/action-chat/index.js";import"../../icons/attach/index.js";import"../../icons/avatar-add/index.js";import"../../icons/brush/index.js";import"../../icons/calendar/index.js";import"../../icons/claude/index.js";import"../../icons/cookie/index.js";import"../../icons/dalle/index.js";import"../../icons/download-img/index.js";import"../../icons/error/index.js";import"../../icons/expand/index.js";import"../../icons/eye/index.js";import"../../icons/face/index.js";import"../../icons/gear/index.js";import"../../icons/gear-min/index.js";import"../../icons/generation/index.js";import"../../icons/gpt-3_5/index.js";import"../../icons/gpt-4/index.js";import"../../icons/imagine/index.js";import"../../icons/imagine-2/index.js";import"../../icons/loader/index.js";import"../../icons/loader-circular/index.js";import"../../icons/loader-circular-gradient/index.js";import"../../icons/loader-circular-gradient-2/index.js";import"../../icons/minus/index.js";import"../../icons/mj-white/index.js";import"../../icons/prompt/index.js";import"../../icons/rabbit/index.js";import"../../icons/ratio-1x1/index.js";import"../../icons/ratio-2x3/index.js";import"../../icons/ratio-3x2/index.js";import"../../icons/ratio-4x5/index.js";import"../../icons/ratio-4x7/index.js";import"../../icons/ratio-5x4/index.js";import"../../icons/ratio-7x4/index.js";import"../../icons/ratio-16x9/index.js";import"../../icons/ratio-9x16/index.js";import"../../icons/ratio-21x9/index.js";import"../../icons/ratio-9x21/index.js";import"../../icons/refferal-min/index.js";import"../../icons/search-data/index.js";import"../../icons/square/index.js";import"../../icons/turtle/index.js";import"../../icons/upscale/index.js";import"../../icons/withdraw/index.js";import"../../icons/search-plus/index.js";import"../../icons/lightning/index.js";import"../../icons/blog-circle/index.js";import"../../icons/stripe/index.js";import"../../icons/corporate/index.js";import"../../icons/public/index.js";import"../../icons/private/index.js";import"../../icons/mistral/index.js";import"../../icons/gemini/index.js";import"../../icons/search-simple/index.js";import"../../icons/sad-robot/index.js";import"../../icons/model/index.js";import"../../icons/phone-colored/index.js";import"../../icons/questions/index.js";import"../../icons/pdf-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/resend/index.js";import"../../icons/big-article/index.js";import"../../icons/add-chat/index.js";import"../../icons/add-group/index.js";import"../../icons/drag-dot/index.js";import"../../icons/add-folder/index.js";import"../../icons/temp-chat/index.js";import"../../icons/delete-chat/index.js";import"../../icons/sidebar-chat/index.js";import"../../icons/organization/index.js";import"../../icons/simple-gear/index.js";import"../../icons/text-bold/index.js";import"../../icons/text-italic/index.js";import"../../icons/text-underline/index.js";import"../../icons/text-strikethrough/index.js";import"../../icons/refresh/index.js";import"../../icons/copy-variants/index.js";import"../../icons/sort-ascending/index.js";import"../../icons/sort-descending/index.js";import"../../icons/quote/index.js";import"../../icons/url-circle/index.js";import"../../icons/show-ui/index.js";import"../../icons/hide-ui/index.js";import"../../icons/sort-user/index.js";import"../../icons/happy-robot/index.js";import"../../icons/happy-robot-gradient/index.js";import"../../icons/min-window/index.js";import"../../icons/max-window/index.js";import"../../icons/manage-chat/index.js";import"../../icons/analyze-urls/index.js";import"../../icons/web-search/index.js";import"../../icons/include-context/index.js";import"../../icons/queue/index.js";import"../../icons/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";const r=i.div.withConfig({displayName:"styled__LangSwitcherStyled",componentId:"sc-13zlbee-0"})(["display:flex;flex-direction:column;align-items:center;width:fit-content;position:relative;"]),c=i(o.ul).withConfig({displayName:"styled__LangSwitcherList",componentId:"sc-13zlbee-1"})(["position:absolute;margin-top:28px;display:grid;grid-template-columns:auto auto;align-items:center;row-gap:16px;column-gap:8px;transform-origin:top center;flex-direction:column;width:fit-content;padding:16px 20px;border-radius:16px;border:1px solid ",";background:",";"],({theme:i})=>i.colors.grayScale.gray2,({theme:i})=>i.colors.grayScale.gray4),d=i(s).attrs({variant:"body-m-semibold"}).withConfig({displayName:"styled__LangSwitcherItem",componentId:"sc-13zlbee-2"})(["display:flex;gap:8px;align-items:center;"]),p=i(s).attrs({variant:"body-s-medium"}).withConfig({displayName:"styled__LangSwitcherLabel",componentId:"sc-13zlbee-3"})(["width:max-content;"]),m=i(n).withConfig({displayName:"styled__LangSwitcherInput",componentId:"sc-13zlbee-4"})(["min-width:160px;& > *:first-child{background:",";}"],({theme:i})=>i.colors.grayScale.gray7),x=i(e).attrs({variant:"text"}).withConfig({displayName:"styled__LangSwitcherButton",componentId:"sc-13zlbee-5"})(["white-space:nowrap;"]),j=i(t).withConfig({displayName:"styled__LangSwitcherIcon",componentId:"sc-13zlbee-6"})(["pointer-events:none;transition:transform 0.2s ease-in-out;transform:",";"],({$open:i})=>i?"rotateZ(-180deg)":"rotateZ(0)");export{x as LangSwitcherButton,j as LangSwitcherIcon,m as LangSwitcherInput,d as LangSwitcherItem,p as LangSwitcherLabel,c as LangSwitcherList,r as LangSwitcherStyled};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as i,jsx as o,Fragment as n}from"react/jsx-runtime";import{useState as s,useRef as e,useMemo as t,useCallback as r,useEffect as c}from"react";import{useTransition as d,easings as m}from"@react-spring/web";import{MenuDotIcon as p}from"../../../icons/menu-dot/index.js";import{UpdateIcon as x}from"../../../icons/update/index.js";import{ResendIcon as a}from"../../../icons/resend/index.js";import{EditIcon as l}from"../../../icons/edit/index.js";import{TrashIcon as j}from"../../../icons/trash/index.js";import{ThumbDownIcon as u}from"../../../icons/thumb-down/index.js";import{CheckSmallIcon as g}from"../../../icons/check-small/index.js";import{CloseIcon as b}from"../../../icons/close/index.js";import{CopyIcon as h}from"../../../icons/copy/index.js";import{DownloadImgIcon as f}from"../../../icons/download-img/index.js";import{MessageActionsStyled as w,MessageActionsMenuStyled as y,MessageActionsMenuModal as k,MessageActionsMenuModalOptionContent as v,MessageActionsButtonText as C,MessageEditButtonsStyled as T}from"./styled.js";import{MenuOption as L}from"./menu-option/index.js";import{CopyButton as z}from"./copy-button/index.js";import{ActionButton as E}from"./action-button/index.js";import"../list/styled.js";import{useScrollbarRef as R}from"../list/context.js";import"../scroll-button/styled.js";import"tslib";import{IconProvider as q}from"../../icon/context.js";import"../../icon/styled.js";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"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import{colorToRgba as M}from"../../../utils/colors/colorToRgba.js";import"../../../utils/colors/calculateGrayScale.js";import"../../../utils/colors/calculateAccentColors.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/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"../../../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{ShieldIcon as D}from"../../../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/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{useTheme as S}from"../../../theme/hook.js";const $=({id:$,disableModal:B,message:O,variant:P="user",skeleton:U,disableResend:A,disableEdit:G,disableDelete:X,disableUpdate:Y,disableCopy:_,disableDownload:F,disableEncryption:H,editOutOfMenu:I,editText:J,copyTgText:K,copyPlainText:N,resendText:Q,deleteText:V,onReportText:W,downloadTooltipLabel:Z,submitEditTooltipLabel:ii,discardEditTooltipLabel:oi,encryptionTooltipLabel:ni,updateTooltipLabel:si,copyTooltipLabel:ei,editing:ti,editedText:ri,onEditing:ci,onEditedText:di,onEdit:mi,onResend:pi,onDelete:xi,onUpdate:ai,onReport:li,onPlainTextCopy:ji,onTgCopy:ui,onCopy:gi,onDownload:bi})=>{const hi=S(),[fi,wi]=s(!1),[yi,ki]=s(),[vi,Ci]=s(!1),[Ti,Li]=s(!1),zi=e(null),Ei=e(null),Ri=R(),qi=t(()=>"custom"===hi.scheme?M(hi.colors.custom.icon,.75):"standard"===hi.scheme||"light"===hi.mode?hi.colors.grayScale.gray1:hi.colors.accent.primary,[hi]),Mi=t(()=>{if(U)return!1;switch(P){case"assistant":return!G;case"user":return!B&&(!G||!X||!A)}},[G,X,A]),Di=()=>{var i;const o=null===(i=null==Ri?void 0:Ri.current)||void 0===i?void 0:i.element,n=null==zi?void 0:zi.current;if(!o||!n)return;const s=o.getBoundingClientRect(),e=n.getBoundingClientRect();Li(s.bottom-e.bottom<=300),Ci("assistant"===P&&e.left-s.left<=160||"user"===P&&s.right-e.right<=160)},Si=r(()=>{yi&&window.clearTimeout(yi),Di(),wi(!0)},[yi]),$i=r(()=>{ki(window.setTimeout(()=>wi(!1),300))},[]),Bi=r(()=>{Di(),wi(i=>!i)},[]),Oi=r(i=>{const o={id:$,message:O};switch(i){case"edit":null==ci||ci(!0),null==di||di(null!=O?O:"");break;case"delete":null==xi||xi(o);break;case"resend":null==pi||pi(o)}wi(!1)},[$,O]),Pi=r(({id:i,message:o})=>{null==ci||ci(!1),null==mi||mi({id:i,message:o,variant:P})},[$,O]),Ui=r(()=>{null==ci||ci(!1),null==di||di(null!=O?O:"")},[O]),Ai=r(()=>{null==ui||ui(),wi(!1)},[]),Gi=r(()=>{null==ji||ji(),wi(!1)},[]),Xi=r(()=>{null==li||li({id:$,message:O}),wi(!1)},[$,O]),Yi=d(fi,{from:{opacity:0,y:5},enter:{opacity:1,y:0},leave:{opacity:0,y:0},config:{duration:250,easing:m.easeOutSine}});return c(()=>{const i=()=>{wi(!1)};return window.addEventListener("scroll",i,!0),()=>{window.removeEventListener("scroll",i,!0)}},[fi]),c(()=>{yi&&window.clearTimeout(yi)},[]),i(w,{$variant:P,ref:zi,children:[ti?i(T,{children:[o(E,{id:$,message:ri,tooltipLabel:ii,onClick:Pi,children:o(g,{size:20,fill:hi.colors.accent.primary})}),o(E,{tooltipLabel:oi,onClick:Ui,children:o(b,{size:14,fill:hi.colors.grayScale.gray2})})]}):o(n,{children:i(q,{fill:qi,children:[Mi&&i(y,{ref:Ei,onBlur:()=>{wi(!1)},children:[o(E,{onMouseEnter:"ontouchstart"in window?void 0:Si,onMouseLeave:"ontouchstart"in window?void 0:$i,onClick:Bi,children:o(p,{size:18})}),Yi((n,s)=>s&&i(k,{style:n,onMouseEnter:Si,onMouseLeave:$i,$variant:P,$invertedX:vi,$invertedY:Ti,children:[!_&&N&&ji&&o(L,{onClick:Gi,children:i(v,{children:[o(h,{}),o(C,{children:N})]})}),!_&&K&&ui&&o(L,{onClick:Ai,children:i(v,{children:[o(h,{}),o(C,{children:K})]})}),!A&&"user"===P&&Q&&pi&&o(L,{onClick:()=>{Oi("resend")},children:i(v,{children:[o(a,{}),o(C,{children:Q})]})}),!I&&!G&&J&&mi&&o(L,{onClick:()=>{Oi("edit")},children:i(v,{children:[o(l,{}),o(C,{children:J})]})}),!X&&V&&xi&&o(L,{onClick:()=>{Oi("delete")},children:i(v,{children:[o(j,{}),o(C,{children:V})]})}),!X&&W&&li&&"user"!==P&&o(L,{onClick:Xi,children:i(v,{children:[o(u,{size:18}),o(C,{children:W})]})})]},"message-actions-modal"))]}),!Mi&&!X&&o(E,{id:$,message:O,onClick:xi,tooltipLabel:V,children:o(j,{size:20})}),!Y&&"user"!==P&&o(E,{id:$,message:O,onClick:ai,tooltipLabel:si,children:o(x,{size:18})}),I&&o(E,{id:$,message:O,onClick:()=>{Oi("edit")},tooltipLabel:J,children:o(l,{size:18})}),!_&&o(z,{onCopy:gi,tooltipLabel:ei}),!Mi&&!X&&W&&li&&"user"!==P&&o(E,{tooltipLabel:W,onClick:Xi,children:o(u,{size:18})})]})}),!F&&o(E,{tooltipLabel:Z,onClick:bi,children:o(f,{size:18})}),!H&&o(E,{tooltipLabel:ni,children:o(D,{size:18})})]})};export{$ as MessageActions};
|
|
1
|
+
import{jsxs as i,jsx as o,Fragment as n}from"react/jsx-runtime";import{useState as s,useRef as e,useMemo as t,useCallback as r,useEffect as c}from"react";import{useTransition as d,easings as m}from"@react-spring/web";import{MenuDotIcon as p}from"../../../icons/menu-dot/index.js";import{UpdateIcon as x}from"../../../icons/update/index.js";import{ResendIcon as a}from"../../../icons/resend/index.js";import{EditIcon as l}from"../../../icons/edit/index.js";import{TrashIcon as j}from"../../../icons/trash/index.js";import{ThumbDownIcon as u}from"../../../icons/thumb-down/index.js";import{CheckSmallIcon as g}from"../../../icons/check-small/index.js";import{CloseIcon as b}from"../../../icons/close/index.js";import{CopyIcon as h}from"../../../icons/copy/index.js";import{DownloadImgIcon as f}from"../../../icons/download-img/index.js";import{MessageActionsStyled as w,MessageActionsMenuStyled as y,MessageActionsMenuModal as k,MessageActionsMenuModalOptionContent as v,MessageActionsButtonText as C,MessageEditButtonsStyled as T}from"./styled.js";import{MenuOption as L}from"./menu-option/index.js";import{CopyButton as z}from"./copy-button/index.js";import{ActionButton as E}from"./action-button/index.js";import"../list/styled.js";import{useScrollbarRef as R}from"../list/context.js";import"../scroll-button/styled.js";import"tslib";import{IconProvider as q}from"../../icon/context.js";import"../../icon/styled.js";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"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import{colorToRgba as M}from"../../../utils/colors/colorToRgba.js";import"../../../utils/colors/calculateGrayScale.js";import"../../../utils/colors/calculateAccentColors.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/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"../../../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{ShieldIcon as D}from"../../../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{useTheme as S}from"../../../theme/hook.js";const $=({id:$,disableModal:B,message:O,variant:P="user",skeleton:U,disableResend:A,disableEdit:G,disableDelete:X,disableUpdate:Y,disableCopy:_,disableDownload:F,disableEncryption:H,editOutOfMenu:I,editText:J,copyTgText:K,copyPlainText:N,resendText:Q,deleteText:V,onReportText:W,downloadTooltipLabel:Z,submitEditTooltipLabel:ii,discardEditTooltipLabel:oi,encryptionTooltipLabel:ni,updateTooltipLabel:si,copyTooltipLabel:ei,editing:ti,editedText:ri,onEditing:ci,onEditedText:di,onEdit:mi,onResend:pi,onDelete:xi,onUpdate:ai,onReport:li,onPlainTextCopy:ji,onTgCopy:ui,onCopy:gi,onDownload:bi})=>{const hi=S(),[fi,wi]=s(!1),[yi,ki]=s(),[vi,Ci]=s(!1),[Ti,Li]=s(!1),zi=e(null),Ei=e(null),Ri=R(),qi=t(()=>"custom"===hi.scheme?M(hi.colors.custom.icon,.75):"standard"===hi.scheme||"light"===hi.mode?hi.colors.grayScale.gray1:hi.colors.accent.primary,[hi]),Mi=t(()=>{if(U)return!1;switch(P){case"assistant":return!G;case"user":return!B&&(!G||!X||!A)}},[G,X,A]),Di=()=>{var i;const o=null===(i=null==Ri?void 0:Ri.current)||void 0===i?void 0:i.element,n=null==zi?void 0:zi.current;if(!o||!n)return;const s=o.getBoundingClientRect(),e=n.getBoundingClientRect();Li(s.bottom-e.bottom<=300),Ci("assistant"===P&&e.left-s.left<=160||"user"===P&&s.right-e.right<=160)},Si=r(()=>{yi&&window.clearTimeout(yi),Di(),wi(!0)},[yi]),$i=r(()=>{ki(window.setTimeout(()=>wi(!1),300))},[]),Bi=r(()=>{Di(),wi(i=>!i)},[]),Oi=r(i=>{const o={id:$,message:O};switch(i){case"edit":null==ci||ci(!0),null==di||di(null!=O?O:"");break;case"delete":null==xi||xi(o);break;case"resend":null==pi||pi(o)}wi(!1)},[$,O]),Pi=r(({id:i,message:o})=>{null==ci||ci(!1),null==mi||mi({id:i,message:o,variant:P})},[$,O]),Ui=r(()=>{null==ci||ci(!1),null==di||di(null!=O?O:"")},[O]),Ai=r(()=>{null==ui||ui(),wi(!1)},[]),Gi=r(()=>{null==ji||ji(),wi(!1)},[]),Xi=r(()=>{null==li||li({id:$,message:O}),wi(!1)},[$,O]),Yi=d(fi,{from:{opacity:0,y:5},enter:{opacity:1,y:0},leave:{opacity:0,y:0},config:{duration:250,easing:m.easeOutSine}});return c(()=>{const i=()=>{wi(!1)};return window.addEventListener("scroll",i,!0),()=>{window.removeEventListener("scroll",i,!0)}},[fi]),c(()=>{yi&&window.clearTimeout(yi)},[]),i(w,{$variant:P,ref:zi,children:[ti?i(T,{children:[o(E,{id:$,message:ri,tooltipLabel:ii,onClick:Pi,children:o(g,{size:20,fill:hi.colors.accent.primary})}),o(E,{tooltipLabel:oi,onClick:Ui,children:o(b,{size:14,fill:hi.colors.grayScale.gray2})})]}):o(n,{children:i(q,{fill:qi,children:[Mi&&i(y,{ref:Ei,onBlur:()=>{wi(!1)},children:[o(E,{onMouseEnter:"ontouchstart"in window?void 0:Si,onMouseLeave:"ontouchstart"in window?void 0:$i,onClick:Bi,children:o(p,{size:18})}),Yi((n,s)=>s&&i(k,{style:n,onMouseEnter:Si,onMouseLeave:$i,$variant:P,$invertedX:vi,$invertedY:Ti,children:[!_&&N&&ji&&o(L,{onClick:Gi,children:i(v,{children:[o(h,{}),o(C,{children:N})]})}),!_&&K&&ui&&o(L,{onClick:Ai,children:i(v,{children:[o(h,{}),o(C,{children:K})]})}),!A&&"user"===P&&Q&&pi&&o(L,{onClick:()=>{Oi("resend")},children:i(v,{children:[o(a,{}),o(C,{children:Q})]})}),!I&&!G&&J&&mi&&o(L,{onClick:()=>{Oi("edit")},children:i(v,{children:[o(l,{}),o(C,{children:J})]})}),!X&&V&&xi&&o(L,{onClick:()=>{Oi("delete")},children:i(v,{children:[o(j,{}),o(C,{children:V})]})}),!X&&W&&li&&"user"!==P&&o(L,{onClick:Xi,children:i(v,{children:[o(u,{size:18}),o(C,{children:W})]})})]},"message-actions-modal"))]}),!Mi&&!X&&o(E,{id:$,message:O,onClick:xi,tooltipLabel:V,children:o(j,{size:20})}),!Y&&"user"!==P&&o(E,{id:$,message:O,onClick:ai,tooltipLabel:si,children:o(x,{size:18})}),I&&o(E,{id:$,message:O,onClick:()=>{Oi("edit")},tooltipLabel:J,children:o(l,{size:18})}),!_&&o(z,{onCopy:gi,tooltipLabel:ei}),!Mi&&!X&&W&&li&&"user"!==P&&o(E,{tooltipLabel:W,onClick:Xi,children:o(u,{size:18})})]})}),!F&&o(E,{tooltipLabel:Z,onClick:bi,children:o(f,{size:18})}),!H&&o(E,{tooltipLabel:ni,children:o(D,{size:18})})]})};export{$ as MessageActions};
|
|
@@ -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,useState as t,useCallback as r,useEffect as d}from"react";import{marked as c}from"marked";import{MessageStyledWrapper as p,MessageStyledWithBottomPanel as m,MessageStyled as a,MessageContent as l,MessageTop as x,MessageSender as j,MessageName as g,MessageAvatarWrapper as u,MessageAvatar as b,MessageBlockWrapper as y,MessageBlock as h,MessageBlockScrollbarWrapper as f,MessageBlockContent as w,MessageBlockTextArea as M,MessageBlockBottomPanel as v,MessageBlockTransaction as k,MessageButtonsStyled as T}from"./styled.js";export{MessageAction,MessageEditAction,MessageImageBottomArrowButton,MessageImageLeftArrowButton,MessageImageRightArrowButton,MessageImageTopArrowButton,MessageTag,MessageTags,MessageTransaction}from"./styled.js";import{Skeleton as C}from"../skeleton/index.js";import"../../theme/index.js";import{getTgMarkdown as S}from"../../utils/getTgMarkdown.js";import{colorToRgba as I}from"../../utils/colors/colorToRgba.js";import"../../utils/colors/calculateGrayScale.js";import"../../utils/colors/calculateAccentColors.js";import{MessageProvider as L}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{MessagePre}from"./components/pre/styled.js";export{MessageTableBody,MessageTableContent,MessageTableHead,MessageTableRow,MessageTableStyled}from"./components/table/styled.js";export{MessageTableCellStyled,MessageTableCellText,MessageTableHeadCell}from"./components/table/cell/styled.js";export{MessageListStyled}from"./components/list/styled.js";import"./components/list/context.js";export{MessageListItemStyled}from"./components/list/item/styled.js";export{MessageTitleStyled}from"./components/title/styled.js";export{MessageLinkStyled}from"./components/link/styled.js";export{MessageImageNative,MessageImageSkeleton,MessageImageStyled}from"./components/image/styled.js";export{MessageImageConsumer,MessageImageContext,MessageImageProvider,useMessageImage}from"./components/image/context.js";export{MessageImageGrid}from"./components/image/grid/styled.js";export{MessageImageButtonContent,MessageImageButtonStyled,MessageImageButtonZoneWrapper}from"./components/image/button/styled.js";export{MessageImageButtonsContent,MessageImageButtonsStyled}from"./components/image/button/list/styled.js";import{MessageMarkdown as R}from"./markdown/index.js";import"../scrollbar/styled.js";import{ScrollbarShadow as E}from"../scrollbar/shadow/index.js";import"../scrollbar/style/styled.js";import{MessageTimestamp as $}from"./timestamp/index.js";import{MessageActions as A}from"./actions/index.js";import{MessageVersions as P}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"./video/styled.js";import"../../icons/max-window/index.js";import"../../icons/min-window/index.js";import"../../icons/pause-button/index.js";import"../../icons/play-button/index.js";import"../../icons/volume/index.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/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/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/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/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{useTheme as D}from"../../theme/hook.js";const N=({id:N,content:q,className:z,variant:V="user",color:F="default",name:O,tags:U,avatar:H,transaction:G,disableModal:W=!1,disableResend:Z=!1,disableEdit:_=!1,disableDelete:J=!1,disableUpdate:K=!1,disableCopy:Q=!1,disableDownload:X=!0,disableEncryption:Y=!0,editOutOfMenu:ii=!1,copyPlainText:oi,copyTgText:ei,editText:si,resendText:ni,deleteText:ti,onReportText:ri,downloadTooltipLabel:di,submitEditTooltipLabel:ci,discardEditTooltipLabel:pi,updateTooltipLabel:mi,copyTooltipLabel:ai,encryptionTooltipLabel:li,typing:xi=!1,timestamp:ji,timestampPosition:gi="right",skeleton:ui=!1,buttons:bi,after:yi,components:hi,children:fi,version:wi,totalVersions:Mi,hideActions:vi,onCopy:ki,onCodeCopy:Ti,onEdit:Ci,onResend:Si,onDelete:Ii,onUpdate:Li,onReport:Bi,onNextVersion:Ri,onPrevVersion:Ei,onDownload:$i})=>{const Ai=D(),Pi=n(null),Di=n(null),Ni=n(null),qi=n(null),[zi,Vi]=t(!1),[Fi,Oi]=t(null!=q?q:""),Ui=r(i=>{var o;Oi(null!==(o=i.target.textContent)&&void 0!==o?o:"")},[]),Hi=r(()=>i(void 0,void 0,void 0,function*(){const i=(yield c.parse(Ni.current)).replace(/<p>([\s\S]*?)<\/p>/g,"<pre>$1</pre>");return[new ClipboardItem({"text/plain":new Blob([Ni.current],{type:"text/plain"}),"text/html":new Blob([i],{type:"text/html"})})]}),[]),Gi=r(i=>[new ClipboardItem({"text/plain":new Blob([i.innerText.replace(/\n{3,}/g,"\n\n")],{type:"text/plain"})})],[]),Wi=r(i=>{const o=S(i);return[new ClipboardItem({"text/plain":new Blob([o],{type:"text/plain"})})]},[]),Zi=r(()=>{if(Di.current)return null==ki?void 0:ki(Gi(Di.current))},[q]),_i=r(()=>{if(Ni.current)return null==ki?void 0:ki(Wi(Ni.current))},[]),Ji=r(()=>i(void 0,void 0,void 0,function*(){if(Ni.current)return null==ki?void 0:ki(yield Hi())}),[]);let Ki;switch(F&&"object"==typeof CSS&&"function"==typeof CSS.supports&&CSS.supports("background",null!=F?F:"#000")||(F="default"),V){case"user":switch(F){case"default":if("custom"===Ai.scheme){Ki=Ai.colors.custom.message.user.background;break}if("standard"===Ai.scheme){Ki="dark"===Ai.mode?I(Ai.colors.accent.primaryLight,.5):I(Ai.colors.accent.primaryLight,.2);break}Ki=Ai.colors.accent.primary;break;case"green":Ki=Ai.colors.gpt3;break;case"purple":Ki=Ai.colors.gpt4;break;default:Ki=F}break;case"assistant":switch(F){case"default":Ki="dark"===Ai.mode?Ai.colors.grayScale.gray2:Ai.colors.grayScale.gray3;break;case"green":Ki=Ai.colors.gpt3;break;case"purple":Ki=Ai.colors.gpt4;break;default:Ki=F}}return d(()=>{if(qi.current){qi.current.focus();const i=document.createRange(),o=window.getSelection();i.selectNodeContents(qi.current),i.collapse(!1),null==o||o.removeAllRanges(),null==o||o.addRange(i)}},[qi,zi]),d(()=>{q&&(Ni.current=q)},[q]),o(L,{variant:V,color:F,typing:xi,onCopy:Zi,onCodeCopy:Ti,children:o(p,{$variant:V,ref:Pi,children:e(m,{children:[o(a,{$variant:V,className:z,"data-date":ji,children:e(l,{$variant:V,children:[O&&e(x,{children:["string"==typeof O&&e(j,{children:[o(g,{$color:F,children:O}),U]}),"string"!=typeof O&&o("div",{})]}),"string"!=typeof O&&O,o(u,{$variant:V,children:o(b,{children:H})}),o(y,{children:o(h,{$variant:V,$hexColor:Ki,$skeleton:ui,$hasTimestamp:!!ji,$timestampPosition:gi,children:e(f,{scrollShadows:{color:Ki,size:60,left:o(E,{side:"left"}),right:o(E,{side:"right"})},children:[o(w,{ref:Di,$variant:V,children:zi?o(B,{disableMargin:!0,children:o(M,{onInput:Ui,ref:qi,children:q})}):e(s,{children:[!ui&&e(s,{children:["string"==typeof fi&&o(R,{components:hi,children:fi}),"string"!=typeof fi&&fi]}),ui&&o(B,{disableMargin:!0,children:o(C,{width:260,opacity:["light"===Ai.mode?.1:.15,"light"===Ai.mode?.225:.45],colors:["user"===V?Ai.colors.base.white:"light"===Ai.mode?Ai.default.colors.base.black:Ai.colors.grayScale.gray6]})}),yi]})}),ji&&"user"===V&&o($,{time:ji,position:gi,color:Ki})]})})}),ji&&"assistant"===V&&o($,{time:ji,position:gi,color:Ki}),e(v,{$variant:V,children:[G&&o(k,{children:G}),!ui&&!vi&&o(A,{id:N,onDownload:$i,disableDownload:X,message:q,variant:V,skeleton:ui,disableModal:W,disableResend:Z,disableEdit:_,disableDelete:J,disableUpdate:K,disableCopy:Q,disableEncryption:Y,editOutOfMenu:ii,copyPlainText:oi,copyTgText:ei,editText:si,resendText:ni,deleteText:ti,onReportText:ri,downloadTooltipLabel:di,submitEditTooltipLabel:ci,discardEditTooltipLabel:pi,updateTooltipLabel:mi,copyTooltipLabel:ai,encryptionTooltipLabel:li,editing:zi,editedText:Fi,onEditing:Vi,onEditedText:Oi,onEdit:Ci,onResend:Si,onDelete:Ii,onUpdate:Li,onReport:Bi,onPlainTextCopy:Zi,onTgCopy:_i,onCopy:Ji}),o(P,{id:N,version:wi,totalVersions:Mi,onNextVersion:Ri,onPrevVersion:Ei,editing:zi,variant:V})]})]})}),o(T,{children:bi})]})})})};export{N as Message,b as MessageAvatar,u as MessageAvatarWrapper,h as MessageBlock,v as MessageBlockBottomPanel,w as MessageBlockContent,f as MessageBlockScrollbarWrapper,M as MessageBlockTextArea,k as MessageBlockTransaction,y as MessageBlockWrapper,T as MessageButtonsStyled,l as MessageContent,R as MessageMarkdown,g as MessageName,B as MessageParagraph,L as MessageProvider,j as MessageSender,a as MessageStyled,m as MessageStyledWithBottomPanel,p as MessageStyledWrapper,x 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,useState as t,useCallback as r,useEffect as d}from"react";import{marked as c}from"marked";import{MessageStyledWrapper as p,MessageStyledWithBottomPanel as m,MessageStyled as a,MessageContent as l,MessageTop as x,MessageSender as j,MessageName as g,MessageAvatarWrapper as u,MessageAvatar as b,MessageBlockWrapper as y,MessageBlock as f,MessageBlockScrollbarWrapper as h,MessageBlockContent as w,MessageBlockTextArea as M,MessageBlockBottomPanel as v,MessageBlockTransaction as k,MessageButtonsStyled as T}from"./styled.js";export{MessageAction,MessageEditAction,MessageImageBottomArrowButton,MessageImageLeftArrowButton,MessageImageRightArrowButton,MessageImageTopArrowButton,MessageTag,MessageTags,MessageTransaction}from"./styled.js";import{Skeleton as C}from"../skeleton/index.js";import"../../theme/index.js";import{getTgMarkdown as S}from"../../utils/getTgMarkdown.js";import{colorToRgba as I}from"../../utils/colors/colorToRgba.js";import"../../utils/colors/calculateGrayScale.js";import"../../utils/colors/calculateAccentColors.js";import{MessageProvider as L}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{MessagePre}from"./components/pre/styled.js";export{MessageTableBody,MessageTableContent,MessageTableHead,MessageTableRow,MessageTableStyled}from"./components/table/styled.js";export{MessageTableCellStyled,MessageTableCellText,MessageTableHeadCell}from"./components/table/cell/styled.js";export{MessageListStyled}from"./components/list/styled.js";import"./components/list/context.js";export{MessageListItemStyled}from"./components/list/item/styled.js";export{MessageTitleStyled}from"./components/title/styled.js";export{MessageLinkStyled}from"./components/link/styled.js";export{MessageImageNative,MessageImageSkeleton,MessageImageStyled}from"./components/image/styled.js";export{MessageImageConsumer,MessageImageContext,MessageImageProvider,useMessageImage}from"./components/image/context.js";export{MessageImageGrid}from"./components/image/grid/styled.js";export{MessageImageButtonContent,MessageImageButtonStyled,MessageImageButtonZoneWrapper}from"./components/image/button/styled.js";export{MessageImageButtonsContent,MessageImageButtonsStyled}from"./components/image/button/list/styled.js";import{MessageMarkdown as R}from"./markdown/index.js";import"../scrollbar/styled.js";import{ScrollbarShadow as E}from"../scrollbar/shadow/index.js";import"../scrollbar/style/styled.js";import{MessageTimestamp as $}from"./timestamp/index.js";import{MessageActions as A}from"./actions/index.js";import{MessageVersions as P}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"./video/styled.js";import"../../icons/max-window/index.js";import"../../icons/min-window/index.js";import"../../icons/pause-button/index.js";import"../../icons/play-button/index.js";import"../../icons/volume/index.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/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/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/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{useTheme as D}from"../../theme/hook.js";const N=({id:N,content:q,className:z,variant:V="user",color:F="default",name:O,tags:U,avatar:H,transaction:G,disableModal:W=!1,disableResend:Z=!1,disableEdit:_=!1,disableDelete:J=!1,disableUpdate:K=!1,disableCopy:Q=!1,disableDownload:X=!0,disableEncryption:Y=!0,editOutOfMenu:ii=!1,copyPlainText:oi,copyTgText:ei,editText:si,resendText:ni,deleteText:ti,onReportText:ri,downloadTooltipLabel:di,submitEditTooltipLabel:ci,discardEditTooltipLabel:pi,updateTooltipLabel:mi,copyTooltipLabel:ai,encryptionTooltipLabel:li,typing:xi=!1,timestamp:ji,timestampPosition:gi="right",skeleton:ui=!1,buttons:bi,after:yi,components:fi,children:hi,version:wi,totalVersions:Mi,hideActions:vi,onCopy:ki,onCodeCopy:Ti,onEdit:Ci,onResend:Si,onDelete:Ii,onUpdate:Li,onReport:Bi,onNextVersion:Ri,onPrevVersion:Ei,onDownload:$i})=>{const Ai=D(),Pi=n(null),Di=n(null),Ni=n(null),qi=n(null),[zi,Vi]=t(!1),[Fi,Oi]=t(null!=q?q:""),Ui=r(i=>{var o;Oi(null!==(o=i.target.textContent)&&void 0!==o?o:"")},[]),Hi=r(()=>i(void 0,void 0,void 0,function*(){const i=(yield c.parse(Ni.current)).replace(/<p>([\s\S]*?)<\/p>/g,"<pre>$1</pre>");return[new ClipboardItem({"text/plain":new Blob([Ni.current],{type:"text/plain"}),"text/html":new Blob([i],{type:"text/html"})})]}),[]),Gi=r(i=>[new ClipboardItem({"text/plain":new Blob([i.innerText.replace(/\n{3,}/g,"\n\n")],{type:"text/plain"})})],[]),Wi=r(i=>{const o=S(i);return[new ClipboardItem({"text/plain":new Blob([o],{type:"text/plain"})})]},[]),Zi=r(()=>{if(Di.current)return null==ki?void 0:ki(Gi(Di.current))},[q]),_i=r(()=>{if(Ni.current)return null==ki?void 0:ki(Wi(Ni.current))},[]),Ji=r(()=>i(void 0,void 0,void 0,function*(){if(Ni.current)return null==ki?void 0:ki(yield Hi())}),[]);let Ki;switch(F&&"object"==typeof CSS&&"function"==typeof CSS.supports&&CSS.supports("background",null!=F?F:"#000")||(F="default"),V){case"user":switch(F){case"default":if("custom"===Ai.scheme){Ki=Ai.colors.custom.message.user.background;break}if("standard"===Ai.scheme){Ki="dark"===Ai.mode?I(Ai.colors.accent.primaryLight,.5):I(Ai.colors.accent.primaryLight,.2);break}Ki=Ai.colors.accent.primary;break;case"green":Ki=Ai.colors.gpt3;break;case"purple":Ki=Ai.colors.gpt4;break;default:Ki=F}break;case"assistant":switch(F){case"default":Ki="dark"===Ai.mode?Ai.colors.grayScale.gray2:Ai.colors.grayScale.gray3;break;case"green":Ki=Ai.colors.gpt3;break;case"purple":Ki=Ai.colors.gpt4;break;default:Ki=F}}return d(()=>{if(qi.current){qi.current.focus();const i=document.createRange(),o=window.getSelection();i.selectNodeContents(qi.current),i.collapse(!1),null==o||o.removeAllRanges(),null==o||o.addRange(i)}},[qi,zi]),d(()=>{q&&(Ni.current=q)},[q]),o(L,{variant:V,color:F,typing:xi,onCopy:Zi,onCodeCopy:Ti,children:o(p,{$variant:V,ref:Pi,children:e(m,{children:[o(a,{$variant:V,className:z,"data-date":ji,children:e(l,{$variant:V,children:[O&&e(x,{children:["string"==typeof O&&e(j,{children:[o(g,{$color:F,children:O}),U]}),"string"!=typeof O&&o("div",{})]}),"string"!=typeof O&&O,o(u,{$variant:V,children:o(b,{children:H})}),o(y,{children:o(f,{$variant:V,$hexColor:Ki,$skeleton:ui,$hasTimestamp:!!ji,$timestampPosition:gi,children:e(h,{scrollShadows:{color:Ki,size:60,left:o(E,{side:"left"}),right:o(E,{side:"right"})},children:[o(w,{ref:Di,$variant:V,children:zi?o(B,{disableMargin:!0,children:o(M,{onInput:Ui,ref:qi,children:q})}):e(s,{children:[!ui&&e(s,{children:["string"==typeof hi&&o(R,{components:fi,children:hi}),"string"!=typeof hi&&hi]}),ui&&o(B,{disableMargin:!0,children:o(C,{width:260,opacity:["light"===Ai.mode?.1:.15,"light"===Ai.mode?.225:.45],colors:["user"===V?Ai.colors.base.white:"light"===Ai.mode?Ai.default.colors.base.black:Ai.colors.grayScale.gray6]})}),yi]})}),ji&&"user"===V&&o($,{time:ji,position:gi,color:Ki})]})})}),ji&&"assistant"===V&&o($,{time:ji,position:gi,color:Ki}),e(v,{$variant:V,children:[G&&o(k,{children:G}),!ui&&!vi&&o(A,{id:N,onDownload:$i,disableDownload:X,message:q,variant:V,skeleton:ui,disableModal:W,disableResend:Z,disableEdit:_,disableDelete:J,disableUpdate:K,disableCopy:Q,disableEncryption:Y,editOutOfMenu:ii,copyPlainText:oi,copyTgText:ei,editText:si,resendText:ni,deleteText:ti,onReportText:ri,downloadTooltipLabel:di,submitEditTooltipLabel:ci,discardEditTooltipLabel:pi,updateTooltipLabel:mi,copyTooltipLabel:ai,encryptionTooltipLabel:li,editing:zi,editedText:Fi,onEditing:Vi,onEditedText:Oi,onEdit:Ci,onResend:Si,onDelete:Ii,onUpdate:Li,onReport:Bi,onPlainTextCopy:Zi,onTgCopy:_i,onCopy:Ji}),o(P,{id:N,version:wi,totalVersions:Mi,onNextVersion:Ri,onPrevVersion:Ei,editing:zi,variant:V})]})]})}),o(T,{children:bi})]})})})};export{N as Message,b as MessageAvatar,u as MessageAvatarWrapper,f as MessageBlock,v as MessageBlockBottomPanel,w as MessageBlockContent,h as MessageBlockScrollbarWrapper,M as MessageBlockTextArea,k as MessageBlockTransaction,y as MessageBlockWrapper,T as MessageButtonsStyled,l as MessageContent,R as MessageMarkdown,g as MessageName,B as MessageParagraph,L as MessageProvider,j as MessageSender,a as MessageStyled,m as MessageStyledWithBottomPanel,p as MessageStyledWrapper,x as MessageTop};
|