176 lines
12 KiB
Markdown
176 lines
12 KiB
Markdown
# Inventario de interacciones modales
|
|
|
|
Revisión de 2026-10-08. Se inspeccionaron las primitivas y wrappers importados, sus consumidores,
|
|
los bloques condicionales y las implementaciones manuales posibles: Dialog, AlertDialog, Sheet,
|
|
Drawer, FormDialog, portales, elementos dialog, aria-modal y roles dialog/alertdialog.
|
|
La búsqueda no dependió del nombre de los componentes.
|
|
|
|
El código propio contiene **81 componentes que construyen una interacción modal**. Todos
|
|
usan FormDialog de @repo/rdx-ui y tienen un componente principal por fichero. Un componente
|
|
puede representar variantes de alta, edición o copia, y catálogos con distintos tipos; el número
|
|
no es un recuento de todos los estados posibles de las ventanas. No se encontraron otras
|
|
implementaciones propias con AlertDialog, Sheet, Drawer ni diálogos HTML/manuales.
|
|
|
|
Actualización de 2026-10-09: se añade DeleteBrandDialog para confirmar la eliminación de
|
|
marcas personalizadas; el inventario pasa a 82 componentes. Se ha comprobado esta operación
|
|
en navegador con API simulada: Cancelar/Escape, errores, bloqueo durante el envío, éxito,
|
|
español/inglés y anchura móvil. Esta comprobación no amplía la revisión al resto de modales.
|
|
|
|
La implementación vendor de packages/shadcn-ui queda fuera de la refactorización según AGENTS.md.
|
|
Sus primitivas y el diálogo de configuración de tablas se consultan y consumen, no se duplican
|
|
ni reorganizan. Los popovers de selectores y menús de acciones no se contabilizan como formularios
|
|
o ventanas modales funcionales.
|
|
|
|
## Responsabilidades y consumidores
|
|
|
|
Las páginas y listados conservan apertura, selección y callbacks. Los componentes enumerados
|
|
encapsulan título, disposición, anchura, contenido y cierre. Los formularios existentes mantienen
|
|
sus schemas, borradores, mutaciones, ayuda y errores. EndRelationshipDialog posee además la
|
|
mutación de confirmación y sus estados pendientes y de error.
|
|
|
|
CompanyEditorDialog, PersonEditorDialog, DepartmentEditorDialog y SiteEditorDialog se reutilizan
|
|
el patrón entre catálogo y selector. Los callbacks de selección permanecen en el consumidor que
|
|
posee el borrador. Las altas anidadas conservan sus restricciones existentes.
|
|
|
|
Se integró el contenido exclusivo de los antiguos SupportHistory, ApplicationHistory,
|
|
CertificateHistory y PrinterHistory en sus respectivos componentes de diálogo, tras comprobar
|
|
sus referencias. No se eliminaron historiales ni acciones. Los archivos anteriores se pueden
|
|
recuperar desde Git.
|
|
|
|
## Componentes por área
|
|
|
|
Las rutas reflejan la [estructura por entidades y operaciones](estructura-web-por-entidades-y-operaciones.md).
|
|
|
|
### modules/assets/src/web
|
|
|
|
- [AssetDetailDialog](../modules/assets/src/web/assets/detail/ui/asset-detail-dialog.tsx)
|
|
- [AssetEditorDialog](../modules/assets/src/web/assets/shared/ui/asset-editor-dialog.tsx)
|
|
- [BrandEditorDialog](../modules/assets/src/web/brands/shared/ui/brand-editor-dialog.tsx)
|
|
- [DeleteBrandDialog](../modules/assets/src/web/brands/delete/ui/delete-brand-dialog.tsx)
|
|
- [CatalogDefinitionDialog](../modules/assets/src/web/catalog/detail/ui/catalog-definition-dialog.tsx)
|
|
- [CatalogEditorDialog](../modules/assets/src/web/catalog/shared/ui/catalog-editor-dialog.tsx)
|
|
- [CatalogFieldCreateDialog](../modules/assets/src/web/catalog-fields/create/ui/catalog-field-create-dialog.tsx)
|
|
- [CatalogRelationCreateDialog](../modules/assets/src/web/catalog-relations/create/ui/catalog-relation-create-dialog.tsx)
|
|
- [CatalogTemplateCreateDialog](../modules/assets/src/web/catalog-templates/create/ui/catalog-template-create-dialog.tsx)
|
|
- [EndRelationshipDialog](../modules/assets/src/web/asset-relationships/end/ui/end-relationship-dialog.tsx)
|
|
- [RelationshipEditorDialog](../modules/assets/src/web/asset-relationships/shared/ui/relationship-editor-dialog.tsx)
|
|
- [SupportConnectionEditorDialog](../modules/assets/src/web/support-connections/shared/ui/support-connection-editor-dialog.tsx)
|
|
- [SupportHistoryDialog](../modules/assets/src/web/support-connections/history/ui/support-history-dialog.tsx)
|
|
- [WorkstationAssetCreateDialog](../modules/assets/src/web/assets/create/ui/workstation-asset-create-dialog.tsx)
|
|
- [WorkstationEditorDialog](../modules/assets/src/web/workstations/shared/ui/workstation-editor-dialog.tsx)
|
|
- [WorkstationHistoryDialog](../modules/assets/src/web/workstations/history/ui/workstation-history-dialog.tsx)
|
|
|
|
### modules/companies/src/web/access
|
|
|
|
- [AccessEditorDialog](../modules/companies/src/web/access/shared/ui/access-editor-dialog.tsx)
|
|
- [AccessHelpDialog](../modules/companies/src/web/access/help/ui/access-help-dialog.tsx)
|
|
- [AccessHistory](../modules/companies/src/web/access/history/ui/access-history.tsx)
|
|
- [AccessQuickEditor](../modules/companies/src/web/access/create/ui/access-quick-editor.tsx)
|
|
- [QuickCreateDialog](../modules/companies/src/web/access/create/ui/quick-create-dialog.tsx)
|
|
|
|
### modules/companies/src/web/application-configurations
|
|
|
|
- [ApplicationConfigurationEditorDialog](../modules/companies/src/web/application-configurations/shared/ui/application-configuration-editor-dialog.tsx)
|
|
- [ApplicationHistoryDialog](../modules/companies/src/web/application-configurations/history/ui/application-history-dialog.tsx)
|
|
- [ApplicationQuickEditor](../modules/companies/src/web/application-configurations/create/ui/application-quick-editor.tsx)
|
|
|
|
### modules/companies/src/web/certificate-configurations
|
|
|
|
- [CertificateConfigurationEditorDialog](../modules/companies/src/web/certificate-configurations/shared/ui/certificate-configuration-editor-dialog.tsx)
|
|
- [CertificateHistoryDialog](../modules/companies/src/web/certificate-configurations/history/ui/certificate-history-dialog.tsx)
|
|
- [CertificateQuickEditor](../modules/companies/src/web/certificate-configurations/create/ui/certificate-quick-editor.tsx)
|
|
|
|
### Compañías, organización, dashboard y workspace de companies
|
|
|
|
- [AssignmentEditorDialog](../modules/companies/src/web/assignments/shared/ui/assignment-editor-dialog.tsx)
|
|
- [AssignmentHistoryDialog](../modules/companies/src/web/assignments/history/ui/assignment-history-dialog.tsx)
|
|
- [CompanyEditorDialog](../modules/companies/src/web/companies/shared/ui/company-editor-dialog.tsx)
|
|
- [ConfigurationQuickEditor](../modules/companies/src/web/shared/ui/configuration-quick-editor.tsx)
|
|
- [DashboardDetailsDialog](../modules/companies/src/web/dashboard/detail/ui/dashboard-details-dialog.tsx)
|
|
- [DashboardQuickCreate](../modules/companies/src/web/dashboard/create/ui/dashboard-quick-create.tsx)
|
|
- [DepartmentEditorDialog](../modules/companies/src/web/departments/shared/ui/department-editor-dialog.tsx)
|
|
- [InventoryQuickCreateDialog](../modules/companies/src/web/companies/detail/ui/inventory-quick-create-dialog.tsx)
|
|
- [PersonEditorDialog](../modules/companies/src/web/people/shared/ui/person-editor-dialog.tsx)
|
|
- [SiteEditorDialog](../modules/companies/src/web/sites/shared/ui/site-editor-dialog.tsx)
|
|
- [WorkspaceSettingsDialog](../modules/companies/src/web/workspace/settings/ui/workspace-settings-dialog.tsx)
|
|
|
|
### modules/companies/src/web/folder-mappings
|
|
|
|
- [FolderMappingEditorDialog](../modules/companies/src/web/folder-mappings/shared/ui/folder-mapping-editor-dialog.tsx)
|
|
- [FolderMappingHistoryDialog](../modules/companies/src/web/folder-mappings/history/ui/folder-mapping-history-dialog.tsx)
|
|
- [FolderQuickEditor](../modules/companies/src/web/folder-mappings/create/ui/folder-quick-editor.tsx)
|
|
|
|
|
|
|
|
### Buzones, usos y configuraciones de correo de companies
|
|
|
|
- [MailboxCreateDialog](../modules/companies/src/web/mailboxes/create/ui/mailbox-create-dialog.tsx)
|
|
- [MailboxUseEditorDialog](../modules/companies/src/web/mailbox-uses/shared/ui/mailbox-use-editor-dialog.tsx)
|
|
- [MailConfigurationEditorDialog](../modules/companies/src/web/mail-configurations/shared/ui/mail-configuration-editor-dialog.tsx)
|
|
- [MailConfigurationHistoryDialog](../modules/companies/src/web/mail-configurations/history/ui/mail-configuration-history-dialog.tsx)
|
|
- [MailQuickEditor](../modules/companies/src/web/mail-configurations/create/ui/mail-quick-editor.tsx)
|
|
|
|
### modules/companies/src/web/printer-configurations
|
|
|
|
- [PrinterConfigurationEditorDialog](../modules/companies/src/web/printer-configurations/shared/ui/printer-configuration-editor-dialog.tsx)
|
|
- [PrinterHistoryDialog](../modules/companies/src/web/printer-configurations/history/ui/printer-history-dialog.tsx)
|
|
- [PrinterProfileCreateDialog](../modules/companies/src/web/printer-configurations/create/ui/printer-profile-create-dialog.tsx)
|
|
|
|
### modules/companies/src/web/processes
|
|
|
|
- [ProcessEditDialog](../modules/companies/src/web/processes/update/ui/process-edit-dialog.tsx)
|
|
- [ProcessQuickCreateDialog](../modules/companies/src/web/processes/create/ui/process-quick-create-dialog.tsx)
|
|
- [ProcessStartDialog](../modules/companies/src/web/processes/start/ui/process-start-dialog.tsx)
|
|
|
|
### modules/companies/src/web/process-templates
|
|
|
|
- [ProcessTemplateEditorDialog](../modules/companies/src/web/process-templates/shared/ui/process-template-editor-dialog.tsx)
|
|
|
|
### modules/companies/src/web/work-profiles
|
|
|
|
- [WorkProfileEditorDialog](../modules/companies/src/web/work-profiles/shared/ui/work-profile-editor-dialog.tsx)
|
|
- [WorkProfileHistoryDialog](../modules/companies/src/web/work-profiles/history/ui/work-profile-history-dialog.tsx)
|
|
|
|
### modules/companies/src/web/remote-connections
|
|
|
|
- [RemoteConnectionEditorDialog](../modules/companies/src/web/remote-connections/shared/ui/remote-connection-editor-dialog.tsx)
|
|
- [RemoteConnectionHistoryDialog](../modules/companies/src/web/remote-connections/history/ui/remote-connection-history-dialog.tsx)
|
|
- [RemoteQuickEditor](../modules/companies/src/web/remote-connections/create/ui/remote-quick-editor.tsx)
|
|
|
|
### modules/companies/src/web/telework-authorizations
|
|
|
|
- [TeleworkAuthorizationEditorDialog](../modules/companies/src/web/telework-authorizations/shared/ui/telework-authorization-editor-dialog.tsx)
|
|
- [TeleworkAuthorizationHistoryDialog](../modules/companies/src/web/telework-authorizations/history/ui/telework-authorization-history-dialog.tsx)
|
|
|
|
|
|
### modules/identity/src/web
|
|
|
|
- [AccountPasswordDialog](../modules/identity/src/web/passwords/change/ui/account-password-dialog.tsx)
|
|
- [UserEditorDialog](../modules/identity/src/web/users/shared/ui/user-editor-dialog.tsx)
|
|
- [UserManagementDialog](../modules/identity/src/web/users/list/ui/user-management-dialog.tsx)
|
|
|
|
### modules/resources/src/web
|
|
|
|
- [CatalogDefinitionDialog](../modules/resources/src/web/catalog/detail/ui/catalog-definition-dialog.tsx)
|
|
- [CatalogEditorDialog](../modules/resources/src/web/catalog/shared/ui/catalog-editor-dialog.tsx)
|
|
- [CatalogFieldCreateDialog](../modules/resources/src/web/catalog-fields/create/ui/catalog-field-create-dialog.tsx)
|
|
- [CatalogTemplateCreateDialog](../modules/resources/src/web/catalog-templates/create/ui/catalog-template-create-dialog.tsx)
|
|
- [ResourceDetailDialog](../modules/resources/src/web/resources/detail/ui/resource-detail-dialog.tsx)
|
|
- [ResourceEditorDialog](../modules/resources/src/web/resources/shared/ui/resource-editor-dialog.tsx)
|
|
|
|
## Comprobaciones y límites
|
|
|
|
Typecheck, lint, pruebas de los módulos y validaciones globales correctos. Las pruebas existentes
|
|
comprueban traducciones es/en, listados sin formularios visibles, ayuda, restricciones de altas
|
|
anidadas, estados y contratos. Se amplió la prueba del dashboard con datos no vacíos de los
|
|
paneles extraídos.
|
|
|
|
No se ejecutó una sesión interactiva de navegador. Queda por comprobar manualmente apertura,
|
|
Escape, restauración del foco, cancelación, envío y error en modales simples y anidados, en español,
|
|
inglés y anchura móvil. El render estático y el lint no sustituyen esa comprobación.
|
|
|
|
Véase [revisión de buenas prácticas](revision-de-buenas-practicas.md) para el alcance y los resultados
|
|
globales, y [componentes de interfaz](componentes-de-interfaz.md) para los patrones compartidos.
|
|
|
|
Los modales de tickets, intervenciones y sus plantillas están [archivados](funcionalidades-archivadas.md).
|