Skip to content

Commit 0a0de6d

Browse files
committed
fix progress sizing
1 parent 02f9501 commit 0a0de6d

File tree

2 files changed

+42
-9
lines changed

2 files changed

+42
-9
lines changed

apps/web/app/(org)/dashboard/caps/components/CapCard/CapCard.tsx

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -458,22 +458,27 @@ export const CapCard = ({
458458
/>
459459
</Link>
460460
{uploadProgress && (
461-
<div className="absolute inset-0 flex items-center justify-center z-50 bg-black">
461+
<div className="flex absolute inset-0 z-50 justify-center items-center bg-black rounded-t-xl">
462462
{uploadProgress.status === "failed" ? (
463463
<div className="flex flex-col items-center">
464-
<div className="flex items-center justify-center mb-2 w-8 h-8 bg-red-500 rounded-full">
464+
<div className="flex justify-center items-center mb-2 w-8 h-8 bg-red-500 rounded-full">
465465
<FontAwesomeIcon
466466
icon={faVideo}
467467
className="text-white size-3"
468468
/>
469469
</div>
470-
<p className="text-xs text-white text-center">
470+
<p className="text-xs text-center text-white">
471471
Upload failed
472472
</p>
473473
</div>
474474
) : (
475-
<div className="relative size-14">
476-
<ProgressCircle progress={uploadProgress.progress} />
475+
<div className="relative size-20 md:size-16">
476+
<ProgressCircle
477+
progressTextClassName="md:!text-[11px]"
478+
subTextClassName="!mt-0 md:!text-[7px] !text-[10px] mb-1"
479+
className="md:scale-[1.5] scale-[1.2]"
480+
progress={50}
481+
/>
477482
</div>
478483
)}
479484
</div>

apps/web/app/s/[videoId]/_components/ProgressCircle.tsx

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
"use client";
22

33
import type { Video } from "@cap/web-domain";
4+
import clsx from "clsx";
45
import { Effect, Option } from "effect";
56
import { useEffectQuery } from "@/lib/EffectRuntime";
67
import { withRpc } from "@/lib/Rpcs";
@@ -63,9 +64,24 @@ export function useUploadProgress(
6364
) satisfies UploadProgress;
6465
}
6566

66-
const ProgressCircle = ({ progress }: { progress: number }) => {
67+
const ProgressCircle = ({
68+
progress,
69+
className,
70+
progressTextClassName,
71+
subTextClassName,
72+
}: {
73+
progress: number;
74+
className?: string;
75+
progressTextClassName?: string;
76+
subTextClassName?: string;
77+
}) => {
6778
return (
68-
<div className="relative scale-100 size-full sm:scale-110 md:scale-[1.3]">
79+
<div
80+
className={clsx(
81+
"relative scale-100 size-full sm:scale-110 md:scale-[1.3]",
82+
className,
83+
)}
84+
>
6985
<svg className="transform -rotate-90 size-full" viewBox="0 0 100 100">
7086
<title>Progress Circle</title>
7187
<circle
@@ -91,10 +107,22 @@ const ProgressCircle = ({ progress }: { progress: number }) => {
91107
</svg>
92108

93109
<div className="flex absolute inset-0 flex-col justify-center items-center p-2">
94-
<p className="text-sm font-semibold tabular-nums text-white xs:text-sm md:text-lg">
110+
<p
111+
className={clsx(
112+
"text-sm font-semibold tabular-nums md:leading-tight leading-tight text-white xs:text-sm md:text-lg",
113+
progressTextClassName,
114+
)}
115+
>
95116
{Math.round(progress)}%
96117
</p>
97-
<p className="mt-0.5 text-[10px] text-white/80">Uploading...</p>
118+
<p
119+
className={clsx(
120+
"mt-0.5 leading-tight text-[10px] text-white/80",
121+
subTextClassName,
122+
)}
123+
>
124+
Uploading...
125+
</p>
98126
</div>
99127
</div>
100128
);

0 commit comments

Comments
 (0)