Deepfake Authenticator commited on
Commit
30de428
·
1 Parent(s): 1dfcfc7

fix: improve ProcessingSection spacing and padding

Browse files
frontend-react/src/components/ProcessingSection.tsx CHANGED
@@ -59,7 +59,7 @@ export default function ProcessingSection() {
59
  s.status === 'active' ? 'sync' : s.status === 'done' ? 'check_circle' : 'hourglass_empty';
60
 
61
  return (
62
- <section className="relative z-10 flex flex-col items-center justify-center px-6 min-h-screen">
63
  <div className="absolute inset-0 noise-bg z-0" />
64
 
65
  {/* Purple scan line */}
@@ -71,12 +71,12 @@ export default function ProcessingSection() {
71
  }}
72
  />
73
 
74
- <div className="relative z-10 w-full max-w-4xl pt-24 pb-16 flex flex-col items-center">
75
 
76
  {/* Header */}
77
- <div className="w-full mb-12 text-center">
78
  <h1
79
- className="text-5xl font-black mb-2"
80
  style={{
81
  background: 'linear-gradient(135deg, #c084fc, #a855f7)',
82
  WebkitBackgroundClip: 'text',
@@ -92,11 +92,11 @@ export default function ProcessingSection() {
92
  </div>
93
 
94
  {/* Bento grid */}
95
- <div className="w-full grid grid-cols-1 md:grid-cols-12 gap-5">
96
 
97
  {/* Left: Orb */}
98
  <div
99
- className="md:col-span-5 rounded-xl p-6 flex flex-col items-center justify-center relative min-h-[300px]"
100
  style={{
101
  background: 'rgba(20,10,40,0.5)',
102
  border: '1px solid rgba(168,85,247,0.15)',
@@ -104,57 +104,40 @@ export default function ProcessingSection() {
104
  boxShadow: 'inset 1px 1px 0 rgba(255,255,255,0.04)',
105
  }}
106
  >
107
- <div className="absolute top-3 left-4 font-bold text-[10px] tracking-widest uppercase"
108
  style={{ color: 'rgba(168,85,247,0.4)' }}>
109
  Target Vector
110
  </div>
111
 
112
  <div
113
- className="relative w-48 h-48 rounded-full flex items-center justify-center"
114
  style={{
115
  border: '1px solid rgba(168,85,247,0.25)',
116
  boxShadow: '0 0 30px rgba(124,58,237,0.12)',
117
  }}
118
  >
119
- <div
120
- className="absolute inset-2 rounded-full border-dashed animate-spin-medium"
121
- style={{ border: '1px dashed rgba(168,85,247,0.3)' }}
122
- />
123
- <div
124
- className="absolute inset-6 rounded-full flex items-center justify-center overflow-hidden"
125
- style={{
126
- background: 'radial-gradient(circle, rgba(88,28,135,0.3) 0%, rgba(13,7,32,0.8) 100%)',
127
- }}
128
- >
129
- <span
130
- className="material-symbols-outlined text-[48px] opacity-40"
131
- style={{ color: '#a855f7', fontVariationSettings: "'FILL' 1" }}
132
- >
133
- analytics
134
- </span>
135
  </div>
136
- <div
137
- className="absolute inset-0 rounded-full border-t-2 blur-[2px] animate-spin-fast"
138
- style={{ borderColor: 'rgba(168,85,247,0.7)' }}
139
- />
140
- <span
141
- className="material-symbols-outlined absolute text-4xl"
142
- style={{ color: '#c084fc', filter: 'drop-shadow(0 0 10px rgba(168,85,247,0.8))' }}
143
- >
144
  troubleshoot
145
  </span>
146
  </div>
147
 
148
- <div className="mt-6 w-full">
149
  {[
150
  { label: 'DATA_STREAM', value: 'ACTIVE', valueColor: '#a855f7' },
151
  { label: 'THROUGHPUT', value: '2.4 TB/s', valueColor: '#818cf8' },
152
  ].map(({ label, value, valueColor }) => (
153
- <div
154
- key={label}
155
- className="flex items-center justify-between text-sm font-medium tracking-wider pb-1 mb-1"
156
- style={{ borderBottom: '1px solid rgba(168,85,247,0.08)', color: 'rgba(192,132,252,0.5)' }}
157
- >
158
  <span>{label}</span>
159
  <span style={{ color: valueColor, fontWeight: 700 }}>{value}</span>
160
  </div>
@@ -164,7 +147,7 @@ export default function ProcessingSection() {
164
 
165
  {/* Right: Pipeline */}
166
  <div
167
- className="md:col-span-7 rounded-xl p-6 flex flex-col justify-center gap-4"
168
  style={{
169
  background: 'rgba(20,10,40,0.5)',
170
  border: '1px solid rgba(168,85,247,0.15)',
@@ -172,94 +155,63 @@ export default function ProcessingSection() {
172
  boxShadow: 'inset 1px 1px 0 rgba(255,255,255,0.04)',
173
  }}
174
  >
175
- <div className="flex justify-between items-center mb-1">
176
  <span className="font-bold text-[10px] tracking-widest uppercase"
177
  style={{ color: 'rgba(168,85,247,0.4)' }}>
178
  Processing Pipeline
179
  </span>
180
- <span
181
- className="text-sm font-bold px-3 py-1 rounded"
182
- style={{
183
- color: '#c084fc',
184
- background: 'rgba(124,58,237,0.2)',
185
- border: '1px solid rgba(168,85,247,0.3)',
186
- }}
187
- >
188
  {overallPct}% COMPLETE
189
  </span>
190
  </div>
191
 
192
- {steps.map((step, i) => (
193
- <div
194
- key={i}
195
- className="flex flex-col gap-1 transition-opacity duration-400"
196
- style={{ opacity: step.status === 'pending' ? 0.3 : 1 }}
197
- >
198
- <div className="flex justify-between items-center">
199
- <div className="flex items-center gap-2">
200
- <span
201
- className="material-symbols-outlined text-sm"
202
- style={{ color: stepColor(step) }}
203
- >
204
- {stepIcon(step)}
205
- </span>
206
- <span className="text-sm font-medium tracking-wider text-white/80">
207
- {step.label}
208
  </span>
209
  </div>
210
- <span className="text-sm font-bold" style={{ color: stepColor(step) }}>
211
- {step.status === 'done' ? '100%' : step.status === 'active' ? `${step.pct}%` : '0%'}
212
- </span>
213
- </div>
214
- <div className="w-full h-2 flex gap-[2px] rounded overflow-hidden"
215
- style={{ background: 'rgba(88,28,135,0.2)' }}>
216
- {Array.from({ length: 10 }).map((_, j) => {
217
- const filled = step.status === 'done' || (step.status === 'active' && j < Math.round(step.pct / 10));
218
- return (
219
- <div key={j} className="h-full flex-1 transition-all duration-500"
220
- style={{
221
- background: filled
222
- ? step.status === 'done'
223
- ? `${P}0.55)`
224
- : `${P}0.85)`
225
- : `${P}0.08)`,
226
- boxShadow: filled && step.status === 'active' ? `0 0 6px ${P}0.5)` : 'none',
227
- }}
228
- />
229
- );
230
- })}
231
  </div>
232
- </div>
233
- ))}
234
  </div>
235
  </div>
236
 
237
  {/* Overall progress */}
238
- <div
239
- className="w-full mt-6 rounded-xl p-4"
240
- style={{
241
- background: 'rgba(20,10,40,0.5)',
242
- border: '1px solid rgba(168,85,247,0.15)',
243
- backdropFilter: 'blur(20px)',
244
- }}
245
- >
246
- <div className="flex justify-between items-center mb-2">
247
- <span className="font-bold text-[10px] tracking-widest uppercase"
248
- style={{ color: 'rgba(168,85,247,0.4)' }}>
249
  Overall Progress
250
  </span>
251
  <span className="text-sm font-bold" style={{ color: '#c084fc' }}>{overallPct}%</span>
252
  </div>
253
- <div className="w-full h-3 rounded-full overflow-hidden"
254
- style={{ background: 'rgba(88,28,135,0.2)' }}>
255
- <div
256
- className="h-full rounded-full transition-all duration-700"
257
- style={{
258
- width: `${overallPct}%`,
259
- background: 'linear-gradient(to right, #7c3aed, #a855f7, #c084fc)',
260
- boxShadow: '0 0 12px rgba(168,85,247,0.5)',
261
- }}
262
- />
263
  </div>
264
  </div>
265
 
 
59
  s.status === 'active' ? 'sync' : s.status === 'done' ? 'check_circle' : 'hourglass_empty';
60
 
61
  return (
62
+ <section className="relative z-10 flex flex-col items-center justify-center min-h-screen px-6 md:px-12 lg:px-20">
63
  <div className="absolute inset-0 noise-bg z-0" />
64
 
65
  {/* Purple scan line */}
 
71
  }}
72
  />
73
 
74
+ <div className="relative z-10 w-full max-w-5xl pt-24 pb-16 flex flex-col items-center gap-8">
75
 
76
  {/* Header */}
77
+ <div className="w-full text-center">
78
  <h1
79
+ className="text-4xl md:text-5xl font-black mb-3"
80
  style={{
81
  background: 'linear-gradient(135deg, #c084fc, #a855f7)',
82
  WebkitBackgroundClip: 'text',
 
92
  </div>
93
 
94
  {/* Bento grid */}
95
+ <div className="w-full grid grid-cols-1 md:grid-cols-12 gap-6">
96
 
97
  {/* Left: Orb */}
98
  <div
99
+ className="md:col-span-5 rounded-2xl p-8 flex flex-col items-center justify-center relative min-h-[320px]"
100
  style={{
101
  background: 'rgba(20,10,40,0.5)',
102
  border: '1px solid rgba(168,85,247,0.15)',
 
104
  boxShadow: 'inset 1px 1px 0 rgba(255,255,255,0.04)',
105
  }}
106
  >
107
+ <div className="absolute top-4 left-5 font-bold text-[10px] tracking-widest uppercase"
108
  style={{ color: 'rgba(168,85,247,0.4)' }}>
109
  Target Vector
110
  </div>
111
 
112
  <div
113
+ className="relative w-44 h-44 rounded-full flex items-center justify-center my-4"
114
  style={{
115
  border: '1px solid rgba(168,85,247,0.25)',
116
  boxShadow: '0 0 30px rgba(124,58,237,0.12)',
117
  }}
118
  >
119
+ <div className="absolute inset-2 rounded-full border-dashed animate-spin-medium"
120
+ style={{ border: '1px dashed rgba(168,85,247,0.3)' }} />
121
+ <div className="absolute inset-6 rounded-full flex items-center justify-center overflow-hidden"
122
+ style={{ background: 'radial-gradient(circle, rgba(88,28,135,0.3) 0%, rgba(13,7,32,0.8) 100%)' }}>
123
+ <span className="material-symbols-outlined text-[48px] opacity-40"
124
+ style={{ color: '#a855f7', fontVariationSettings: "'FILL' 1" }}>analytics</span>
 
 
 
 
 
 
 
 
 
 
125
  </div>
126
+ <div className="absolute inset-0 rounded-full border-t-2 blur-[2px] animate-spin-fast"
127
+ style={{ borderColor: 'rgba(168,85,247,0.7)' }} />
128
+ <span className="material-symbols-outlined absolute text-4xl"
129
+ style={{ color: '#c084fc', filter: 'drop-shadow(0 0 10px rgba(168,85,247,0.8))' }}>
 
 
 
 
130
  troubleshoot
131
  </span>
132
  </div>
133
 
134
+ <div className="w-full mt-2 space-y-2">
135
  {[
136
  { label: 'DATA_STREAM', value: 'ACTIVE', valueColor: '#a855f7' },
137
  { label: 'THROUGHPUT', value: '2.4 TB/s', valueColor: '#818cf8' },
138
  ].map(({ label, value, valueColor }) => (
139
+ <div key={label} className="flex items-center justify-between text-sm font-medium tracking-wider py-2"
140
+ style={{ borderBottom: '1px solid rgba(168,85,247,0.08)', color: 'rgba(192,132,252,0.5)' }}>
 
 
 
141
  <span>{label}</span>
142
  <span style={{ color: valueColor, fontWeight: 700 }}>{value}</span>
143
  </div>
 
147
 
148
  {/* Right: Pipeline */}
149
  <div
150
+ className="md:col-span-7 rounded-2xl p-8 flex flex-col justify-center gap-5"
151
  style={{
152
  background: 'rgba(20,10,40,0.5)',
153
  border: '1px solid rgba(168,85,247,0.15)',
 
155
  boxShadow: 'inset 1px 1px 0 rgba(255,255,255,0.04)',
156
  }}
157
  >
158
+ <div className="flex justify-between items-center">
159
  <span className="font-bold text-[10px] tracking-widest uppercase"
160
  style={{ color: 'rgba(168,85,247,0.4)' }}>
161
  Processing Pipeline
162
  </span>
163
+ <span className="text-sm font-bold px-3 py-1 rounded"
164
+ style={{ color: '#c084fc', background: 'rgba(124,58,237,0.2)', border: '1px solid rgba(168,85,247,0.3)' }}>
 
 
 
 
 
 
165
  {overallPct}% COMPLETE
166
  </span>
167
  </div>
168
 
169
+ <div className="flex flex-col gap-4">
170
+ {steps.map((step, i) => (
171
+ <div key={i} className="flex flex-col gap-2 transition-opacity duration-400"
172
+ style={{ opacity: step.status === 'pending' ? 0.3 : 1 }}>
173
+ <div className="flex justify-between items-center">
174
+ <div className="flex items-center gap-3">
175
+ <span className="material-symbols-outlined text-sm" style={{ color: stepColor(step) }}>
176
+ {stepIcon(step)}
177
+ </span>
178
+ <span className="text-sm font-medium tracking-wider text-white/80">{step.label}</span>
179
+ </div>
180
+ <span className="text-sm font-bold" style={{ color: stepColor(step) }}>
181
+ {step.status === 'done' ? '100%' : step.status === 'active' ? `${step.pct}%` : '0%'}
 
 
 
182
  </span>
183
  </div>
184
+ <div className="w-full h-2 flex gap-[2px] rounded overflow-hidden"
185
+ style={{ background: 'rgba(88,28,135,0.2)' }}>
186
+ {Array.from({ length: 10 }).map((_, j) => {
187
+ const filled = step.status === 'done' || (step.status === 'active' && j < Math.round(step.pct / 10));
188
+ return (
189
+ <div key={j} className="h-full flex-1 transition-all duration-500"
190
+ style={{
191
+ background: filled ? step.status === 'done' ? `${P}0.55)` : `${P}0.85)` : `${P}0.08)`,
192
+ boxShadow: filled && step.status === 'active' ? `0 0 6px ${P}0.5)` : 'none',
193
+ }} />
194
+ );
195
+ })}
196
+ </div>
 
 
 
 
 
 
 
 
197
  </div>
198
+ ))}
199
+ </div>
200
  </div>
201
  </div>
202
 
203
  {/* Overall progress */}
204
+ <div className="w-full rounded-2xl p-6"
205
+ style={{ background: 'rgba(20,10,40,0.5)', border: '1px solid rgba(168,85,247,0.15)', backdropFilter: 'blur(20px)' }}>
206
+ <div className="flex justify-between items-center mb-3">
207
+ <span className="font-bold text-[10px] tracking-widest uppercase" style={{ color: 'rgba(168,85,247,0.4)' }}>
 
 
 
 
 
 
 
208
  Overall Progress
209
  </span>
210
  <span className="text-sm font-bold" style={{ color: '#c084fc' }}>{overallPct}%</span>
211
  </div>
212
+ <div className="w-full h-3 rounded-full overflow-hidden" style={{ background: 'rgba(88,28,135,0.2)' }}>
213
+ <div className="h-full rounded-full transition-all duration-700"
214
+ style={{ width: `${overallPct}%`, background: 'linear-gradient(to right, #7c3aed, #a855f7, #c084fc)', boxShadow: '0 0 12px rgba(168,85,247,0.5)' }} />
 
 
 
 
 
 
 
215
  </div>
216
  </div>
217