26f0649da95f6cb5606a0f82138b904a67729548
- sbo-window: título con insignia de estado, cuerpo, zona de acciones
(sboActions / sboActionsEnd) y barra de estado ok / warn / err / info con
role="status".
- sbo-toolbar con botones .tb y sbo-icon (SVG en línea).
- sbo-tabs / sbo-tab: paneles ocultos conservan su estado, [(selected)],
flechas izquierda/derecha con foco, roles y aria-controls.
- sbo-menu-button: lista de acciones ("Copiar de/a") que abre hacia arriba o
abajo; Esc y clic fuera la cierran; opciones deshabilitables.
- sbo-badge compartido con las listas (data-table lo usa); tono 'info'.
- Verificado en Chrome contra el mockup oferta_venta.html: misma estructura,
pestañas por clic y teclado, menú hacia arriba, estados ok/err.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
feat(web): ventana de formulario SBO (toolbar, título con estado, pestañas, menús y barra de estado)
basic-erp
ERP base para SAP Business One sobre NestJS + Angular (TypeScript en ambos lados).
apps/api NestJS (proxy Service Layer, auth, permisos)
apps/web Angular (componentes reutilizables)
libs/sap-types Tipos compartidos
tools/ Mockups y pruebas
Requisitos: Node 22+ y npm 11+ (npm 10 falla al resolver las dependencias de Nest 12: npx npm@11 install).
npm install # instala todos los workspaces y compila libs/sap-types
npm run dev:api # http://localhost:3000/api/health
npm run dev:web # http://localhost:4200
npm test # libs + api + web
Configuración del backend: apps/api/.env (ver apps/api/.env.example).
Languages
TypeScript
90.1%
HTML
8.2%
CSS
1.7%