diff --git a/src/ContenedorHorarios/Horarios.tsx b/src/ContenedorHorarios/Horarios.tsx index 360b423..494a409 100755 --- a/src/ContenedorHorarios/Horarios.tsx +++ b/src/ContenedorHorarios/Horarios.tsx @@ -1,12 +1,11 @@ -import { Curso, CursoRaw, Cursos, DatosHorario, DatosHorarioRaw, ListaCursosUsuario } from "../types/DatosHorario"; -import { For, createSignal, createMemo, SetStateFunction, batch, untrack } from "solid-js"; +import { Curso, Cursos, DatosHorario, ListaCursosUsuario } from "../types/DatosHorario"; +import { batch, createMemo, createSignal, For, Match, SetStateFunction, Switch, untrack } from "solid-js"; import { css } from "aphrodite"; import { estilosGlobales } from "../Estilos"; import { Tabla } from "./Tabla"; import { CursosElem } from "./CursosElem"; import { EstadoLayout } from "./ContenedorHorarios"; import { BotonMaxMin } from "./BotonMaxMin"; -import { Switch, Match } from "solid-js"; import { useListaCursos } from "./useListaCursos"; interface HorariosProps { @@ -58,9 +57,8 @@ export function Horarios(props: HorariosProps) { let i = 0; for (const [, curso] of Object.entries(cursos)) { - agregarCursoALista(curso); - - obj[i] = curso; + // El curso devuelto por esta fun. es reactivo + obj[i] = agregarCursoALista(curso); i++; } }); diff --git a/src/ContenedorHorarios/Tabla/CeldaFila.tsx b/src/ContenedorHorarios/Tabla/CeldaFila.tsx index 9cffdd6..61b0871 100755 --- a/src/ContenedorHorarios/Tabla/CeldaFila.tsx +++ b/src/ContenedorHorarios/Tabla/CeldaFila.tsx @@ -101,7 +101,6 @@ export function CeldaFila(props: Props) { const [estabaResaltado, setEstabaResaltado] = createSignal(false); const estaSeleccionado = createMemo(() => { - console.log("Seleccionado actualizado") return datos.datosGrupo.seleccionado; }); diff --git a/src/ContenedorHorarios/useListaCursos.ts b/src/ContenedorHorarios/useListaCursos.ts index 6402254..591ec6f 100644 --- a/src/ContenedorHorarios/useListaCursos.ts +++ b/src/ContenedorHorarios/useListaCursos.ts @@ -4,7 +4,7 @@ import { Curso, ListaCursosUsuario } from "../types/DatosHorario"; interface ReturnType { listaCursos: State, setListaCursos: SetStateFunction, - agregarCursoALista: (c: Curso) => void, + agregarCursoALista: (c: Curso) => Curso, eliminarCursosDeLista: () => void } @@ -14,14 +14,16 @@ export const useListaCursos = (): ReturnType => { cursos: [] }); - const agregarCursoALista = (curso: Curso) => { + const agregarCursoALista = (curso: Curso): Curso => { // Si el horario ya se habia agregado, ocultarlo const cursoActualIndex = listaCursos.cursos.findIndex(x => x.nombre === curso.nombre); if (cursoActualIndex !== -1) { setListaCursos("cursos", cursoActualIndex, "oculto", x => !x); + return listaCursos.cursos[cursoActualIndex]; } else { setListaCursos("cursos", listaCursos.sigIndice, curso); setListaCursos("sigIndice", x => x + 1); + return listaCursos.cursos[listaCursos.sigIndice - 1]; } };