2023-01-04 19:16:34 +00:00
|
|
|
import React from "react";
|
|
|
|
|
import classnames from "classnames";
|
2023-10-31 16:06:38 +00:00
|
|
|
import Graphic from "components/Graphic";
|
|
|
|
|
import { GraphicNames } from "components/graphics";
|
2023-01-04 19:16:34 +00:00
|
|
|
|
|
|
|
|
const baseClass = "empty-table";
|
|
|
|
|
|
2023-05-03 16:51:33 +00:00
|
|
|
export interface IEmptyTableProps {
|
|
|
|
|
header?: JSX.Element | string;
|
|
|
|
|
info?: JSX.Element | string;
|
|
|
|
|
additionalInfo?: JSX.Element | string;
|
2023-10-31 16:06:38 +00:00
|
|
|
graphicName?: GraphicNames;
|
2023-05-03 16:51:33 +00:00
|
|
|
primaryButton?: JSX.Element;
|
|
|
|
|
secondaryButton?: JSX.Element;
|
|
|
|
|
className?: string;
|
2025-11-07 22:30:51 +00:00
|
|
|
variant?: "mobile";
|
2023-05-03 16:51:33 +00:00
|
|
|
}
|
|
|
|
|
|
2023-01-04 19:16:34 +00:00
|
|
|
const EmptyTable = ({
|
2023-10-31 16:06:38 +00:00
|
|
|
graphicName,
|
2023-01-04 19:16:34 +00:00
|
|
|
header,
|
|
|
|
|
info,
|
|
|
|
|
additionalInfo,
|
|
|
|
|
className,
|
|
|
|
|
primaryButton,
|
|
|
|
|
secondaryButton,
|
2025-11-07 22:30:51 +00:00
|
|
|
variant,
|
2023-01-04 19:16:34 +00:00
|
|
|
}: IEmptyTableProps): JSX.Element => {
|
2025-11-07 22:30:51 +00:00
|
|
|
const emptyTableClass = classnames(`${baseClass}__container`, className, {
|
|
|
|
|
[`${baseClass}__container--mobile`]: variant === "mobile",
|
|
|
|
|
});
|
2023-01-04 19:16:34 +00:00
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<div className={emptyTableClass}>
|
2023-10-31 16:06:38 +00:00
|
|
|
{graphicName && (
|
2023-01-04 19:16:34 +00:00
|
|
|
<div className={`${baseClass}__image-wrapper`}>
|
2023-10-31 16:06:38 +00:00
|
|
|
<Graphic name={graphicName} />
|
2023-01-04 19:16:34 +00:00
|
|
|
</div>
|
|
|
|
|
)}
|
|
|
|
|
<div className={`${baseClass}__inner`}>
|
2023-01-24 17:55:43 +00:00
|
|
|
{header && <h3>{header}</h3>}
|
2023-12-09 00:54:24 +00:00
|
|
|
{info && <div className={`${baseClass}__info`}>{info}</div>}
|
|
|
|
|
{additionalInfo && (
|
|
|
|
|
<div className={`${baseClass}__additional-info`}>
|
|
|
|
|
{additionalInfo}
|
|
|
|
|
</div>
|
|
|
|
|
)}
|
2023-01-04 19:16:34 +00:00
|
|
|
</div>
|
|
|
|
|
{primaryButton && (
|
|
|
|
|
<div className={`${baseClass}__cta-buttons`}>
|
|
|
|
|
{primaryButton}
|
|
|
|
|
{secondaryButton && secondaryButton}
|
|
|
|
|
</div>
|
|
|
|
|
)}
|
|
|
|
|
</div>
|
|
|
|
|
);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export default EmptyTable;
|