import { Carousel } from "antd";
import { useTranslation } from "react-i18next";
import { HasFeatureAccess } from "../feature-wrapper/feature-wrapper.component";
import { GenerateThumbUrl } from "../jobs-documents-gallery/job-documents.utility";
import UpsellComponent, { upsellEnum } from "../upsell/upsell.component";
import CardTemplate from "./job-detail-cards.template.component";

export default function JobDetailCardsDocumentsComponent({ loading, data, bodyshop }) {
  const { t } = useTranslation();
  const hasMediaAccess = HasFeatureAccess({ bodyshop, featureName: "media" });

  if (!data)
    return (
      <CardTemplate loading={loading} title={t("jobs.labels.cards.documents")}>
        null
      </CardTemplate>
    );

  return (
    <CardTemplate
      loading={loading}
      title={t("jobs.labels.cards.documents")}
      extraLink={`/manage/jobs/${data.id}?tab=documents`}
    >
      {!hasMediaAccess && (
        <UpsellComponent disableMask upsell={upsellEnum().media.general}>
          {data.documents.length > 0 ? (
            <Carousel autoplay>
              {data.documents.map((item) => (
                <img key={item.id} src={GenerateThumbUrl(item)} alt={item.name} />
              ))}
            </Carousel>
          ) : (
            <div>{t("documents.errors.nodocuments")}</div>
          )}
        </UpsellComponent>
      )}
    </CardTemplate>
  );
}
