"use client"; import React from "react"; import { TableList } from "./TableList"; import { useLocal } from "@/lib/utils/use-local"; import get from "lodash.get"; import { TabHeaderBetter } from "../tablist/TabHeaderBetter"; import { getNumber } from "@/lib/utils/getNumber"; import { BreadcrumbBetterLink } from "../ui/breadcrumb-link"; export const TableUI: React.FC = ({ tabHeader, name, modeTab, column, align = "center", onLoad, take = 20, header, disabledPagination, disabledHeader, disabledHeadTable, hiddenNoRow, disabledHoverRow, onInit, onCount, fm, mode, feature, onChange, delete_name, title, tab, onTab, breadcrumb, ready = true, }) => { const local = useLocal({ tab: get(tab, "[0].id"), table: null as any, show: true as boolean, }); if (!ready) { return (
); } return (
{title}
{breadcrumb?.length ? ( ) : ( <> )}
{tab?.length && (
{ return (
{modeTab !== "only-title" ? (
{getNumber(row?.count) > 999 ? "99+" : getNumber(row?.count)}
) : ( <> )}
{modeTab !== "only-title" ? (
Total
) : ( <> )}
{row.name}
); }} onValue={(row: any) => { return row.id; }} onLoad={tab} onChange={(tab: any) => { local.tab = tab?.id; local.render(); if (typeof onTab === "function") { onTab(local.tab); } local.show = false; local.render(); setTimeout(() => { local.show = true; local.render(); }, 100); if (typeof local?.table?.refresh === "function") { { local.table.refresh(); } } }} tabContent={(data: any) => { return <>; }} />
)}
{tab?.length ? ( typeof tabHeader === "function" ? ( tabHeader(local) ) : ( tabHeader ) ) : ( <> )}
{local.show ? ( { local.table = e; local.render(); if (typeof onInit === "function") { onInit(e); } }} /> ) : ( <> )}
); };