Skip to content

Commit d3162e7

Browse files
committed
fix: layout and alignment
1 parent e56a7e2 commit d3162e7

File tree

1 file changed

+15
-15
lines changed

1 file changed

+15
-15
lines changed

apps/dashboard/app/(main)/billing/components/overview-tab.tsx

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ export const OverviewTab = memo(function OverviewTabComponent({
9999
const isCanceled = currentPlan?.scenario === "cancel";
100100

101101
return (
102-
<div className="flex h-full flex-col overflow-y-auto lg:flex-row lg:overflow-hidden">
102+
<div className="flex h-full flex-col overflow-y-auto lg:grid lg:h-full lg:grid-cols-[1fr_20rem] lg:overflow-hidden">
103103
<CancelSubscriptionDialog
104104
currentPeriodEnd={cancelTarget?.currentPeriodEnd}
105105
isLoading={isLoading}
@@ -114,7 +114,7 @@ export const OverviewTab = memo(function OverviewTabComponent({
114114
/>
115115

116116
{/* Main Content */}
117-
<div className="shrink-0 lg:min-h-0 lg:flex-1 lg:overflow-y-auto">
117+
<div className="shrink-0 lg:h-full lg:min-h-0 lg:overflow-y-auto">
118118
<div className="border-b px-5 py-4">
119119
<h2 className="font-semibold">Usage</h2>
120120
<p className="text-muted-foreground text-sm">
@@ -138,7 +138,7 @@ export const OverviewTab = memo(function OverviewTabComponent({
138138
</div>
139139

140140
{/* Sidebar */}
141-
<div className="flex w-full shrink-0 flex-col border-t bg-muted/30 lg:w-80 lg:overflow-y-auto lg:border-t-0 lg:border-l">
141+
<div className="flex w-full shrink-0 flex-col border-t bg-muted/30 lg:h-full lg:w-auto lg:overflow-y-auto lg:border-t-0 lg:border-l">
142142
{/* Plan */}
143143
<div className="border-b p-5">
144144
<div className="mb-3 flex items-center justify-between">
@@ -172,15 +172,15 @@ export const OverviewTab = memo(function OverviewTabComponent({
172172
</div>
173173

174174
{/* Payment Method + Actions - inline on mobile, stacked on desktop */}
175-
<div className="flex flex-1 flex-col gap-5 p-5 sm:flex-row sm:items-start lg:flex-col lg:gap-0 lg:p-0">
175+
<div className="grid gap-5 p-5 sm:grid-cols-2 lg:grid-cols-1 lg:gap-0 lg:p-0">
176176
{/* Payment Method */}
177-
<div className="w-full sm:w-auto sm:flex-1 lg:w-full lg:border-b lg:p-5">
177+
<div className="w-full lg:w-auto lg:border-b lg:p-5">
178178
<h3 className="mb-3 font-semibold">Payment Method</h3>
179179
<CreditCardDisplay customer={customer} />
180180
</div>
181181

182182
{/* Actions */}
183-
<div className="flex w-full flex-col gap-2 sm:w-auto sm:min-w-40 lg:w-full lg:p-5">
183+
<div className="flex w-full flex-col gap-2 lg:w-auto lg:p-5">
184184
{isCanceled ? (
185185
<Button className="w-full" onClick={onNavigateToPlans}>
186186
Reactivate Plan
@@ -240,7 +240,7 @@ function CreditCardDisplay({ customer }: { customer: Customer | null }) {
240240

241241
if (!card) {
242242
return (
243-
<div className="flex aspect-[1.586/1] w-full max-w-xs flex-col items-center justify-center rounded-xl border border-dashed bg-background sm:max-w-56 lg:max-w-none">
243+
<div className="flex aspect-[1.586/1] w-full flex-col items-center justify-center rounded-xl border border-dashed bg-background">
244244
<CreditCardIcon
245245
className="mb-2 text-muted-foreground"
246246
size={28}
@@ -258,7 +258,7 @@ function CreditCardDisplay({ customer }: { customer: Customer | null }) {
258258
const brand = card.brand?.toLowerCase() || "card";
259259

260260
return (
261-
<div className="relative aspect-[1.586/1] w-full max-w-xs sm:max-w-56 lg:max-w-none">
261+
<div className="relative aspect-[1.586/1] w-full">
262262
<div
263263
className={cn(
264264
"absolute inset-0 flex flex-col justify-between overflow-hidden rounded-xl p-4",
@@ -560,8 +560,8 @@ function ErrorState({
560560

561561
function OverviewSkeleton() {
562562
return (
563-
<div className="flex h-full flex-col overflow-y-auto lg:flex-row lg:overflow-hidden">
564-
<div className="shrink-0 lg:min-h-0 lg:flex-1 lg:overflow-y-auto">
563+
<div className="flex h-full flex-col overflow-y-auto lg:grid lg:grid-cols-[1fr_20rem] lg:overflow-hidden">
564+
<div className="shrink-0 lg:h-full lg:min-h-0 lg:overflow-y-auto">
565565
<div className="border-b px-5 py-4">
566566
<Skeleton className="mb-1 h-5 w-20" />
567567
<Skeleton className="h-4 w-40" />
@@ -581,7 +581,7 @@ function OverviewSkeleton() {
581581
))}
582582
</div>
583583
</div>
584-
<div className="flex w-full shrink-0 flex-col border-t bg-muted/30 lg:w-80 lg:overflow-y-auto lg:border-t-0 lg:border-l">
584+
<div className="flex w-full shrink-0 flex-col border-t bg-muted/30 lg:h-full lg:w-auto lg:overflow-y-auto lg:border-t-0 lg:border-l">
585585
<div className="border-b p-5">
586586
<Skeleton className="mb-3 h-5 w-28" />
587587
<div className="flex items-center gap-3">
@@ -592,12 +592,12 @@ function OverviewSkeleton() {
592592
</div>
593593
</div>
594594
</div>
595-
<div className="flex flex-1 flex-col gap-5 p-5 sm:flex-row sm:items-start lg:flex-col lg:gap-0 lg:p-0">
596-
<div className="w-full sm:w-auto sm:flex-1 lg:w-full lg:border-b lg:p-5">
595+
<div className="grid gap-5 p-5 sm:grid-cols-2 lg:grid-cols-1 lg:gap-0 lg:p-0">
596+
<div className="w-full lg:w-auto lg:border-b lg:p-5">
597597
<Skeleton className="mb-3 h-5 w-32" />
598-
<Skeleton className="aspect-[1.586/1] w-full max-w-xs rounded-xl sm:max-w-56 lg:max-w-none" />
598+
<Skeleton className="aspect-[1.586/1] w-full rounded-xl" />
599599
</div>
600-
<div className="flex w-full flex-col gap-2 sm:w-auto sm:min-w-40 lg:w-full lg:p-5">
600+
<div className="flex w-full flex-col gap-2 lg:w-auto lg:p-5">
601601
<Skeleton className="h-10 w-full" />
602602
<Skeleton className="h-10 w-full" />
603603
<Skeleton className="h-10 w-full" />

0 commit comments

Comments
 (0)