import DT from 'datatables.net-dt' import DataTable from 'datatables.net-react' import { Link, useRouteLoaderData } from 'react-router' import { Button } from '~/components/ui/button' import { UiTable } from '~/components/ui/table' import { TitleDashboard } from '~/components/ui/title-dashboard' import type { loader } from '~/routes/_admin.lg-admin._dashboard.contents' import type { TCategory } from '~/types/news' import { formatDate } from '~/utils/formatter' export const ContentsPage = () => { const loaderData = useRouteLoaderData( 'routes/_admin.lg-admin._dashboard.contents', ) const newsData = loaderData?.newsData DataTable.use(DT) const dataTable = newsData const dataColumns = [ { title: 'No', data: 'id' }, { title: 'Tanggal Konten', data: 'created_at' }, { title: 'Nama Penulis', data: 'author_id' }, { title: 'Judul', data: 'title' }, { title: 'Kategori', data: 'categories' }, { title: 'Tags', data: 'is_premium', render: (value: string) => { return value ? `Premium` : `Normal` }, }, { title: 'Action', data: 'id', }, ] const dataSlot = { 1: (value: string) => { return formatDate(value) }, 4: (value: TCategory[]) => { return value.map((item: { name: string }) => { return `${item.name}` }) }, 6: (value: string | number) => { return ( ) }, } const dataOptions = { paging: true, searching: true, ordering: true, info: true, } return (
{/* TODO: Filter */}
) }