feat(web): extensiones por cliente (campos estándar adicionales y U_*) por módulo, y campo de selección

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
GeorgeandClaude Sonnet 5.5 committed 2026-10-14 15:28:03 -05:00
1 parent 1f212e2b30
commit b3b47c34a3
12 files changed
+326 -10

No files matched your search

@@ -10,7 +10,7 @@ import { LINE_COLUMNS, lineFieldsOf } from './line-columns';
import { transferRequestLayout } from './inventario/inventario.layouts';
import { MARKETING_LINES, createPayload, updatePayload, validateLayout } from './document-model';
import { DocumentFormPage } from './document-form.page';
import { DOCUMENT_SCREENS } from './document-screens';
import { BASE_SCREENS, DOCUMENT_SCREENS } from './document-screens';
describe('modelo de los formularios sin socio', () => {
const transfer = transferRequestLayout;
@@ -36,8 +36,8 @@ describe('modelo de los formularios sin socio', () => {
expect(headerKeysOf(by('Orders'))).not.toContain('FolioNumber');
});
it('la cabecera y el pie tienen como máximo dos columnas y no usan campos de usuario', () => {
for (const s of DOCUMENT_SCREENS) {
it('el proyecto base no usa campos de usuario (los de cada cliente van en client-extensions.ts)', () => {
for (const s of BASE_SCREENS) {
for (const k of headerKeysOf(s.layout)) expect(k.startsWith('U_')).toBe(false);
for (const c of s.layout.columns) expect(c.key.startsWith('U_')).toBe(false);
expect(Object.keys(s.layout.header)).toEqual(['left', 'right']);