angular - Cómo reordenar el número de secuencia de una tabla en typescript
Tengo una aplicación Angular8 en la que un componente tiene una tabla primeng con los datos a continuación, cada fila tiene una columna de número de secuencia
tableData = [{id:1465,seqNum:1,name:Maths,desc:Mathematics},{id:1466,seqNum:2,name:Eng,desc:English},{id:1467,seqNum:3,name:Bio,desc:Biology},{id:1468,seqNum:4,name:Chem,desc:Chemistry},{id:1469,seqNum:5,name:Phys,desc:Physics}]
Quiero actualizar cualquier número de secuencia a un número de secuencia particular en la lista para que el número de secuencia entre esos dos valores también se actualice en consecuencia.
por ejemplo, los datos iniciales de la tabla serán como los siguientes
tableData = [{id:1465,seqNum:1,name:Maths,desc:Mathematics},{id:1466,seqNum:2,name:Eng,desc:English},{id:1467,seqNum:3,name:Bio,desc:Biology},{id:1468,seqNum:4,name:Chem,desc:Chemistry},{id:1469,seqNum:5,name:Phys,desc:Physics}]
Si cambio el seqNum:2 a 5, entonces la tabla debería actualizarse como se muestra a continuación
tableData = [{id:1465,seqNum:1,name:Maths,desc:Mathematics},{id:1469,seqNum:2,name:Phys,desc:Physics}{id:1466,seqNum:3,name:Eng,desc:English},{id:1467,seqNum:4,name:Bio,desc:Biology},{id:1468,seqNum:5,name:Chem,desc:Chemistry}]
Básicamente quiero reordenar el campo de número de secuencia de cada fila entre la fila seleccionada. En nuestro ejemplo, el número de secuencia de las filas 2 a 5 debería actualizarse en consecuencia.
Tengo la siguiente función al perder el foco de la columna seqNum, dentro de ella obtendré la fila seleccionada y todos los datos de la tabla
updateSeqNbr(selectedRow) { //selectedRow = {id:1466,seqNum:2,name:Eng,desc:English}
this.tableData; //tableData = [{id:1465,seqNum:1,name:Maths,desc:Mathematics}{id:1466,seqNum:2,name:Eng,desc:English},{id:1467,seqNum:3,name:Bio,desc:Biology}, {id:1468,seqNum:4,name:Chem,desc:Chemistry},{id:1469,seqNum:5,name:Phys,desc:Physics}]
// logic
}
¿Cómo obtener los tableData actualizados con el cambio del número de secuencia?