Skip to content

Commit

Permalink
fix: 🐛 resolve import of json files using assert type
Browse files Browse the repository at this point in the history
  • Loading branch information
luffynando committed Jan 27, 2025
1 parent 6ced138 commit a08bb35
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 35 deletions.
37 changes: 2 additions & 35 deletions src/builders/abstract_pdf_maker_builder.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import { wrapCatalog } from '@nodecfdi/sat-micro-catalogs';
import {
type BufferOptions,
type CustomTableLayout,
Expand Down Expand Up @@ -70,41 +69,9 @@ export default class AbstractPdfMakerBuilder<T extends AbstractInvoiceData> {
}

protected async defaultCatalogs(): Promise<CatalogsData> {
const cfdi40ImpuestosRaw = await import('@nodecfdi/sat-micro-catalogs/raw/cfdi_40_impuestos');
const cfdi40ObjetosImpuestosRaw = await import('@nodecfdi/sat-micro-catalogs/raw/cfdi_40_objetos_impuestos');
const cfdi40UsosCfdiRaw = await import('@nodecfdi/sat-micro-catalogs/raw/cfdi_40_usos_cfdi');
const cfdi40RegimenesFiscalesRaw = await import('@nodecfdi/sat-micro-catalogs/raw/cfdi_40_regimenes_fiscales');
const cfdi40TiposRelacionesRaw = await import('@nodecfdi/sat-micro-catalogs/raw/cfdi_40_tipos_relaciones');
const cfdi40MesesRaw = await import('@nodecfdi/sat-micro-catalogs/raw/cfdi_40_meses');
const cfdi40PeriodicidadesRaw = await import('@nodecfdi/sat-micro-catalogs/raw/cfdi_40_periodicidades');
const cfdi40ExportacionesRaw = await import('@nodecfdi/sat-micro-catalogs/raw/cfdi_40_exportaciones');
const cfdi40MetodosPagoRaw = await import('@nodecfdi/sat-micro-catalogs/raw/cfdi_40_metodos_pago');
const cfdi40FormasPagoRaw = await import('@nodecfdi/sat-micro-catalogs/raw/cfdi_40_formas_pago');
const cfdi40TiposComprobantesRaw = await import('@nodecfdi/sat-micro-catalogs/raw/cfdi_40_tipos_comprobantes');
const pagosTiposCadenaPagoRaw = await import('@nodecfdi/sat-micro-catalogs/raw/pagos_tipos_cadena_pago');
const retenciones20ClavesRetencionRaw = await import('@nodecfdi/sat-micro-catalogs/raw/ret_20_claves_retencion');
const retenciones20PeriodicidadesRaw = await import('@nodecfdi/sat-micro-catalogs/raw/ret_20_periodicidades');
const retenciones20PeriodosRaw = await import('@nodecfdi/sat-micro-catalogs/raw/ret_20_periodos');
const retenciones20TiposPagoRaw = await import('@nodecfdi/sat-micro-catalogs/raw/ret_20_tipos_pago_retencion');
const catalogs = await import('./default_catalogs.js');

return {
cfdi40Impuestos: wrapCatalog(cfdi40ImpuestosRaw.default),
cfdi40ObjetosImpuestos: wrapCatalog(cfdi40ObjetosImpuestosRaw.default),
cfdi40UsosCfdi: wrapCatalog(cfdi40UsosCfdiRaw.default),
cfdi40RegimenesFiscales: wrapCatalog(cfdi40RegimenesFiscalesRaw.default),
cfdi40TiposRelaciones: wrapCatalog(cfdi40TiposRelacionesRaw.default),
cfdi40Meses: wrapCatalog(cfdi40MesesRaw.default),
cfdi40Periodicidades: wrapCatalog(cfdi40PeriodicidadesRaw.default),
cfdi40Exportaciones: wrapCatalog(cfdi40ExportacionesRaw.default),
cfdi40MetodosPago: wrapCatalog(cfdi40MetodosPagoRaw.default),
cfdi40FormasPago: wrapCatalog(cfdi40FormasPagoRaw.default),
cfdi40TiposComprobantes: wrapCatalog(cfdi40TiposComprobantesRaw.default),
pagosTiposCadenaPago: wrapCatalog(pagosTiposCadenaPagoRaw.default),
retenciones20ClavesRetencion: wrapCatalog(retenciones20ClavesRetencionRaw.default),
retenciones20Periodicidades: wrapCatalog(retenciones20PeriodicidadesRaw.default),
retenciones20Periodos: wrapCatalog(retenciones20PeriodosRaw.default),
retenciones20TiposPago: wrapCatalog(retenciones20TiposPagoRaw.default),
};
return catalogs.default;
}

public layouts(): Record<string, CustomTableLayout> {
Expand Down
39 changes: 39 additions & 0 deletions src/builders/default_catalogs.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import { wrapCatalog } from '@nodecfdi/sat-micro-catalogs';
import cfdi40ExportacionesRaw from '@nodecfdi/sat-micro-catalogs/raw/cfdi_40_exportaciones' assert { type: 'json' };
import cfdi40FormasPagoRaw from '@nodecfdi/sat-micro-catalogs/raw/cfdi_40_formas_pago' assert { type: 'json' };
import cfdi40ImpuestosRaw from '@nodecfdi/sat-micro-catalogs/raw/cfdi_40_impuestos' assert { type: 'json' };
import cfdi40MesesRaw from '@nodecfdi/sat-micro-catalogs/raw/cfdi_40_meses' assert { type: 'json' };
import cfdi40MetodosPagoRaw from '@nodecfdi/sat-micro-catalogs/raw/cfdi_40_metodos_pago' assert { type: 'json' };
import cfdi40ObjetosImpuestosRaw from '@nodecfdi/sat-micro-catalogs/raw/cfdi_40_objetos_impuestos' assert { type: 'json' };
import cfdi40PeriodicidadesRaw from '@nodecfdi/sat-micro-catalogs/raw/cfdi_40_periodicidades' assert { type: 'json' };
import cfdi40RegimenesFiscalesRaw from '@nodecfdi/sat-micro-catalogs/raw/cfdi_40_regimenes_fiscales' assert { type: 'json' };
import cfdi40TiposComprobantesRaw from '@nodecfdi/sat-micro-catalogs/raw/cfdi_40_tipos_comprobantes' assert { type: 'json' };
import cfdi40TiposRelacionesRaw from '@nodecfdi/sat-micro-catalogs/raw/cfdi_40_tipos_relaciones' assert { type: 'json' };
import cfdi40UsosCfdiRaw from '@nodecfdi/sat-micro-catalogs/raw/cfdi_40_usos_cfdi' assert { type: 'json' };
import pagosTiposCadenaPagoRaw from '@nodecfdi/sat-micro-catalogs/raw/pagos_tipos_cadena_pago' assert { type: 'json' };
import retenciones20ClavesRetencionRaw from '@nodecfdi/sat-micro-catalogs/raw/ret_20_claves_retencion' assert { type: 'json' };
import retenciones20PeriodicidadesRaw from '@nodecfdi/sat-micro-catalogs/raw/ret_20_periodicidades' assert { type: 'json' };
import retenciones20PeriodosRaw from '@nodecfdi/sat-micro-catalogs/raw/ret_20_periodos' assert { type: 'json' };
import retenciones20TiposPagoRaw from '@nodecfdi/sat-micro-catalogs/raw/ret_20_tipos_pago_retencion' assert { type: 'json' };
import { type CatalogsData } from '../types.js';

const catalogs: CatalogsData = {
cfdi40Impuestos: wrapCatalog(cfdi40ImpuestosRaw),
cfdi40ObjetosImpuestos: wrapCatalog(cfdi40ObjetosImpuestosRaw),
cfdi40UsosCfdi: wrapCatalog(cfdi40UsosCfdiRaw),
cfdi40RegimenesFiscales: wrapCatalog(cfdi40RegimenesFiscalesRaw),
cfdi40TiposRelaciones: wrapCatalog(cfdi40TiposRelacionesRaw),
cfdi40Meses: wrapCatalog(cfdi40MesesRaw),
cfdi40Periodicidades: wrapCatalog(cfdi40PeriodicidadesRaw),
cfdi40Exportaciones: wrapCatalog(cfdi40ExportacionesRaw),
cfdi40MetodosPago: wrapCatalog(cfdi40MetodosPagoRaw),
cfdi40FormasPago: wrapCatalog(cfdi40FormasPagoRaw),
cfdi40TiposComprobantes: wrapCatalog(cfdi40TiposComprobantesRaw),
pagosTiposCadenaPago: wrapCatalog(pagosTiposCadenaPagoRaw),
retenciones20ClavesRetencion: wrapCatalog(retenciones20ClavesRetencionRaw),
retenciones20Periodicidades: wrapCatalog(retenciones20PeriodicidadesRaw),
retenciones20Periodos: wrapCatalog(retenciones20PeriodosRaw),
retenciones20TiposPago: wrapCatalog(retenciones20TiposPagoRaw),
};

export default catalogs;

0 comments on commit a08bb35

Please sign in to comment.