All files / src/configuration datatable-configuration.ts

73.33% Statements 11/15
100% Branches 0/0
66.67% Functions 2/3
73.33% Lines 11/15

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35        1x 16x 16x 16x 16x   1x                                   16x 16x 16x 16x   1x  
import DatatableColumns from './datatable-columns';
import DatatableButtons from './datatable-buttons';
import DatatableResponsive from './datatable-responsive';
 
export default class DatatableConfiguration {
  public ajax: object | ((data: object, callback: Function, settings: any) => void) | string = {};
  public columns: DatatableColumns[] = [];
  public buttons: DatatableButtons | any[] | boolean = [];
  public responsive: boolean | DatatableResponsive = true;
 
  public applyConfiguration(
    ajax?: object | ((data: object, callback: Function, settings: any) => void) | string,
    columns?: DatatableColumns[],
    buttons?: DatatableButtons | any[] | boolean,
    responsive?: boolean | DatatableResponsive
  ): void {
    this.ajax = ajax;
    this.columns = columns;
    this.buttons = buttons;
    this.responsive = responsive;
  }
 
  constructor(
    ajax?: object | ((data: object, callback: Function, settings: any) => void) | string,
    columns?: DatatableColumns[],
    buttons?: DatatableButtons | any[] | boolean,
    responsive?: boolean | DatatableResponsive
  ) {
    this.ajax = ajax;
    this.columns = columns;
    this.buttons = buttons;
    this.responsive = responsive;
  }
}