feat(export): mejora en el selector de destino y manejo de exportaciones

Se actualiza el componente ExportDropdown para incluir un selector de destino que permite elegir entre diferentes perfiles de exportación, incluyendo la opción de ZIP. Se mejora la lógica de descarga y se ajusta el componente SwordProfileSelect para manejar la selección de perfiles de exportación. Además, se realizan cambios en la página Dashboard para integrar el nuevo sistema de exportación.
This commit is contained in:
Alexis
2026-06-01 13:12:55 +02:00
parent aa2e7280dc
commit 02c65bb710
13 changed files with 309 additions and 120 deletions
+13 -1
View File
@@ -129,7 +129,19 @@ async function request(path, { method = "GET", body, signal, headers } = {}) {
const detail =
payload?.detail ?? payload?.message ?? response.statusText ?? "Error";
throw new ApiError(typeof detail === "string" ? detail : "Error de API", {
const detailText = typeof detail === "string" ? detail : "Error de API";
// Sesión caducada: no bloquear rutas públicas; el backend ya ignora Bearer inválido
// en búsqueda, pero otras rutas pueden seguir devolviendo 401.
if (
response.status === 401 &&
/invalid|expired|token/i.test(detailText) &&
localStorage.getItem("orcid_auth_token")
) {
localStorage.removeItem("orcid_auth_token");
}
throw new ApiError(detailText, {
status: response.status,
payload,
});