const state = this.CurrentState;
const array = state.array;
const length = array.length;
for (let i = 0; i < length - 1; i++) {
this.addStep(b => b
.set("sortedIndex", length - i)
.set("swapped", false));
let swapped = false;
for (let j = 0; j < length - i - 1; j++) {
this.addStep(b => b.set("scanningIndex", j));
if (array[j]! > array[j + 1]!) {
this.addStep(b => b
.arraySwap("array", j, j + 1)
.arraySwap("idArray", j, j + 1)
.set("swapped", true));
swapped = true;
}
}
if (!swapped) break;
}