web-humas-fe/components/table/tabel-emajalah-polri.tsx

187 lines
8.1 KiB
TypeScript

'use client'
import { BreadcrumbItem, Breadcrumbs, Button, Input, Select, SelectItem, SelectSection, Table, TableBody, TableCell, TableColumn, TableHeader, TableRow, getKeyValue } from "@nextui-org/react";
import PPIDSidebar from '../Portal PPID/PPIDSidebar';
import { Checklist, EyeFilledIcon, EyeIcon, SearchIcon } from '../icons';
export default function ListEnewsPolri() {
const searchInput = (
<Input
aria-label="Search"
className="w-full"
classNames={{
inputWrapper: "bg-white hover:!bg-gray-100",
input: "text-sm",
}}
labelPlacement="outside"
placeholder="Search..."
startContent={
<SearchIcon className="text-base text-default-400 pointer-events-none flex-shrink-0" />
}
endContent={
<Button size="sm" className="bg-[#DD8306] font-semibold">Cari</Button>
}
type="search"
/>
)
const tableData = [
{
key: "1",
tahun: "MAJALAH TRIBRATA NEWS SUMSEL EDISI 33/ VII-IX/2023",
icon: <EyeFilledIcon color="#DD8306" />
},
{
key: "2",
tahun: "Tribrata Edisi 1 2023",
icon: <EyeFilledIcon color="#DD8306" />
},
{
key: "3",
tahun: "MAJALAH TRIBRATA NEWS SUMSEL EDISI 33/ VII-IX/2023",
icon: <EyeFilledIcon color="#DD8306" />
},
{
key: "4",
tahun: "MAJALAH TRIBRATA NEWS SUMSEL EDISI 33/ VII-IX/2023",
icon: <EyeFilledIcon color="#DD8306" />
},
{
key: "5",
tahun: "MAJALAH TRIBRATA NEWS SUMSEL EDISI 33/ VII-IX/2023",
icon: <EyeFilledIcon color="#DD8306" />
},
];
const header = [
{
key: "tahun",
label: "Daftar E-Majalah Polri",
},
{
key: "icon",
label: ''
}
]
const category = [
{ label: "Title", value: "title" },
{ label: "Date", value: "date" },
{ label: "Created At", value: "createdAt" },
];
return (
<div className='md:flex '>
<div className='w-auto bg-[#E2E2E2] md:w-2/3 lg:w-[75%] text-black'>
<div className='p-1 md:p-5 lg:p-8'>
<div className='font-bold text-xl'>E-Majalah Polri</div>
<div className="pt-2">
<Breadcrumbs color='primary'>
<BreadcrumbItem>Beranda</BreadcrumbItem>
<BreadcrumbItem>E-Majalah Polri</BreadcrumbItem>
</Breadcrumbs>
</div>
<div className='pt-4 space-y-5'>
<div className='font-semibold text-lg border-b-4 border-red-700 leading-loose'>E-majalah Polri</div>
<div className="flex items-center gap-3">
{searchInput}
<Select
label="Sort By"
size="sm"
className="w-1/5"
classNames={{
// base: "bg-red-500",
// mainWrapper: "border-2 border-red-500",
label: "text-black",
value: "!text-black",
trigger: "bg-white hover:!bg-gray-100",
// innerWrapper: "bg-red-500"
// selectorIcon: "bg-red-500"
// listboxWrapper: "bg-red-500"
// listbox: "bg-red-500"
popoverContent: "bg-white"
}}
listboxProps={{
itemClasses: {
base: "text-black",
wrapper: "!bg-white ",
}
}}
// onChange={onChangeFilterEnterprising}
>
<SelectSection >
{category.map((list: any) => (
<SelectItem key={list.id}>{list.label}</SelectItem>
))}
</SelectSection>
</Select>
<Select
label="Tanggal Publikasi"
size="sm"
className="w-1/4"
classNames={{
// base: "bg-red-500",
// mainWrapper: "border-2 border-red-500",
label: "text-black",
value: "!text-black",
trigger: "bg-white hover:!bg-gray-100",
// innerWrapper: "bg-red-500"
// selectorIcon: "bg-red-500"
// listboxWrapper: "bg-red-500"
// listbox: "bg-red-500"
popoverContent: "bg-white"
}}
listboxProps={{
itemClasses: {
base: "text-black",
wrapper: "!bg-white ",
}
}}
// onChange={onChangeFilterEnterprising}
>
<SelectSection >
{category.map((list: any) => (
<SelectItem key={list.id}>{list.label}</SelectItem>
))}
</SelectSection>
</Select>
</div>
<div>
<div className="flex flex-col gap-3">
<Table
color='warning'
selectionMode="single"
defaultSelectedKeys={["1"]}
aria-label="Example static collection table"
classNames={{
wrapper: "bg-white",
base: 'font-bold',
// th: " border-2 border-red-500 text-xs",
td: "font-medium"
}}
>
<TableHeader columns={header}>
{(column) => <TableColumn className=' bg-[#DD8306] text-white text-md w-full' key={column.key}>{column.label}</TableColumn>}
</TableHeader>
<TableBody items={tableData}>
{(item) => (
<TableRow key={item.key}>
{(columnKey) => <TableCell>{getKeyValue(item, columnKey)}</TableCell>}
</TableRow>
)}
</TableBody>
</Table>
</div>
</div>
</div>
</div>
<div>
</div>
</div>
<div className='w-auto md:w-1/3 lg:w-[25%]'>
<PPIDSidebar />
</div>
</div>
)
}