diff --git a/package.json b/package.json index c2b91ef..22a1b65 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,8 @@ "@radix-ui/react-avatar": "^1.1.10", "@radix-ui/react-checkbox": "^1.2.3", "@radix-ui/react-dialog": "^1.1.14", + "@radix-ui/react-dropdown-menu": "^2.1.15", + "@radix-ui/react-progress": "^1.1.7", "@radix-ui/react-select": "^2.2.5", "@radix-ui/react-slot": "^1.2.0", "@radix-ui/react-tabs": "^1.1.12", diff --git a/public/Chat.svg b/public/Chat.svg new file mode 100644 index 0000000..9fa1d2b --- /dev/null +++ b/public/Chat.svg @@ -0,0 +1,3 @@ + diff --git a/src/app/dashboard/admin/content-management/components/BookDetails.tsx b/src/app/dashboard/admin/content-management/components/BookDetails.tsx new file mode 100644 index 0000000..1ebe3a5 --- /dev/null +++ b/src/app/dashboard/admin/content-management/components/BookDetails.tsx @@ -0,0 +1,476 @@ +"use client"; + +import { Button } from "@/components/ui/button"; +import { Badge } from "@/components/ui/badge"; +import { Card, CardContent } from "@/components/ui/card"; +import { Progress } from "@/components/ui/progress"; +import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar"; +import { Star, CheckCircle, Eye, Download } from "lucide-react"; +import Image from "next/image"; +import check from "../../../../../../public/Cover.png"; +import message from "../../../../../../public/Chat.svg"; +import starknet from "../../../../../../public/starknet.png"; +import user1 from "../../../../../../public/user1.svg"; + +interface Book { + id: string; + title: string; + author: string; + cover: string; + type: "Regular" | "NFT Edition"; + status: + | "Approved" + | "Pending" + | "Rejected" + | "Unresolved" + | "Resolved" + | "Valid" + | "Reported"; + dateSubmitted: string; + datePublished?: string; + interactions?: string; + tokenId?: string; + walletAddress?: string; + mintingDate?: string; + reportType?: string; + reportedBy?: string; + rating?: number; + price?: string; + sold?: number; + isbn?: string; + language?: string; + pageCount?: string; + genre?: string[]; +} + +interface BookDetailsProps { + book: Book; + currentView: string; + onReject?: () => void; + onApprove?: () => void; +} + +export function BookDetails({ + book, + currentView, + onReject, + onApprove, +}: BookDetailsProps) { + return ( +
+ By Darrin Collins +
+ ++ Delves into the complex and often insidious ways in which indigenous + peoples and their unique experiences are rendered unseen and unheard + in the modern era. +
+ ++ This was a great read, and I was hooked. However, the + death of my favorite character impacted my overall + enjoyment, which is why I'm rating it 4 stars instead of + 5. +
+ +| + {header} + | + ))} +
|---|
| + {header} + | + ))} +
|---|
| + {header} + | + ))} +
|---|
+ Enter the reason you are rejecting this book for publication +
+ ++ Rejected by: Ola**p@gmail.com +
++ Presenting someone else's work and used images, that are + unsuitable, offensive, harmful, disturbing, often based on + societal norms, legal standards, age +
++ Unsuitable, offensive, harmful, disturbing, often based on + societal norms, legal standards, age +
+- Welcome to the Content Management section of the admin dashboard! Here, you can manage all aspects of content on your platform, including articles, blogs, and other media. This space is designed to help you maintain a rich and engaging content library for your users. -
+