Conteúdo da parceria
edit.setData('title', e.target.value)
}
/>
edit.setData(
'organization_id',
e.target.value,
)
}
>
Sem organização indicada
{form.data.organization_id &&
!p.organizations.some(
(organization) =>
String(organization.id) ===
form.data.organization_id,
) && (
Organização anteriormente indicada —
fora da lista actual
)}
{p.organizations.map((x) => (
{x.name}
))}
A autoria mantém-se. Sem organização ligada, só
o proponente originalmente registado pode editar
esta proposta.
edit.setData('kind', e.target.value)
}
>
Procura
Oferta
edit.setData(
'partnership_type',
e.target.value,
)
}
>
Por definir
{form.data.partnership_type &&
!Object.hasOwn(
p.types,
form.data.partnership_type,
) && (
Tipo anteriormente indicado — fora
da configuração actual
)}
{Object.entries(p.types).map(([k, v]) => (
{v}
))}
edit.setData('sector_id', e.target.value)
}
>
Por definir
{form.data.sector_id &&
!p.sectors.some(
(sector) =>
String(sector.id) ===
form.data.sector_id,
) && (
Sector anteriormente indicado — fora
da lista actual
)}
{p.sectors.map((x) => (
{x.name}
))}
Critérios obrigatórios expressos da proposta
Marque apenas condições necessárias. Critérios
desejáveis servem a pontuação. Informação
desconhecida exige esclarecimento e não constitui
incumprimento comprovado.
{Object.entries(p.criteria).map(([k, v]) => (
edit.setData('payload', (previous) => ({
...previous,
mandatory: e.target.checked
? [...previous.mandatory, k]
: previous.mandatory.filter(
(x) => x !== k,
),
}))
}
/>{' '}
{v}
))}
{form.data.payload.mandatory
.filter((code) => !Object.hasOwn(p.criteria, code))
.map((code) => (
Critério anteriormente indicado — fora da
configuração actual: {code}. Retirá-lo da
preparação altera apenas a próxima gravação; o
histórico mantém-se.{' '}
edit.setData('payload', (previous) => ({
...previous,
mandatory:
previous.mandatory.filter(
(value) => value !== code,
),
}))
}
>
Retirar da preparação
))}
edit.setData('deadline', e.target.value)
}
/>
edit.setData('payload', (previous) => ({
...previous,
confidentiality: e.target.value,
}))
}
>
Público após moderação
Resumo público; detalhes privados
Localizações e abrangência
A localização de uma origem fica como contexto. Só
acrescente uma localização própria com fonte; não se
deduz por proximidade ou pertença a cluster.
setPlace(e.target.value)}
>
Escolher território
{p.territories.map((x) => (
{x.name} · {x.location_type}
))}
setRole(e.target.value)}
>
Principal
Área de atuação
Abrangência
setSource(e.target.value)}
/>
{
edit.setData('locations', (previous) =>
previous.some(
(x) =>
x.geo_location_id === place &&
x.role === role,
)
? previous
: [
...previous,
{
geo_location_id: place,
role,
source_reference: source,
},
],
);
}}
>
Acrescentar localização
{form.data.locations.map((l, i) => (
{
p.territories.find(
(t) => t.id === l.geo_location_id,
)?.name
}{' '}
· {l.role} · {l.source_reference}{' '}
edit.setData('locations', (previous) =>
previous.filter(
(item) =>
item.geo_location_id !==
l.geo_location_id ||
item.role !== l.role,
),
)
}
>
Remover
))}
Registos de origem
setOrigin(e.target.value)}
>
Escolher empresa, investimento, projeto,
cluster, zona ou ficha
{p.sources?.map((x) => (
{x.title}
))}
{
const [type, target_id] = origin.split(':');
edit.setData('origins', (previous) =>
previous.some(
(item) =>
item.type === type &&
item.target_id === target_id,
)
? previous
: [...previous, { type, target_id }],
);
}}
>
Ligar origem
{form.data.origins.map((o, i) => (
{p.sources?.find(
(x) =>
x.type === o.type &&
x.target_id === o.target_id,
)?.title ?? 'Origem documental ligada'}{' '}
edit.setData('origins', (previous) =>
previous.filter(
(item) =>
item.type !== o.type ||
item.target_id !==
o.target_id,
),
)
}
>
Remover
))}
edit.setData('payload', (previous) => ({
...previous,
consent: e.target.checked,
}))
}
/>{' '}
Autorizo submeter o conteúdo indicado para divulgação no
âmbito escolhido. Não confirma verificação ou
certificação.
{edit.retryingCreation
? 'Recuperar gravação anterior'
: edit.current?.status === 'published'
? 'Guardar revisão em rascunho'
: 'Guardar rascunho'}
{p.record && (
Pré-visualizar e submeter
)}