Cómo funciona NOTIWOO
NOTIWOO es una aplicación React que coordina WooCommerce, Supabase y el servicio local de impresión. Su objetivo es mantener una superficie operativa rápida sin mezclar la lógica de negocio con los componentes visuales.
Capas principales
- Páginas y componentes: presentación, accesibilidad e interacción.
- Stores: estado compartido, carga y acciones de cada módulo.
- Casos de uso: coordinan operaciones del dominio.
- Adaptadores: traducen respuestas externas a modelos de la aplicación.
- Repositorios: encapsulan acceso a WooCommerce y Supabase.
Flujo de pedidos
Al iniciar el administrador se registran webhooks, se sincronizan pedidos y se abre el canal Realtime de la estación. Una consulta cada tres minutos actúa como respaldo si un webhook no llega.
Tabla y Kanban consumen la misma colección proyectada. Por eso búsqueda, filtros, orden, modal y actualizaciones no se duplican entre vistas.
Estado del sitio
La aplicación carga el estado de mantenimiento antes de crear el router y se suscribe a sus cambios. Si el sitio pasa a mantenimiento, las rutas de acceso y administración redirigen a la pantalla correspondiente.
Acceso y MFA
El código por correo usa el flujo de autenticación de Supabase. El factor TOTP es opcional y vive en Supabase Auth, sin una tabla adicional. Los tokens se guardan localmente solo cuando termina todo el flujo.
Perfil e imágenes
La imagen se valida y recorta en el cliente, se envía a una función dedicada y luego se actualiza el perfil. El cambio de correo permanece pendiente hasta la confirmación del proveedor de autenticación.
Impresión
La configuración se modela por estación. El administrador puede imprimir desde el detalle o activar la impresión automática del pedido entrante. El generador del recibo aplica idioma, moneda, copias y campos seleccionados.
Límites operativos
- La vista de pedidos trabaja con los 200 eventos más recientes.
- Filtros, búsqueda, orden y paginación se ejecutan en el navegador.
- La sincronización de productos avanza por páginas de WooCommerce.
- La calidad del tiempo real depende de webhooks, Supabase Realtime y la consulta de respaldo.