130 lines
4.3 KiB
JavaScript
130 lines
4.3 KiB
JavaScript
"use client";
|
|
import DataTable from "@/core/components/DataTable";
|
|
import { useMemo } from "react";
|
|
|
|
function HomeComponent() {
|
|
const columns = useMemo(
|
|
() => [
|
|
{
|
|
accessorKey: "fullname",
|
|
header: "نام کامل",
|
|
id: "fullname",
|
|
columns: [
|
|
{
|
|
accessorKey: "name.firstName",
|
|
header: "نام",
|
|
id: "firstName",
|
|
enableColumnFilter: true,
|
|
datatype: "text",
|
|
filterFn: "contains",
|
|
enableClickToCopy: true,
|
|
columnFilterModeOptions: ["equals", "notEquals", "contains"],
|
|
},
|
|
{
|
|
accessorKey: "name.lastName",
|
|
header: "نام خانوادگی",
|
|
id: "lastName",
|
|
enableColumnFilter: true,
|
|
datatype: "text",
|
|
filterFn: "equals",
|
|
columnFilterModeOptions: ["equals", "notEquals", "contains"],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
accessorKey: "address",
|
|
header: "آدرس",
|
|
id: "address",
|
|
enableColumnFilter: true,
|
|
datatype: "text",
|
|
filterFn: "notEquals",
|
|
columnFilterModeOptions: ["equals", "notEquals", "contains"],
|
|
},
|
|
{
|
|
accessorKey: "city",
|
|
header: "شهر",
|
|
id: "city",
|
|
enableColumnFilter: true,
|
|
datatype: "text",
|
|
filterFn: "equals",
|
|
columnFilterModeOptions: ["equals", "notEquals", "contains", "lessThan", "greaterThan", "fuzzy"],
|
|
},
|
|
{
|
|
accessorKey: "state",
|
|
header: "وضعیت",
|
|
id: "state",
|
|
enableColumnFilter: true,
|
|
datatype: "text",
|
|
filterFn: "contains",
|
|
columnFilterModeOptions: ["equals", "notEquals", "contains"],
|
|
},
|
|
{
|
|
accessorKey: "price",
|
|
header: "محدوده",
|
|
id: "price",
|
|
enableColumnFilter: true,
|
|
datatype: "numeric",
|
|
filterFn: "equals",
|
|
columnFilterModeOptions: ["equals", "notEquals"],
|
|
},
|
|
{
|
|
accessorKey: "created_at",
|
|
header: "تاریخ ساخت",
|
|
id: "created_at",
|
|
enableColumnFilter: true,
|
|
datatype: "date",
|
|
filterFn: "between",
|
|
},
|
|
{
|
|
accessorKey: "updated_at",
|
|
header: "تاریخ بروزرسانی",
|
|
id: "updated_at",
|
|
enableColumnFilter: true,
|
|
datatype: "date",
|
|
filterFn: "equals",
|
|
},
|
|
{
|
|
accessorKey: "company",
|
|
header: "نام شرکت",
|
|
id: "company",
|
|
enableColumnFilter: true,
|
|
datatype: "numeric",
|
|
filterFn: "equals",
|
|
columnSelectOption: [
|
|
{ value: 1, label: "وایتل" },
|
|
{ value: 2, label: "اسنپ" },
|
|
{ value: 3, label: "تپسی" },
|
|
],
|
|
},
|
|
{
|
|
accessorKey: "area",
|
|
header: "منطقه",
|
|
id: "area",
|
|
enableColumnFilter: true,
|
|
datatype: "array",
|
|
filterFn: "equals",
|
|
columnSelectOption: [
|
|
{ value: 1, label: "وایتل" },
|
|
{ value: 2, label: "اسنپ" },
|
|
{ value: 3, label: "تپسی" },
|
|
],
|
|
},
|
|
],
|
|
[]
|
|
);
|
|
|
|
return (
|
|
<>
|
|
<DataTable
|
|
columns={columns}
|
|
table_url={"api"}
|
|
user_id={0}
|
|
page_name={"testPage"}
|
|
table_name={"testTable"}
|
|
/>
|
|
</>
|
|
);
|
|
}
|
|
|
|
export default HomeComponent;
|