- ✅ Ticket 1.1: Estructura Clean Architecture en backend - ✅ Ticket 1.2: Schemas Zod compartidos - ✅ Ticket 1.3: Refactorización drugs.ts (1362 → 8 archivos modulares) - ✅ Ticket 1.4: Refactorización procedures.ts (3583 → 6 archivos modulares) - ✅ Ticket 1.5: Eliminación de duplicidades (~50 líneas) Cambios principales: - Creada estructura Clean Architecture en backend/src/ - Schemas Zod compartidos en backend/src/shared/schemas/ - Refactorización modular de drugs y procedures - Utilidades genéricas en src/utils/ (filter, validation) - Eliminados scripts obsoletos y documentación antigua - Corregidos errores: QueryClient, import test-error-handling - Build verificado y funcionando correctamente
44 lines
861 B
Plaintext
44 lines
861 B
Plaintext
{{# def.definitions }}
|
|
{{# def.errors }}
|
|
{{# def.setupKeyword }}
|
|
{{# def.setupNextLevel }}
|
|
|
|
{{? {{# def.nonEmptySchema:$schema }} }}
|
|
{{
|
|
$it.schema = $schema;
|
|
$it.schemaPath = $schemaPath;
|
|
$it.errSchemaPath = $errSchemaPath;
|
|
}}
|
|
|
|
var {{=$errs}} = errors;
|
|
|
|
{{# def.setCompositeRule }}
|
|
|
|
{{
|
|
$it.createErrors = false;
|
|
var $allErrorsOption;
|
|
if ($it.opts.allErrors) {
|
|
$allErrorsOption = $it.opts.allErrors;
|
|
$it.opts.allErrors = false;
|
|
}
|
|
}}
|
|
{{= it.validate($it) }}
|
|
{{
|
|
$it.createErrors = true;
|
|
if ($allErrorsOption) $it.opts.allErrors = $allErrorsOption;
|
|
}}
|
|
|
|
{{# def.resetCompositeRule }}
|
|
|
|
if ({{=$nextValid}}) {
|
|
{{# def.error:'not' }}
|
|
} else {
|
|
{{# def.resetErrors }}
|
|
{{? it.opts.allErrors }} } {{?}}
|
|
{{??}}
|
|
{{# def.addError:'not' }}
|
|
{{? $breakOnError}}
|
|
if (false) {
|
|
{{?}}
|
|
{{?}}
|