+ groupedMoves: function() {
+ let groups = [];
+ let curCol = undefined;
+ for (let idx=0; idx < this.moves.length; idx++)
+ {
+ const m = this.moves[idx];
+ if (m.color == curCol)
+ {
+ const gidx = groups.length - 1;
+ groups[gidx].moves.push(m);
+ }
+ else
+ {
+ curCol = m.color;
+ groups.push({moves: [m], idx: groups.length});
+ }
+ }
+ return groups;