'use client'; import React from 'react'; import { FieldWithSignature } from '@documenso/prisma/types/field-with-signature'; import { cn } from '@documenso/ui/lib/utils'; import { Card, CardContent } from '@documenso/ui/primitives/card'; import { useFieldPageCoords } from '~/hooks/use-field-page-coords'; export type SignatureFieldProps = { field: FieldWithSignature; loading?: boolean; children: React.ReactNode; onSign?: () => Promise | void; onRemove?: () => Promise | void; }; export const SigningFieldContainer = ({ field, loading, onSign, onRemove, children, }: SignatureFieldProps) => { const coords = useFieldPageCoords(field); const onSignFieldClick = async () => { if (field.inserted) { return; } await onSign?.(); }; const onRemoveSignedFieldClick = async () => { if (!field.inserted) { return; } await onRemove?.(); }; return (
{!field.inserted && !loading && ( )} {children}
); };