Receber documentos privados e locais de disponibilidade nas candidaturas
tests / ci (push) Canceled after 0s
tests / ci (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
export type AvailabilityLocation = {
|
||||
province: string;
|
||||
district: string;
|
||||
locality: string;
|
||||
};
|
||||
|
||||
export function CandidateAvailability({
|
||||
data,
|
||||
}: {
|
||||
data?: {
|
||||
availability?: AvailabilityLocation;
|
||||
additional_availability?: AvailabilityLocation[];
|
||||
};
|
||||
}) {
|
||||
if (!data?.availability) return null;
|
||||
return (
|
||||
<section className="space-y-2">
|
||||
<h3 className="font-semibold">
|
||||
Locais de disponibilidade do perfil enviado
|
||||
</h3>
|
||||
<ul className="list-inside list-disc">
|
||||
{[
|
||||
data.availability,
|
||||
...(data.additional_availability ?? []),
|
||||
].map((location, index) => (
|
||||
<li key={index}>
|
||||
{location.province} · {location.district} ·{' '}
|
||||
{location.locality}
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</section>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
export type ReceivedDocument = {
|
||||
key: string;
|
||||
name: string;
|
||||
size: number;
|
||||
sha256: string;
|
||||
verification: string;
|
||||
};
|
||||
|
||||
export function CandidateDocumentList({
|
||||
documents,
|
||||
baseUrl,
|
||||
}: {
|
||||
documents?: Record<string, ReceivedDocument> | [];
|
||||
baseUrl: string;
|
||||
}) {
|
||||
if (!documents || Object.keys(documents).length === 0) return null;
|
||||
return (
|
||||
<section className="space-y-2">
|
||||
<h3 className="font-semibold">Documentos recebidos</h3>
|
||||
<ul className="space-y-2">
|
||||
{Object.values(documents).map((document) => (
|
||||
<li key={document.key}>
|
||||
<a
|
||||
className="underline"
|
||||
href={`${baseUrl}/documentos/${document.key}`}
|
||||
>
|
||||
{document.name}
|
||||
</a>{' '}
|
||||
· {document.size} bytes
|
||||
<p className="text-xs break-all">
|
||||
SHA-256: {document.sha256}
|
||||
</p>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
<p className="text-sm">
|
||||
Formato conferido na recepção. O conteúdo e a autenticidade
|
||||
dependem da análise documental.
|
||||
</p>
|
||||
</section>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user