Estado: inventario de la estructura actual. Los componentes y servicios mencionados todavía están en uso potencial; esta documentación no los marca como deprecados en código.
Se revisó libs/shared/ui/src/lib/modals/, incluidos components/, data-access/, domain/ y las exportaciones de libs/shared/ui/src/index.ts. También se consideró el selector genérico de libs/shared/ui/src/lib/select-dialog/, que está fuera de la carpeta modals y es utilizado por varios servicios de selección.
La carpeta contiene dos familias principales:
SelectDialogComponent y coordinan una consulta paginada y el resultado seleccionado.| Diálogo | Ubicación | Responsabilidad observada |
|---|---|---|
AccountingAccountPopupComponent |
components/accounting-account-popup/ |
Popup incorporado al selector para consultar y mostrar el detalle/cuentas asociadas a un formato contable. Se usa desde select-dialog; no es otro selector independiente. |
ConfirmReasonModalComponent |
components/confirm-reason-modal/ |
Captura una razón o justificación dentro de un diálogo. Es UI/formulario y no debería ser dueño del acceso a API. |
CuentaDeduccionDialogComponent |
components/cuenta-deduccion-modal/ |
Flujo especializado para gestionar/seleccionar cuentas de deducción, con lógica de formulario y confirmación. Tiene servicio de apoyo en data-access/cuenta-deduccion-modal/. |
DiferidoDialogComponent |
components/diferidos-modal/ |
Interacción especializada del dominio contable de diferidos; contiene formulario, reglas de pantalla y confirmaciones. Por ser un flujo de contabilidad, sus contratos y acceso a datos deben migrar a las capas de contabilidad correspondientes. |
FormatoContableDialogComponent |
components/formato-contable-modal/ |
Gestión/selección de formatos contables; contiene UI especializada y consume FormatoContableService, que además ofrece consultas y operaciones del recurso. |
ImportarAsientoDialogComponent |
components/importar-asiento-dialog/ |
UI para importar asientos contables, capturar/validar información y presentar el resultado. Usa ImportarAsientoService para la integración. |
ImportarGeneralDialogComponent |
components/importar-general-dialog/ |
UI común para carga/importación de archivos y presentación de validación/resultado. Recibe datos/configuración de importación; sus tokens y modelo están junto a la UI. |
Los detalles de las operaciones de los diálogos contables deben verificarse en sus archivos fuente antes de modificarlos; esta tabla clasifica la responsabilidad arquitectónica observada y no constituye un contrato nuevo de API.
SelectDialogComponentLos nombres siguientes corresponden a las carpetas bajo modals/data-access/. En general, el servicio *-modal.service.ts configura el título, las columnas, la búsqueda, la selección y el mapeo del resultado; el servicio de recurso cercano ejecuta la consulta HTTP. No todos los nombres son uniformes y algunas carpetas tienen una sola clase que hace ambas tareas.
| Selector / recurso | Carpeta actual | Responsabilidad |
|---|---|---|
| Cuentas asociadas a formatos contables | accounting-accounts/ |
Consulta el detalle de cuentas de un formato contable para el popup interno. Actualmente AccountingAccountsService usa HttpClient y tiene una URL de API DEV fija; debe migrarse a configuración de API/HttpService del estándar. |
| Actividad económica | actividad-economica/ |
Selección de una actividad económica desde el catálogo. Hay servicio modal y servicio de recurso. |
| Artículos | articulos-modal/ |
Búsqueda/selección de artículos, con filtros opcionales como tipo de artículo o disponibilidad de stock; tiene cliente HTTP separado. |
| Cuentas bancarias | bank-account-modal/ |
Selector de cuentas bancarias/pago y su consulta paginada. |
| Bancos / entidades financieras | bank-modal/ |
Selección de banco o entidad vinculada a terceros; cuenta con servicio modal y servicio de consulta. |
| Centros de costos | centro-costos-modal/ |
Consulta y selección paginada de centros de costos. |
| Ciudades | ciudades-modal/ |
Selector de ciudad y servicio de catálogo. |
| Conceptos de facturación | conceptos-facturacion/ |
Consulta paginada del catálogo de conceptos de facturación. |
| Conceptos contables | concepts-modal/ |
Selección de conceptos contables. Tiene configuración del selector y cliente de datos. |
| Cuenta de deducción | cuenta-deduccion-modal/ |
Acceso/soporte de datos del diálogo especializado de cuentas de deducción. |
| CUIPO | cuipo-modal/ |
Selector paginado del catálogo CUIPO; consulta y mapeo se encuentran separados (CuipoModalService y CuipoService). Hay documentación histórica en CUIPO_MODAL.md. |
| Monedas | currency/ |
Selector de moneda; servicio modal dedicado. |
| Departamentos | departamentos-modal/ |
Selector de departamento y cliente del catálogo. |
| Exportar plantilla de asiento | exportar-asiento/ |
Descarga/exportación de plantilla contable; es una acción de datos/archivo, no un modal selector. |
| Formatos contables | formato-contable-modal/ |
Búsqueda y operaciones sobre formatos contables; hay un servicio de modal y un servicio de datos con más de una operación. |
| Soporte de importación genérica | import-dialog-modal/ |
ImportDialogModalService y ImportDialogDataService centralizan partes de carga/estado de importación; debe aclararse en la migración cuál servicio conserva cada responsabilidad. |
| Importación de asiento | importar-asiento/ |
Cliente y contratos HTTP del flujo de importación de asientos. No confundir con el componente visual homónimo. |
| Conceptos de factura | invoice-concept-modal/ |
Selector de conceptos de facturación; tiene su propio modal service y servicio de recurso. Convive con conceptos-facturacion/, por lo que se debe verificar solapamiento antes de consolidar o retirar cualquiera. |
| Terceros | maestro-terceros-modal/ |
Selector de terceros, con más de un modo de consulta/aplicación según la operación consumidora. Tiene modal service, servicio HTTP y modelos. |
| Países | paises-modal/ |
Selector y consulta del catálogo de países. |
| Plan de cuentas | plan-cuentas-modal/ |
Búsqueda paginada y operaciones/consultas del plan de cuentas contables. |
| Tipos de asiento | tipo-asiento-modal/ |
Selector de tipos de asiento y cliente de datos. |
| Tipos de centro de costos | tipo-centro-costos-modal/ |
Selección/consulta de tipos de centros de costos, con servicios de dropdown, catálogo y modal. |
La existencia de dos carpetas con términos parecidos (conceptos-facturacion y invoice-concept-modal) no basta para concluir que sean duplicados. Antes de migrar, comparar endpoints, modelos, consumidores y comportamiento para decidir si se mantienen como casos de uso distintos o si pueden compartir una misma fuente de datos.
modals/domainmodals/domain/ contiene tipos/modelos asociados a los selectores y diálogos: cuentas contables, actividad económica, cuentas bancarias, bancos, centros de costo, ciudades, conceptos, cuentas de deducción, departamentos, conceptos DIAN, formatos contables, importaciones, terceros, países, plan de cuentas y tipos de asiento/centro de costo.
Aunque el nombre domain es correcto por intención, su ubicación bajo shared/ui acopla contratos de dominio a la librería de presentación. Los modelos realmente compartidos deberían exponerse desde libs/domain; los DTOs exclusivos de una integración pueden permanecer en el data-access propietario.
modals/ mezcla presentación, apertura de diálogos, servicios de API, contratos y utilidades de importación/exportación.libs/shared/ui/src/index.ts reexporta UI y también clases de acceso a datos y modelos, haciendo que la dependencia de una pantalla hacia UI pueda arrastrar HTTP y contratos.AccountingAccountsService se encontró una URL de ambiente DEV escrita directamente. Las URL deben provenir de API_CONFIG y las peticiones deben seguir el cliente HTTP común.libs/shared/ui/src/lib/modals/components/libs/shared/ui/src/lib/modals/data-access/libs/shared/ui/src/lib/modals/domain/libs/shared/ui/src/lib/select-dialog/libs/shared/ui/src/index.ts