| | |
| | | |
| | | type Props = { |
| | | className?: string |
| | | title: React.JSX.Element | string |
| | | headerRight?: React.JSX.Element |
| | | children: React.JSX.Element |
| | | title: JSX.Element | string |
| | | headerRight?: JSX.Element |
| | | children: JSX.Element |
| | | minHeight?: number |
| | | value: string |
| | | isFocus: boolean |
| | |
| | | }[] |
| | | showFileList?: boolean |
| | | showCodeGenerator?: boolean |
| | | tip?: React.JSX.Element |
| | | tip?: JSX.Element |
| | | } |
| | | |
| | | const Base: FC<Props> = ({ |
| | |
| | | |
| | | return ( |
| | | <Wrap className={cn(wrapClassName)} style={wrapStyle} isInNode={isInNode} isExpand={isExpand}> |
| | | <div ref={ref} className={cn(className, isExpand && 'h-full', 'rounded-lg border', isFocus ? 'border-transparent bg-components-input-bg-normal' : 'overflow-hidden border-components-input-border-hover bg-components-input-bg-hover')}> |
| | | <div className='flex h-7 items-center justify-between pl-3 pr-2 pt-1'> |
| | | <div ref={ref} className={cn(className, isExpand && 'h-full', 'rounded-lg border', isFocus ? 'bg-components-input-bg-normal border-transparent' : 'bg-components-input-bg-hover border-components-input-border-hover overflow-hidden')}> |
| | | <div className='flex justify-between items-center h-7 pt-1 pl-3 pr-2'> |
| | | <div className='system-xs-semibold-uppercase text-text-secondary'>{title}</div> |
| | | <div className='flex items-center' onClick={(e) => { |
| | | e.nativeEvent.stopImmediatePropagation() |
| | |
| | | {headerRight} |
| | | {showCodeGenerator && codeLanguages && ( |
| | | <div className='ml-1'> |
| | | <CodeGeneratorButton onGenerated={onGenerated} codeLanguages={codeLanguages} /> |
| | | <CodeGeneratorButton onGenerated={onGenerated} codeLanguages={codeLanguages}/> |
| | | </div> |
| | | )} |
| | | {!isCopied |
| | | ? ( |
| | | <Clipboard className='mx-1 h-3.5 w-3.5 cursor-pointer text-text-tertiary' onClick={handleCopy} /> |
| | | <Clipboard className='mx-1 w-3.5 h-3.5 text-text-tertiary cursor-pointer' onClick={handleCopy} /> |
| | | ) |
| | | : ( |
| | | <ClipboardCheck className='mx-1 h-3.5 w-3.5 text-text-tertiary' /> |
| | | <ClipboardCheck className='mx-1 w-3.5 h-3.5 text-text-tertiary' /> |
| | | ) |
| | | } |
| | | |
| | |
| | | onHeightChange={setEditorContentHeight} |
| | | hideResize={isExpand} |
| | | > |
| | | <div className='h-full pb-2 pl-2'> |
| | | <div className='h-full pb-2'> |
| | | {children} |
| | | </div> |
| | | </PromptEditorHeightResizeWrap> |