feat(purga): Monday eliminado completamente del sistema

14 servicios eliminados, 7 controllers local-only, crons locales,
config sin MONDAY_*, frontend sin banners/avisos Monday.
552 tests API + 7 apps construidas.
This commit is contained in:
2026-09-11 11:47:17 +00:00
parent 64b01246d6
commit 89d95eb53b
130 changed files with 2018 additions and 14747 deletions

View File

@@ -113,7 +113,7 @@ describe('AltaClientePage — guardado progresivo (etapa por etapa)', () => {
expect(await screen.findByLabelText(/Tipo de empleo/)).toBeTruthy()
await waitFor(() => {
const avisos = screen.getAllByRole('status').map((el) => el.textContent ?? '')
expect(avisos.some((a) => a.includes('El avance quedó guardado local'))).toBe(true)
expect(avisos.some((a) => a.includes('El avance quedó guardado en este dispositivo'))).toBe(true)
})
})

View File

@@ -68,7 +68,7 @@ describe('AltaClientePage — pantalla de entrada', () => {
})
})
describe('AltaClientePage — alta desde lead de Monday', () => {
describe('AltaClientePage — alta desde lead capturado', () => {
it('al elegir un lead el wizard arranca con datosGenerales prellenados', async () => {
render(<AltaClientePage />)

View File

@@ -216,7 +216,7 @@ export default function AltaClientePage() {
setPantalla('wizard')
}
// Alta nueva prellenada desde un lead de Monday (nombre, email, celular)
// Alta nueva prellenada desde un lead ya capturado (nombre, email, celular)
const empezarDesdeLead = (lead: LeadResumen) => {
reiniciar()
setBorradorId(null)
@@ -282,7 +282,7 @@ export default function AltaClientePage() {
irAPaso(destino)
}
// ---------- Guardado progresivo (borrador local + Contacto en Monday) ----------
// ---------- Guardado progresivo (borrador local + alta en progreso) ----------
// Guard in-flight: con clicks rápidos se omite el sync en curso; el siguiente
// avance manda el estado completo (el PATCH es idempotente).
const syncEnCurso = useRef(false)
@@ -304,13 +304,13 @@ export default function AltaClientePage() {
setAvisoProgreso('')
} catch (err) {
console.warn('[alta] no se pudo sincronizar el avance con el servidor', err)
setAvisoProgreso('El avance quedó guardado local; no se pudo subir a Monday')
setAvisoProgreso('El avance quedó guardado en este dispositivo; no se pudo subir al servidor')
} finally {
syncEnCurso.current = false
}
}
/** Al avanzar de paso: guarda el borrador en silencio y sube el avance a Monday */
/** Al avanzar de paso: guarda el borrador en silencio y sube el avance al servidor */
const guardarAvance = (datosNuevos: typeof datos, pasoDestino: number) => {
guardarBorrador({ ...(borradorId ? { id: borradorId } : {}), paso: pasoDestino, datos: datosNuevos })
.then((b) => {
@@ -519,7 +519,7 @@ export default function AltaClientePage() {
<section aria-labelledby="titulo-lead" className="mt-12 border-t border-[#E5E7EB] dark:border-[#1E293B] pt-8">
<h3 id="titulo-lead" className="text-xs font-semibold uppercase tracking-wider text-[#64748B] dark:text-[#94A3B8]">
Desde un lead de Monday
Desde un lead ya capturado
</h3>
<p className="mt-2 text-sm text-[#64748B] dark:text-[#94A3B8]">
Empieza un alta nueva con el nombre, email y celular del lead ya capturados.
@@ -646,7 +646,7 @@ export default function AltaClientePage() {
)}
{datos.apartadoMondayId && (
<p role="note" className="mb-6 rounded-lg border border-blue-200 bg-blue-50 px-4 py-3 text-xs font-medium text-blue-800">
Alta ligada al apartado del cliente en Monday — al completarla se actualiza ese item (no se duplica).
Alta ligada al apartado del cliente — al completarla se actualiza ese apartado (no se duplica).
</p>
)}