// Consultar el estado de un task por task_id export async function fetchTaskStatus(task_id) { const url = `${import.meta.env.VITE_EFC_API_URL}/datastage/datastages/task-status/?task_id=${encodeURIComponent(task_id)}`; const res = await getWithAuth(url); if (!res.ok) throw new Error('Error al consultar el estado del task'); return res.json(); } import.meta.env; import { getWithAuth, postWithAuth, patchWithAuth, deleteWithAuth } from '../fetchWithAuth'; const API_BASE = `${import.meta.env.VITE_EFC_API_URL}/datastage/datastages/`; export async function fetchDatastages() { const res = await getWithAuth(API_BASE); if (!res.ok) throw new Error('Error al obtener datastages'); const data = await res.json(); // Si la respuesta es paginada, devolver results if (data && Array.isArray(data.results)) return data.results; // Si la respuesta no es un array, devolver array vacĂ­o if (!Array.isArray(data)) return []; return data; } export async function fetchDatastageDetail(id) { const res = await getWithAuth(`${API_BASE}${id}/`); if (!res.ok) throw new Error('Error al obtener detalle'); return res.json(); } export async function createDatastage(data) { const res = await postWithAuth(API_BASE, data); if (!res.ok) throw new Error('Error al crear datastage'); return res.json(); } export async function updateDatastage(id, data) { const res = await patchWithAuth(`${API_BASE}${id}/`, data); if (!res.ok) throw new Error('Error al actualizar datastage'); return res.json(); } export async function deleteDatastage(id) { const res = await deleteWithAuth(`${API_BASE}${id}/`); if (!res.ok) throw new Error('Error al eliminar datastage'); return true; }