toggleVisibility(id) {
    let column = this._columnVisibility.find((x) => x.id === id);
    column.visible = !column.visible;
    if (!this._columnVisibility.some((col) => col.visible)) {
      // If this column was the last visible column
      // cancel toggling and set back to `true`.
      column.visible = true;
    }
    this.resetWidths();
  }
Method to toggle the visibility of a column. Mainly called
when a user toggles a column using the header's context menu.

This method also resets width because adding/removing columns
will invalidate the current width distribution.

@method toggleVisibility
@param {String} id