cfahlgren1 HF staff commited on
Commit
80fe4eb
·
1 Parent(s): d5fd068

fix arrows

Browse files
lib/icons/ClassificationIcon.tsx CHANGED
@@ -10,30 +10,30 @@ const ClassificationIcon: React.FC<ClassificationIconProps> = ({ className = ''
10
  <rect x="0" y="0" width="220" height="100" fill="#a855f7" rx="10" ry="10" />
11
 
12
  {/* Input */}
13
- <rect x="10" y="10" width="80" height="80" fill="#faf5ff" stroke="#fff" strokeWidth="1" rx="5" ry="5" />
14
- <text x="15" y="30" fill="#7e22ce" fontSize="12" fontWeight="bold">Inputs</text>
15
- <text x="15" y="50" fill="#7e22ce" fontSize="10" fontWeight="bold">Basketball</text>
16
 
17
  {/* Arrow */}
18
- <line x1="95" y1="50" x2="115" y2="50" stroke="#fff" strokeWidth="2" />
19
- <polygon points="115,46 123,50 115,54" fill="#fff" />
20
 
21
  {/* Output */}
22
- <rect x="120" y="10" width="90" height="80" fill="#faf5ff" stroke="#fff" strokeWidth="1" rx="5" ry="5" />
23
- <text x="125" y="25" fill="#7e22ce" fontSize="12" fontWeight="bold">Output</text>
24
 
25
  {/* Classification bars */}
26
- <rect x="125" y="35" width="75" height="14" fill="#d8b4fe" rx="3" ry="3" />
27
- <text x="130" y="45" fill="#6b21a8" fontSize="10" fontWeight="bold">Sport</text>
28
- <text x="193" y="45" fill="#6b21a8" fontSize="10" textAnchor="end">0.800</text>
29
 
30
- <rect x="125" y="53" width="30" height="14" fill="#d8b4fe" rx="3" ry="3" />
31
- <text x="130" y="63" fill="#6b21a8" fontSize="10" fontWeight="bold">Food</text>
32
- <text x="193" y="63" fill="#6b21a8" fontSize="10" textAnchor="end">0.150</text>
33
 
34
- <rect x="125" y="71" width="10" height="14" fill="#d8b4fe" rx="3" ry="3" />
35
- <text x="130" y="81" fill="#6b21a8" fontSize="10" fontWeight="bold">Music</text>
36
- <text x="193" y="81" fill="#6b21a8" fontSize="10" textAnchor="end">0.050</text>
37
  </svg>
38
  );
39
  };
 
10
  <rect x="0" y="0" width="220" height="100" fill="#a855f7" rx="10" ry="10" />
11
 
12
  {/* Input */}
13
+ <rect x="15" y="10" width="80" height="80" fill="#faf5ff" stroke="#fff" strokeWidth="1" rx="5" ry="5" />
14
+ <text x="20" y="30" fill="#7e22ce" fontSize="12" fontWeight="bold">Inputs</text>
15
+ <text x="20" y="50" fill="#7e22ce" fontSize="10" fontWeight="bold">Basketball</text>
16
 
17
  {/* Arrow */}
18
+ <line x1="105" y1="50" x2="115" y2="50" stroke="#fff" strokeWidth="3" />
19
+ <polygon points="115,45 122,50 115,55" fill="#fff" />
20
 
21
  {/* Output */}
22
+ <rect x="125" y="10" width="80" height="80" fill="#faf5ff" stroke="#fff" strokeWidth="1" rx="5" ry="5" />
23
+ <text x="130" y="25" fill="#7e22ce" fontSize="12" fontWeight="bold">Output</text>
24
 
25
  {/* Classification bars */}
26
+ <rect x="130" y="35" width="65" height="14" fill="#d8b4fe" rx="3" ry="3" />
27
+ <text x="135" y="45" fill="#6b21a8" fontSize="10" fontWeight="bold">Sport</text>
28
+ <text x="188" y="45" fill="#6b21a8" fontSize="10" textAnchor="end">0.800</text>
29
 
30
+ <rect x="130" y="53" width="26" height="14" fill="#d8b4fe" rx="3" ry="3" />
31
+ <text x="135" y="63" fill="#6b21a8" fontSize="10" fontWeight="bold">Food</text>
32
+ <text x="188" y="63" fill="#6b21a8" fontSize="10" textAnchor="end">0.150</text>
33
 
34
+ <rect x="130" y="71" width="9" height="14" fill="#d8b4fe" rx="3" ry="3" />
35
+ <text x="135" y="81" fill="#6b21a8" fontSize="10" fontWeight="bold">Music</text>
36
+ <text x="188" y="81" fill="#6b21a8" fontSize="10" textAnchor="end">0.050</text>
37
  </svg>
38
  );
39
  };
lib/icons/EmbeddingIcon.tsx CHANGED
@@ -7,48 +7,24 @@ interface IconProps {
7
  const EmbeddingIcon: React.FC<IconProps> = ({ className = '' }) => {
8
  return (
9
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 220 100" className={`w-full h-auto max-h-28 ${className}`}>
10
- <defs>
11
- <linearGradient id="bgGradient" x1="0%" y1="0%" x2="100%" y2="100%">
12
- <stop offset="0%" stopColor="#5eead4" />
13
- <stop offset="100%" stopColor="#2dd4bf" />
14
- </linearGradient>
15
- <filter id="glow">
16
- <feGaussianBlur stdDeviation="2" result="coloredBlur"/>
17
- <feMerge>
18
- <feMergeNode in="coloredBlur"/>
19
- <feMergeNode in="SourceGraphic"/>
20
- </feMerge>
21
- </filter>
22
- </defs>
23
 
24
- <rect x="0" y="0" width="220" height="100" fill="url(#bgGradient)" rx="10" ry="10">
25
- <animate attributeName="opacity" values="0.8;1;0.8" dur="3s" repeatCount="indefinite" />
26
- </rect>
 
 
27
 
28
- {/* Text representation */}
29
- <rect x="15" y="10" width="80" height="80" fill="#f0fdfa" stroke="#fff" strokeWidth="1" rx="5" ry="5" filter="url(#glow)" />
30
- <text x="25" y="40" fill="#f472b6" fontSize="14" fontWeight="bold">
31
- <tspan>Hello</tspan>
32
- <animate attributeName="opacity" values="0.5;1;0.5" dur="2s" repeatCount="indefinite" />
33
- </text>
34
- <text x="25" y="70" fill="#60a5fa" fontSize="14" fontWeight="bold">
35
- <tspan>World</tspan>
36
- <animate attributeName="opacity" values="0.5;1;0.5" dur="2s" repeatCount="indefinite" begin="1s" />
37
- </text>
38
 
39
- {/* Animated Arrow */}
40
- <line x1="105" y1="50" x2="115" y2="50" stroke="#fff" strokeWidth="3">
41
- <animate attributeName="x2" values="115;120;115" dur="1.5s" repeatCount="indefinite" />
42
- </line>
43
- <polygon points="115,45 122,50 115,55" fill="#fff">
44
- <animate attributeName="points" values="115,45 122,50 115,55;120,45 127,50 120,55;115,45 122,50 115,55" dur="1.5s" repeatCount="indefinite" />
45
- </polygon>
46
 
47
  {/* 3D space representation */}
48
- <rect x="125" y="10" width="80" height="80" fill="#f0fdfa" stroke="#fff" strokeWidth="1" rx="5" ry="5" filter="url(#glow)" />
49
-
50
- {/* Improved 3D axes with reduced opacity */}
51
- <g opacity="0.3">
52
  <line x1="130" y1="85" x2="200" y2="85" stroke="#0f766e" strokeWidth="1" />
53
  <polygon points="200,85 196,83 196,87" fill="#0f766e" />
54
  <text x="202" y="89" fill="#0f766e" fontSize="8">x</text>
@@ -62,19 +38,11 @@ const EmbeddingIcon: React.FC<IconProps> = ({ className = '' }) => {
62
  <text x="162" y="64" fill="#0f766e" fontSize="8">z</text>
63
  </g>
64
 
65
- {/* Animated 3D points */}
66
- <g>
67
- <circle cx="165" cy="40" r="4" fill="#f472b6">
68
- <animate attributeName="r" values="3;5;3" dur="2s" repeatCount="indefinite" />
69
- </circle>
70
- <text x="172" y="44" fill="#f472b6" fontSize="10" fontWeight="bold">Hello</text>
71
- </g>
72
- <g>
73
- <circle cx="170" cy="70" r="4" fill="#60a5fa">
74
- <animate attributeName="r" values="3;5;3" dur="2s" repeatCount="indefinite" begin="1s" />
75
- </circle>
76
- <text x="135" y="74" fill="#60a5fa" fontSize="10" fontWeight="bold">World</text>
77
- </g>
78
  </svg>
79
  );
80
  };
 
7
  const EmbeddingIcon: React.FC<IconProps> = ({ className = '' }) => {
8
  return (
9
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 220 100" className={`w-full h-auto max-h-28 ${className}`}>
10
+ {/* Background */}
11
+ <rect x="0" y="0" width="220" height="100" fill="#2dd4bf" rx="10" ry="10" />
 
 
 
 
 
 
 
 
 
 
 
12
 
13
+ {/* Input */}
14
+ <rect x="15" y="10" width="80" height="80" fill="#f0fdfa" stroke="#fff" strokeWidth="1" rx="5" ry="5" />
15
+ <text x="20" y="30" fill="#0f766e" fontSize="12" fontWeight="bold">Input</text>
16
+ <text x="20" y="50" fill="#0f766e" fontSize="14" fontWeight="bold">Hello</text>
17
+ <text x="20" y="70" fill="#0f766e" fontSize="14" fontWeight="bold">World</text>
18
 
19
+ {/* Arrow */}
20
+ <line x1="105" y1="50" x2="115" y2="50" stroke="#fff" strokeWidth="3" />
21
+ <polygon points="115,45 122,50 115,55" fill="#fff" />
 
 
 
 
 
 
 
22
 
23
+ {/* Output */}
24
+ <rect x="125" y="10" width="80" height="80" fill="#f0fdfa" stroke="#fff" strokeWidth="1" rx="5" ry="5" />
 
 
 
 
 
25
 
26
  {/* 3D space representation */}
27
+ <g opacity="0.7">
 
 
 
28
  <line x1="130" y1="85" x2="200" y2="85" stroke="#0f766e" strokeWidth="1" />
29
  <polygon points="200,85 196,83 196,87" fill="#0f766e" />
30
  <text x="202" y="89" fill="#0f766e" fontSize="8">x</text>
 
38
  <text x="162" y="64" fill="#0f766e" fontSize="8">z</text>
39
  </g>
40
 
41
+ {/* 3D points */}
42
+ <circle cx="165" cy="40" r="4" fill="#f472b6" />
43
+ <text x="172" y="44" fill="#f472b6" fontSize="10" fontWeight="bold">Hello</text>
44
+ <circle cx="170" cy="70" r="4" fill="#60a5fa" />
45
+ <text x="135" y="74" fill="#60a5fa" fontSize="10" fontWeight="bold">World</text>
 
 
 
 
 
 
 
 
46
  </svg>
47
  );
48
  };