| import React from 'react'; | |
| interface IconProps { | |
| className?: string; | |
| } | |
| const SentimentAnalysisIcon: React.FC<IconProps> = ({ className = '' }) => { | |
| return ( | |
| <svg | |
| xmlns="http://www.w3.org/2000/svg" | |
| viewBox="0 0 220 100" | |
| className={`w-full h-auto max-h-28 ${className}`} | |
| > | |
| <rect x="0" y="0" width="220" height="100" fill="#fbbf24" rx="10" ry="10" /> | |
| {/* Input text */} | |
| <rect x="15" y="10" width="80" height="80" fill="#fffbeb" stroke="#fff" strokeWidth="1" rx="5" ry="5" /> | |
| <text x="20" y="35" fill="#92400e" fontSize="10" fontWeight="bold">Great product!</text> | |
| <text x="20" y="50" fill="#92400e" fontSize="10" fontWeight="bold">Highly</text> | |
| <text x="20" y="65" fill="#92400e" fontSize="10" fontWeight="bold">recommended.</text> | |
| {/* Arrow */} | |
| <line x1="105" y1="50" x2="115" y2="50" stroke="#fff" strokeWidth="3" /> | |
| <polygon points="115,45 122,50 115,55" fill="#fff" /> | |
| {/* Sentiment analysis result */} | |
| <rect x="125" y="10" width="80" height="80" fill="#fffbeb" stroke="#fff" strokeWidth="1" rx="5" ry="5" /> | |
| {/* Sentiment gauge background */} | |
| <rect x="135" y="30" width="60" height="20" fill="#e5e7eb" rx="10" ry="10" /> | |
| {/* Sentiment gauge fill (80% positive) */} | |
| <rect x="135" y="30" width="48" height="20" fill="#4ade80" rx="10" ry="10" /> | |
| {/* Sentiment score text */} | |
| <text x="165" y="70" fill="#4ade80" fontSize="14" fontWeight="bold" textAnchor="middle">80%</text> | |
| <text x="165" y="85" fill="#92400e" fontSize="10" textAnchor="middle">Positive</text> | |
| </svg> | |
| ); | |
| }; | |
| export default SentimentAnalysisIcon; |