08-10 - Latest
This commit is contained in:
parent
cf7a516d38
commit
c94ebd72a2
4
.env
4
.env
|
|
@ -6,5 +6,5 @@
|
||||||
# VITE_BASE_URI="https://smashing-albacore-engaging.ngrok-free.app"
|
# VITE_BASE_URI="https://smashing-albacore-engaging.ngrok-free.app"
|
||||||
# VITE_BASE_URI="https://basically-polished-yeti.ngrok-free.app"
|
# VITE_BASE_URI="https://basically-polished-yeti.ngrok-free.app"
|
||||||
# VITE_BASE_URI="https://sacha-countryfied-evolutionistically.ngrok-free.dev"
|
# VITE_BASE_URI="https://sacha-countryfied-evolutionistically.ngrok-free.dev"
|
||||||
VITE_BASE_URI="http://52.10.89.255"
|
VITE_BASE_URI="https://web.signmadeasy.app"
|
||||||
VITE_SSE_URI="http://52.10.89.255"
|
VITE_SSE_URI="https://web.signmadeasy.app"
|
||||||
|
|
@ -704,76 +704,77 @@ const ClientSignCon: React.FC<ClientSignConProps> = ({
|
||||||
case 'SAVED':
|
case 'SAVED':
|
||||||
return (
|
return (
|
||||||
<div className="h-full flex flex-col">
|
<div className="h-full flex flex-col">
|
||||||
<div className="mb-6">
|
{/* Header */}
|
||||||
<h2 className="text-xl font-semibold text-gray-900 mb-2">Saved Signature's</h2>
|
<div className="mb-6 px-4 sm:px-6">
|
||||||
{/* <p className="text-sm text-gray-600">Select from pre-designed signature styles</p> */}
|
<h2 className="text-2xl font-semibold text-gray-900 mb-2">Saved Signatures</h2>
|
||||||
|
<p className="text-sm text-gray-600">Select from your pre-saved signatures</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="flex-1 overflow-y-auto">
|
{/* Signatures List */}
|
||||||
|
<div className="flex-1 overflow-y-auto px-2 sm:px-6">
|
||||||
<div className="space-y-4">
|
<div className="space-y-4">
|
||||||
{preSaveSignatures.map((signature) => (
|
{preSaveSignatures.map((signature) => (
|
||||||
<div key={signature?.id} className="grid grid-cols-12 gap-4 px-6 py-9 hover:bg-gray-50 transition-colors duration-150">
|
<div
|
||||||
{/* Signature Column */}
|
key={signature?.id}
|
||||||
<div className="col-span-5">
|
className="flex flex-col md:flex-row md:space-x-4 bg-white rounded-xl border border-gray-200 p-4 hover:shadow-lg transition-shadow duration-200"
|
||||||
<div className="flex flex-col space-y-2 relative ps-6 border-l-3 border-blue-600 rounded-bl-2xl rounded-tl-2xl">
|
>
|
||||||
<div className="text-sm text-gray-600 font-medium mb-1">
|
{/* Full Signature */}
|
||||||
Signed by:
|
<div className="flex-1 flex flex-col space-y-2 border-l-4 border-blue-500 rounded-l-xl pl-4 md:pl-6 py-2">
|
||||||
</div>
|
<span className="text-sm font-medium text-gray-600">Signed by:</span>
|
||||||
|
|
||||||
{/* Signature Image or Fallback Text */}
|
<div className="bg-gray-50 rounded-lg p-2 flex items-center justify-center min-h-[50px]">
|
||||||
<div className="bg-white rounded-lg p-1 flex items-center justify-center">
|
{signature?.signatureType !== 'SELECT' && signature?.signatureBlob ? (
|
||||||
{signature?.signatureType !== 'SELECT' ? (
|
|
||||||
<img
|
<img
|
||||||
src={`data:${signature?.signatureMimeType};base64,${signature?.signatureBlob}`}
|
src={`data:${signature?.signatureMimeType};base64,${signature?.signatureBlob}`}
|
||||||
className="h-[50px] w-[250px] object-contain"
|
className="max-h-[60px] w-full object-contain"
|
||||||
alt="Signature"
|
alt={`${signature?.firstName ?? ''} ${signature?.lastName ?? ''} signature`}
|
||||||
/>
|
/>
|
||||||
) : (
|
) : (
|
||||||
renderSignatureText(signature?.signatureType, signature?.font, signature?.firstName, signature?.lastName, 'name')
|
renderSignatureText(
|
||||||
|
signature?.signatureType,
|
||||||
|
signature?.font,
|
||||||
|
signature?.firstName,
|
||||||
|
signature?.lastName,
|
||||||
|
'name'
|
||||||
|
)
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* Name */}
|
<span className="text-xs text-gray-500 truncate">{signature?.signatureHash ?? ' '}</span>
|
||||||
<div className="text-xs text-gray-500 truncate">
|
|
||||||
{signature?.signatureHash ?? ' '}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* Initial Column */}
|
{/* Initials */}
|
||||||
<div className="col-span-5">
|
<div className="flex-1 flex flex-col space-y-2 border-l-4 border-green-500 rounded-l-xl pl-4 md:pl-6 py-2 mt-4 md:mt-0">
|
||||||
<div className="flex flex-col space-y-2 relative ps-6 border-l-3 border-green-600 rounded-bl-2xl rounded-tl-2xl">
|
<span className="text-sm font-medium text-gray-600">Initials</span>
|
||||||
<div className="text-sm text-gray-600 font-medium mb-1">
|
|
||||||
Initials
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{/* Initials Image */}
|
<div className="bg-gray-50 rounded-lg p-2 flex items-center justify-center min-h-[50px]">
|
||||||
<div className="bg-white rounded-lg p-1 flex items-center justify-center">
|
{signature?.signatureType !== 'SELECT' && signature?.initialsBlob ? (
|
||||||
{signature?.signatureType !== 'SELECT' ? (
|
|
||||||
<img
|
<img
|
||||||
src={`data:${signature.initialsMimeType};base64,${signature.initialsBlob}`}
|
src={`data:${signature?.initialsMimeType};base64,${signature?.initialsBlob}`}
|
||||||
className="h-[50px] object-contain"
|
className="max-h-[60px] w-full object-contain"
|
||||||
alt="Initials"
|
alt={`${signature?.firstName ?? ''} ${signature?.lastName ?? ''} initials`}
|
||||||
/>
|
/>
|
||||||
) : (
|
) : (
|
||||||
renderSignatureText(signature?.signatureType, signature?.font, signature?.firstName, signature?.lastName, 'initials')
|
renderSignatureText(
|
||||||
|
signature?.signatureType,
|
||||||
|
signature?.font,
|
||||||
|
signature?.firstName,
|
||||||
|
signature?.lastName,
|
||||||
|
'initials'
|
||||||
|
)
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* Optional initials hash or font */}
|
<span className="text-xs text-gray-500 truncate">{signature?.initialsHash ?? ' '}</span>
|
||||||
<div className="text-xs text-gray-500 truncate">
|
|
||||||
{signature?.initialsHash || " "}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
))}
|
))}
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -205,8 +205,8 @@ const TransactionView = () => {
|
||||||
{"message" in recipient && <p className="text-xs text-gray-500 italic">
|
{"message" in recipient && <p className="text-xs text-gray-500 italic">
|
||||||
{recipient.message}
|
{recipient.message}
|
||||||
</p>}
|
</p>}
|
||||||
{"declineReason" in recipient && <p className="text-xs text-gray-500 italic">
|
{"declinedReason" in recipient && <p className="text-xs text-gray-500 italic">
|
||||||
{recipient.declineReason}
|
{recipient.declinedReason}
|
||||||
</p>}
|
</p>}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue