fix: TypeScript build errors in frontend
- Fix CFDI type errors (ivaTraslado, tipoCambio, id types) - Fix sidebar navigation type errors (Role vs literal tuples) - Fix user invite type errors (UserInvite['role']) - Fix login page PlatformRole type cast
This commit is contained in:
@@ -328,10 +328,11 @@ export default function CfdiPage() {
|
||||
const [cancelSubstitution, setCancelSubstitution] = useState('');
|
||||
const [cancelling, setCancelling] = useState(false);
|
||||
|
||||
const handleViewCfdi = async (id: string) => {
|
||||
setLoadingCfdi(id);
|
||||
const handleViewCfdi = async (id: string | number) => {
|
||||
const idStr = String(id);
|
||||
setLoadingCfdi(idStr);
|
||||
try {
|
||||
const cfdi = await getCfdiById(id);
|
||||
const cfdi = await getCfdiById(idStr);
|
||||
setViewingCfdi(cfdi);
|
||||
} catch (error) {
|
||||
console.error('Error loading CFDI:', error);
|
||||
@@ -738,10 +739,11 @@ export default function CfdiPage() {
|
||||
setUploadProgress(prev => ({ ...prev, status: 'idle' }));
|
||||
};
|
||||
|
||||
const handleDelete = async (id: string) => {
|
||||
const handleDelete = async (id: string | number) => {
|
||||
const idStr = String(id);
|
||||
if (confirm('¿Eliminar este CFDI?')) {
|
||||
try {
|
||||
await deleteCfdi.mutateAsync(id);
|
||||
await deleteCfdi.mutateAsync(idStr);
|
||||
} catch (error) {
|
||||
console.error('Error deleting CFDI:', error);
|
||||
}
|
||||
@@ -776,9 +778,9 @@ export default function CfdiPage() {
|
||||
const calculateTotal = () => {
|
||||
const subtotal = formData.subtotal || 0;
|
||||
const descuento = formData.descuento || 0;
|
||||
const iva = formData.ivaTrasladoTraslado || 0;
|
||||
const iva = formData.ivaTraslado || 0;
|
||||
const isrRetencion = formData.isrRetencion || 0;
|
||||
const ivaRetencion = formData.ivaTrasladoRetencion || 0;
|
||||
const ivaRetencion = formData.ivaRetencion || 0;
|
||||
return subtotal - descuento + iva - isrRetencion - ivaRetencion;
|
||||
};
|
||||
|
||||
@@ -1642,10 +1644,10 @@ export default function CfdiPage() {
|
||||
variant="ghost"
|
||||
size="icon"
|
||||
onClick={() => handleViewCfdi(cfdi.id)}
|
||||
disabled={loadingCfdi === cfdi.id}
|
||||
disabled={loadingCfdi === String(cfdi.id)}
|
||||
title="Ver factura"
|
||||
>
|
||||
{loadingCfdi === cfdi.id ? (
|
||||
{loadingCfdi === String(cfdi.id) ? (
|
||||
<Loader2 className="h-4 w-4 animate-spin" />
|
||||
) : (
|
||||
<Eye className="h-4 w-4" />
|
||||
|
||||
Reference in New Issue
Block a user