Merge tag '1.14.5_cleaned'

project was cleaned
This commit is contained in:
2026-04-23 11:47:44 +03:00
5758 changed files with 2046069 additions and 16179 deletions

View File

@@ -42,7 +42,7 @@ export default function CameraView({
const cn = (...classes: any[]) => classes.filter(Boolean).join(' ');
return (
<div className="w-full max-w-md mx-auto flex flex-col gap-6">
<div className="w-full max-w-md mx-auto flex flex-col gap-3 md:gap-4">
{/* Video Viewport Area */}
<div className="relative w-full aspect-square overflow-hidden rounded-[2.5rem] shadow-[0_20px_50px_rgba(0,0,0,0.5)] bg-background border-2 border-slate-800/50 p-4 sm:p-6 lg:p-8 xl:p-10">
<div className="absolute inset-4 sm:inset-6 z-10 pointer-events-none flex items-center justify-center">
@@ -91,13 +91,13 @@ export default function CameraView({
</div>
<div className="p-6 lg:p-8 xl:p-10 bg-surface/90 border-t border-slate-800 flex flex-col gap-4">
<div className="flex flex-col items-center gap-1">
<p className="text-sm lg:text-base xl:text-lg lg:text-xl xl:text-2xl lg:text-3xl xl:text-4xl font-black text-white italic text-center">Text Found</p>
<p className="text-xs lg:text-sm xl:text-base lg:text-lg xl:text-xl lg:text-2xl xl:text-3xl lg:text-4xl xl:text-5xl text-muted font-black text-center">Tap any text to use it</p>
<p className="text-sm font-normal text-white italic text-center">Text Found</p>
<p className="text-xs text-muted font-normal text-center">Tap any text to use it</p>
</div>
<button
onClick={onCancelSelection}
aria-label="Cancel text selection"
className="w-full py-4 bg-slate-800 hover:bg-slate-700 text-white rounded-2xl font-black text-xs lg:text-sm xl:text-base lg:text-lg xl:text-xl lg:text-2xl xl:text-3xl lg:text-4xl xl:text-5xl cursor-pointer transition-all active:scale-95 border border-slate-700 focus:ring-2 focus:ring-blue-500 focus:outline-none"
className="w-full py-4 bg-slate-800 hover:bg-slate-700 text-white rounded-2xl font-normal text-xs cursor-pointer transition-all active:scale-95 border border-slate-700 focus:ring-2 focus:ring-blue-500 focus:outline-none"
>
Cancel
</button>
@@ -116,13 +116,13 @@ export default function CameraView({
<div className="absolute inset-0 z-20 flex flex-col items-center justify-center bg-surface text-secondary px-8 text-center gap-4">
<XCircle className="w-10 h-10 text-red-500" />
<div>
<p className="font-bold text-white">Camera Error</p>
<p className="text-xs lg:text-sm xl:text-base lg:text-lg xl:text-xl lg:text-2xl xl:text-3xl lg:text-4xl xl:text-5xl text-secondary mt-1">{error}</p>
<p className="font-normal text-white">Camera Error</p>
<p className="text-xs text-secondary mt-1">{error}</p>
</div>
<button
onClick={() => window.location.reload()}
aria-label="Reload page and try again"
className="mt-4 px-6 py-2 lg:py-3 xl:py-4 bg-slate-800 rounded-full text-sm lg:text-base xl:text-lg lg:text-xl xl:text-2xl lg:text-3xl xl:text-4xl font-bold cursor-pointer hover:bg-slate-700 transition-colors focus:ring-2 focus:ring-blue-500 focus:outline-none"
className="mt-4 px-6 py-2 bg-slate-800 rounded-full text-sm font-normal cursor-pointer hover:bg-slate-700 transition-colors focus:ring-2 focus:ring-blue-500 focus:outline-none"
>
Try Again
</button>
@@ -148,8 +148,8 @@ export default function CameraView({
aria-label={`Zoom ${zoom.toFixed(1)}x`}
className="h-14 px-5 bg-slate-800/80 hover:bg-slate-700 border border-slate-700 text-white rounded-2xl flex flex-col items-center justify-center shadow-lg cursor-pointer transition-all active:scale-95 shrink-0 focus:ring-2 focus:ring-blue-500 focus:outline-none"
>
<span className="text-xs lg:text-sm xl:text-base lg:text-lg xl:text-xl lg:text-2xl xl:text-3xl lg:text-4xl xl:text-5xl font-black tabular-nums">{zoom.toFixed(1)}x</span>
<span className="text-xs lg:text-sm xl:text-base lg:text-lg xl:text-xl lg:text-2xl xl:text-3xl lg:text-4xl xl:text-5xl text-primary font-black tracking-tighter">Zoom</span>
<span className="text-xs font-normal tabular-nums">{zoom.toFixed(1)}x</span>
<span className="text-xs text-primary font-normal tracking-tighter">Zoom</span>
</button>
)}
@@ -157,7 +157,7 @@ export default function CameraView({
{ocrProcessing ? (
<>
<RefreshCw className="animate-spin text-primary" size={18} />
<span className="text-xs lg:text-sm xl:text-base lg:text-lg xl:text-xl lg:text-2xl xl:text-3xl lg:text-4xl xl:text-5xl font-black text-secondary leading-none">Analyzing</span>
<span className="text-xs font-normal text-secondary leading-none">Analyzing</span>
</>
) : (
<>
@@ -166,8 +166,8 @@ export default function CameraView({
size={18}
/>
<div className="flex flex-col">
<span className="text-xs lg:text-sm xl:text-base lg:text-lg xl:text-xl lg:text-2xl xl:text-3xl lg:text-4xl xl:text-5xl text-muted font-black leading-none">Smart Scan</span>
<span className="text-xs lg:text-sm xl:text-base lg:text-lg xl:text-xl lg:text-2xl xl:text-3xl lg:text-4xl xl:text-5xl font-black text-primary leading-tight tabular-nums">
<span className="text-xs text-muted font-normal leading-none">Smart Scan</span>
<span className="text-xs font-normal text-primary leading-tight tabular-nums">
{countdown === 0 ? 'Scanning' : `${countdown}s`}
</span>
</div>
@@ -184,7 +184,7 @@ export default function CameraView({
<div className="w-full flex justify-center items-center gap-2">
<div className="w-1 h-1 rounded-full bg-green-500 animate-pulse" />
<p className="text-xs lg:text-sm xl:text-base lg:text-lg xl:text-xl lg:text-2xl xl:text-3xl lg:text-4xl xl:text-5xl text-secondary font-black">
<p className="text-xs text-secondary font-normal">
Scanner active · Use zoom or tap scan
</p>
</div>