@bothub-chat/ui
Version:
Bothub UI Components
63 lines (62 loc) • 4.67 kB
JavaScript
import{styled as t,css as o,keyframes as i}from"styled-components";import s from"react";import"tslib";import"react/jsx-runtime";import{MessageInlineCodeStyled as l}from"../components/code/inline/styled.js";import"../context.js";import{MessageMultilineCodeStyled as e}from"../components/code/multiline/styled.js";import"@react-spring/web";import"react-markdown";import"react-dom";import"../../portal/styled.js";import"../../tooltip/styled.js";import"../../tooltip/arrow/styled.js";import"../../../theme/index.js";import"../../tooltip/context.js";import"../components/code/multiline/copy/styled.js";import"../../../icons/check-small/index.js";import"../../../icons/copy/index.js";import{MessageMultilineCodeContentContainer as m,MessageMultilineCodeLastLine as c}from"../components/code/multiline/content/styled.js";import{MessageParagraphStyled as r}from"../components/paragraph/styled.js";import{MessageBoldStyled as n}from"../components/bold/styled.js";import{MessageItalicStyled as p}from"../components/italic/styled.js";import{MessageStrikeStyled as a}from"../components/strike/styled.js";import{MessageBlockquoteStyled as d}from"../components/blockquote/styled.js";import"../components/hr/styled.js";import{MessagePre as h}from"../components/pre/styled.js";import{MessageTableStyled as y,MessageTableRow as j}from"../components/table/styled.js";import{MessageTableCellStyled as f}from"../components/table/cell/styled.js";import{MessageListStyled as g}from"../components/list/styled.js";import"../components/list/context.js";import{MessageListItemStyled as u}from"../components/list/item/styled.js";import{MessageTitleStyled as x}from"../components/title/styled.js";import{MessageLinkStyled as $}from"../components/link/styled.js";import"../components/image/styled.js";import"../components/image/context.js";import"../components/image/grid/styled.js";import"../components/image/button/styled.js";import"../components/image/button/list/styled.js";import"../components/document-copy/styled.js";import"unified";import"remark-parse";import"remark-gfm";import"mdast-util-to-markdown";import"../../../utils/colors/calculateGrayScale.js";import"../../../utils/colors/calculateAccentColors.js";import"../components/cite/styled.js";const b=t.div.withConfig({displayName:"styled__MessageMarkdownStyled",componentId:"sc-8jnypu-0"})(["display:flex;flex-direction:column;align-items:flex-start;gap:10px;width:100%;"]),w=s.memo(t.div.withConfig({displayName:"styled__MessageMarkdownLine",componentId:"sc-8jnypu-1"})(["display:block;width:100%;color:",";font-weight:400;font-size:16px;line-height:22px;> *:first-child{margin-top:0px;}> *:last-child{margin-bottom:0px;}> ",":first-child{> ","{margin-top:0px;}}> ",":last-child{> ","{margin-bottom:0px;}}",""],({theme:t})=>"custom"===t.scheme?t.colors.custom.message.assistant.text:"dark"===t.mode?t.colors.base.white:"#a1a19a",h,e,h,e,({$typing:t,$color:i,theme:s})=>t&&o`
&:last-child
> ${r}:last-child,
&:last-child
> ${n}:last-child,
&:last-child
> ${p}:last-child,
&:last-child
> ${a}:last-child,
&:last-child
> ${d}:last-child,
&:last-child
> ${l}:last-child,
&:last-child
> ${h}:last-child
> ${e}:last-child
${m}
${c}:last-child,
&:last-child
> ${h}:last-child
> ${e}:last-child
${m}
pre
code:last-child,
&:last-child
> ${y}
*:last-child
> ${j}:last-child
> ${f}:last-child,
&:last-child
> ${g}:last-child
> ${u}:last-child,
&:last-child
> ${x}:last-child,
&:last-child
> ${$}:last-child {
&:after {
display: inline-flex;
width: calc(var(--bothub-typing-cursor-size, 21px) / 3.5);
height: var(--bothub-typing-cursor-size, 21px);
border-radius: calc(var(--bothub-typing-cursor-size, 21px) / 7);
flex-shrink: 0;
background: ${"default"!==i?s.default.colors.base.white:s.colors.base.white};
vertical-align: text-top;
animation: ${k} 0.9s infinite;
content: '';
@media (max-width: ${({theme:t})=>t.tablet.maxWidth}) {
height: 17px;
}
}
}
`),(t,o)=>t.children===o.children&&t.$typing===o.$typing&&t.$color===o.$color),k=i`
from {
opacity: 0.75;
}
50% {
opacity: 0;
}
to {
opacity: 0.75;
}
`;export{w as MessageMarkdownLine,b as MessageMarkdownStyled,k as messageTextCursorOpacity};