UNPKG

angular2-boiler-plate

Version:

Angular 2 Boiler plate that integrated with WebPack, TypeScript, DatePicker, RxJs for Reactive Extensions in Java Script , Karma , Jasmine for unit testing , WebKit ,protractor e2e testing

126 lines (117 loc) 4.34 kB
export enum EnumFieldType { text = 0, number = 1, date = 2, datetime = 3, checkbox = 4, select = 5, password = 6, image = 7, email = 8, tel = 9, radio = 10, range = 11, time = 12, url = 13, file = 14, hidden = 15, week = 16, month = 17, color = 18 } export enum EnumEditType { RowEdit = 0, CellEdit = 1, DialogEdit = 2, FormEdit = 3, None = 4 } export interface ISelectModel { key: string; value: string; } export class PaginationModel { public showPaging: boolean = true; public pageSize: number = 10; public quickAccessMaxPages: number = 5; public showGoToEndArrow: boolean = true; public showGoToStartArrow: boolean = true; public showGoToNextArrow: boolean = true; public showGoToPreviousArrow: boolean = true; public currentPage: number = 1; public activePageCssClass: string = 'sui-theme'; public clsGoToNextPageIcon: string = 'fa fa-angle-right'; public clsGoToPreviousPageIcon: string = 'fa fa-angle-left'; public clsGoToStartIcon: string = 'fa fa-angle-double-left'; public clsGoToEndIcon: string = 'fa fa-angle-double-right'; public toolTipGoToNext = 'Go to next page'; public toolTipGoToPrevious = 'Go to next page'; public toolTipGoToStart = 'Go to first page'; public toolTipGoToEnd = 'Go to last page'; } export class SelectModel implements ISelectModel { public key: string = ''; public value: string = ''; } export class TableModel { public enableQuickFilterBy: boolean = true; public enablePaging: boolean = true; public enableSorting: boolean = true; public enableFiltering: boolean = true; public enableExport: boolean = true; public enableServerSideFiltering: boolean = false; public enableServerSideSorting: boolean = false; public enableServerSideQuickFilterBy: boolean = false; public enableServerSidePaging: boolean = false; public enableServerSideExport: boolean = false; public cssClass: Object = 'sui-table-all'; public style: Object = {}; public headerCssClass: Object = {}; public rowCssClass: Object = ''; public rowStyle: Object = {}; public headerStyle: Object = {}; public editType: EnumEditType = EnumEditType.FormEdit; public sortIcon: string = 'fa fa-sort'; public sortDescIcon: string = 'fa fa-sort-desc'; public sortAscIcon: string = 'fa fa-sort-asc'; public searchInputCssClass: string = 'sui-input'; public searchInputPlaceholderText: string = 'Search ...'; public pagination: PaginationModel = new PaginationModel(); public showColumnChooserButton: boolean = true; public cssClassColumnChooser: string = 'sui-btn sui-theme'; public columnChooserText: string = 'Choose Columns'; public tableHeader: string = ''; public cssTableHeader: string = ''; public styleTableHeader: Object = {}; public pageSizeArray: number[] = [5, 10, 25, 50, 100, 500, 1000]; public canEdit: boolean = true; public canAdd: boolean = true; public canDelete: boolean = true; public getUrl?: string; public addUrl?: string; public updateUrl?: string; public deleteUrl?: string; public txtAddBtn: string = 'Add New'; public cssAddBtn: string = 'sui-btn'; public cssAddIcon: string = 'fa fa-plus-circle'; public cssEditIcon: string = 'fa fa-edit'; public cssDeleteIcon: string = 'fa fa-times'; constructor(public columns: ColumnModel[] = [], public data: any[] = []) { } } export class ColumnModel { public hidden: boolean = false; public canFilter: boolean = true; public canSort: boolean = true; public canExport: boolean = true; public canEdit: boolean = true; public identityField: boolean = false; public selectList: SelectModel[] = []; public cssfilterRow: string = 'sui-input '; public styleFilterRow: Object = {}; public autoCreateSelectListFromData: boolean = true; public required: boolean = false; public showInQuickFilter: boolean = false; constructor(public fieldName: string, public displayName: string, public fieldType: EnumFieldType = EnumFieldType.text) { } }