Build [v1.14.24]
This commit is contained in:
@@ -67,9 +67,9 @@ export default function ManualCropUI({
|
||||
|
||||
if (error) {
|
||||
return (
|
||||
<div className="flex items-center justify-center p-8 bg-slate-900 rounded-lg">
|
||||
<div className="flex items-center justify-center p-8 bg-surface-container">
|
||||
<div className="text-center">
|
||||
<p className="text-rose-500">{error}</p>
|
||||
<p className="text-error">{error}</p>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
@@ -79,7 +79,7 @@ export default function ManualCropUI({
|
||||
if (!actualDimensions) {
|
||||
return (
|
||||
<div className="flex flex-col gap-4">
|
||||
<div className="relative bg-slate-900 rounded-lg overflow-hidden border border-slate-800">
|
||||
<div className="relative bg-surface-container overflow-hidden border border-outline/30">
|
||||
<img
|
||||
ref={imageRef}
|
||||
src={imageUrl}
|
||||
@@ -90,7 +90,7 @@ export default function ManualCropUI({
|
||||
style={{ visibility: 'hidden' }}
|
||||
/>
|
||||
</div>
|
||||
<div className="text-sm text-slate-400 text-center">Loading image...</div>
|
||||
<div className="text-sm text-secondary text-center">Loading image...</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -198,7 +198,7 @@ export default function ManualCropUI({
|
||||
{/* Image container with crop preview */}
|
||||
<div
|
||||
ref={containerRef}
|
||||
className="relative bg-slate-900 rounded-lg overflow-hidden border border-slate-800"
|
||||
className="relative bg-background overflow-hidden border border-outline/30"
|
||||
style={{
|
||||
aspectRatio: `${actualDimensions.width} / ${actualDimensions.height}`,
|
||||
maxWidth: '100%',
|
||||
@@ -256,7 +256,7 @@ export default function ManualCropUI({
|
||||
|
||||
{/* Crop bounding box */}
|
||||
<div
|
||||
className="absolute border-2 border-cyan-400"
|
||||
className="absolute border-2 border-primary"
|
||||
style={{
|
||||
left: `${crop.x * scale}px`,
|
||||
top: `${crop.y * scale}px`,
|
||||
@@ -271,9 +271,7 @@ export default function ManualCropUI({
|
||||
key={handleType}
|
||||
onMouseDown={handleMouseDown(handleType)}
|
||||
onTouchStart={handleTouchStart(handleType)}
|
||||
className={`absolute w-${HANDLE_SIZE} h-${HANDLE_SIZE} bg-cyan-400 rounded-full border-2 border-white shadow-lg hover:scale-125 transition-transform cursor-grab active:cursor-grabbing ${
|
||||
isDragging ? 'scale-125' : ''
|
||||
}`}
|
||||
className={`absolute w-${HANDLE_SIZE} h-${HANDLE_SIZE} bg-primary border-2 border-white shadow-lg hover:scale-125 transition-transform cursor-grab active:cursor-grabbing ${ isDragging ? 'scale-125' : '' }`}
|
||||
style={{
|
||||
...getHandlePosition(handleType),
|
||||
width: `${HANDLE_SIZE}px`,
|
||||
@@ -291,14 +289,14 @@ export default function ManualCropUI({
|
||||
{crop && (
|
||||
<button
|
||||
onClick={() => resetCrop()}
|
||||
className="flex items-center justify-center gap-2 flex-1 px-4 py-2.5 bg-slate-700 text-white rounded-lg font-normal text-base transition-colors hover:bg-slate-600"
|
||||
className="flex items-center justify-center gap-2 flex-1 px-4 py-2.5 bg-surface-bright text-foreground font-normal text-base transition-colors hover:bg-surface-container"
|
||||
>
|
||||
<X className="w-5 h-5" />
|
||||
<span>Use Full Photo</span>
|
||||
</button>
|
||||
)}
|
||||
{!crop && (
|
||||
<div className="text-sm text-slate-400 text-center flex-1 py-2.5">
|
||||
<div className="text-sm text-secondary text-center flex-1 py-2.5">
|
||||
Drag handles to adjust crop area
|
||||
</div>
|
||||
)}
|
||||
@@ -306,7 +304,7 @@ export default function ManualCropUI({
|
||||
|
||||
{/* Crop bounds display (debug) */}
|
||||
{crop && (
|
||||
<div className="text-xs text-slate-500 text-center">
|
||||
<div className="text-xs text-secondary text-center">
|
||||
Crop: {Math.round(crop.x)}, {Math.round(crop.y)} | Size: {Math.round(crop.width)} x{' '}
|
||||
{Math.round(crop.height)}
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user