chatbot-template/components/ui/nextchat-logo.tsx

86 lines
2.6 KiB
TypeScript
Raw Normal View History

2023-06-02 15:33:48 -04:00
import { useId } from 'react'
2023-05-22 13:24:09 +02:00
2023-05-23 16:49:07 +02:00
export function NextChatLogo(
2023-06-02 15:33:48 -04:00
props: JSX.IntrinsicElements['svg'] & { inverted?: boolean }
2023-05-23 16:49:07 +02:00
) {
2023-06-02 15:33:48 -04:00
const id = useId()
2023-05-19 16:06:02 -04:00
return (
<svg
width={17}
height={17}
viewBox="0 0 17 17"
fill="none"
xmlns="http://www.w3.org/2000/svg"
{...props}
>
2023-05-22 13:24:09 +02:00
<defs>
<linearGradient
id={`gradient-${id}-1`}
x1="10.6889"
y1="10.3556"
x2="13.8445"
y2="14.2667"
gradientUnits="userSpaceOnUse"
>
2023-06-02 15:33:48 -04:00
<stop stopColor={props.inverted ? 'white' : 'black'} />
2023-05-23 16:49:07 +02:00
<stop
offset={1}
2023-06-02 15:33:48 -04:00
stopColor={props.inverted ? 'white' : 'black'}
2023-05-23 16:49:07 +02:00
stopOpacity={0}
/>
2023-05-22 13:24:09 +02:00
</linearGradient>
<linearGradient
id={`gradient-${id}-2`}
x1="11.7555"
y1="4.8"
x2="11.7376"
y2="9.50002"
gradientUnits="userSpaceOnUse"
>
2023-06-02 15:33:48 -04:00
<stop stopColor={props.inverted ? 'white' : 'black'} />
2023-05-23 16:49:07 +02:00
<stop
offset={1}
2023-06-02 15:33:48 -04:00
stopColor={props.inverted ? 'white' : 'black'}
2023-05-23 16:49:07 +02:00
stopOpacity={0}
/>
2023-05-22 13:24:09 +02:00
</linearGradient>
</defs>
2023-05-19 16:06:02 -04:00
<path
d="M1 16L2.58314 11.2506C1.83084 9.74642 1.63835 8.02363 2.04013 6.39052C2.4419 4.75741 3.41171 3.32057 4.776 2.33712C6.1403 1.35367 7.81003 0.887808 9.4864 1.02289C11.1628 1.15798 12.7364 1.8852 13.9256 3.07442C15.1148 4.26363 15.842 5.83723 15.9771 7.5136C16.1122 9.18997 15.6463 10.8597 14.6629 12.224C13.6794 13.5883 12.2426 14.5581 10.6095 14.9599C8.97637 15.3616 7.25358 15.1692 5.74942 14.4169L1 16Z"
2023-06-02 15:33:48 -04:00
fill={props.inverted ? 'black' : 'white'}
stroke={props.inverted ? 'black' : 'white'}
2023-05-19 16:06:02 -04:00
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
/>
<mask
id="mask0_91_2047"
2023-06-02 15:33:48 -04:00
style={{ maskType: 'alpha' }}
2023-05-19 16:06:02 -04:00
maskUnits="userSpaceOnUse"
x={1}
y={0}
width={16}
height={16}
>
2023-06-02 15:33:48 -04:00
<circle cx={9} cy={8} r={8} fill={props.inverted ? 'black' : 'white'} />
2023-05-19 16:06:02 -04:00
</mask>
<g mask="url(#mask0_91_2047)">
2023-06-02 15:33:48 -04:00
<circle cx={9} cy={8} r={8} fill={props.inverted ? 'black' : 'white'} />
2023-05-19 16:06:02 -04:00
<path
d="M14.2896 14.0018L7.146 4.8H5.80005V11.1973H6.87681V6.16743L13.4444 14.6529C13.7407 14.4545 14.0231 14.2369 14.2896 14.0018Z"
2023-05-22 13:24:09 +02:00
fill={`url(#gradient-${id}-1)`}
2023-05-19 16:06:02 -04:00
/>
<rect
x="11.2222"
y="4.8"
width="1.06667"
height="6.4"
2023-05-22 13:24:09 +02:00
fill={`url(#gradient-${id}-2)`}
2023-05-19 16:06:02 -04:00
/>
</g>
</svg>
2023-06-02 15:33:48 -04:00
)
2023-05-19 16:06:02 -04:00
}
2023-06-02 15:33:48 -04:00
NextChatLogo.displayName = 'DevGPT-logo'