feat: implement public order details page with submission view, order actions, and sidebar branding updates

This commit is contained in:
Firman Ramdhani
2026-09-03 14:54:33 +07:00
parent d32e7eda91
commit ff57d52dde
11 changed files with 643 additions and 288 deletions
+10 -1
View File
@@ -6,6 +6,7 @@ import { Button, buttonVariants } from '@/components/ui/button'
import { cn } from '@/lib/utils'
import { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from '@/components/ui/card'
import { Badge } from '@/components/ui/badge'
import { ShareButton } from '@/components/ShareButton'
import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogTrigger } from '@/components/ui/dialog'
import { Input } from '@/components/ui/input'
import { Label } from '@/components/ui/label'
@@ -358,7 +359,7 @@ export default function MyOrdersPage() {
</div>
{/* Right: Actions */}
<div className="w-full md:w-[260px] p-4 sm:p-5 bg-slate-50/70 dark:bg-slate-800/40 flex flex-col justify-center gap-3 shrink-0">
<div className="w-full md:w-[280px] p-4 sm:p-5 bg-slate-50/70 dark:bg-slate-800/40 flex flex-col justify-center gap-3 shrink-0">
<div className="flex flex-row gap-2 w-full">
{/* Detail Link */}
<Link
@@ -465,6 +466,14 @@ export default function MyOrdersPage() {
<Trash2 className="w-3.5 h-3.5 shrink-0" />
<span className="truncate">Hapus</span>
</Button>
{order.status === 'OPEN' && (
<ShareButton
orderId={order.id}
variant="ghost"
className="flex-1 h-8 rounded-lg font-bold text-[10px] sm:text-[11px] gap-1 px-1 text-slate-600 hover:text-[#1B2CC1] hover:bg-[#1B2CC1]/10 dark:text-slate-300 transition-all"
/>
)}
</div>
</div>
</div>