Mostrar que cuatri es cada columna de nodos
Para planifcar a futuro resulta engorroso no tener que cuatrimestre es cada columna. Se me ocurre poner arriba el cuatrimestre o una leyenda abajo de cada div de materias con el año y cuatri asignado
La idea esta buena, pero toca muchas partes del codigo, que hace mil que no se cuida/refactoriza, entonces prefiero primero tomarme un tiempito de mantenimiento antes de aplicarla.
La idea es:
- Agregar nodos como
shape: 'text'de cada año (no cuatri) - Hacerlos lindos
- Asegurarse que no tengan ningun tipo de iteraccion que tengan los otros nodos (no se puede aprobar, hoverear, etc)
- Recuperar el coso de asumir plan, porque ahora es mas explicito
El mayor problema del codigo es que esta muuuy hardcodeado cada filtro/getter de las categorias en este momento. Hay muchos 'si la categoria no es CBC...' y cosas así. Debería armar un archivo de constantes donde ponga cada una de esas cosas, por ejemplo 'categoria no interactuable' y ahí meter CBC y este dummy cuatri nuevo. Una vez que este eso, va a ser todo mucho mas facil
La porcion copada del codigo, adentro de actualizar, es esta:
const cbcPosition = network.getPositions('CBC')
const firstCuatris = new Set(nodes.get({
filter: (n) => n.cuatrimestre &&
!n.hidden &&
n.categoria !== "CBC" &&
n.categoria !== "*CBC"
}).filter(n => n.cuatrimestre % 1 === 0).map(n => n.cuatrimestre).sort())
firstCuatris.forEach(c => {
const n = new Node({
id: `dummy_${c}`,
materia: `${c}`,
categoria: "cuatri-text",
})
n.cuatrimestre = c
n.y = cbcPosition.CBC.y - 180
n.title = undefined
toUpdate.push(n)
edges.add({ from: "CBC", to: n.id, color: "transparent" });
})
Esto, incluso post refactor, es super engorroso. Voy a lograr que el componente de #146 muestre en hover el cuatri de manera linda, y despreocuparme por intentar hacerlo within-mapa.