ko.Paging={viewModel:function(n){var t={};return t.startPage=n.startPage||1,t.TotalRows=ko.observable(n.TotalRows),t.pageSize=ko.observable(n.PageSize||10),t.pageIndex=ko.observable(t.startPage),t.callback=n.callback,t.maxPageIndex=ko.computed(function(){return Math.ceil(t.TotalRows()/t.pageSize())},t),t.allPages=ko.computed(function(){for(var r=[],i="",n=t.startPage;n<=t.maxPageIndex();n++)j=n+1-t.startPage,i=n==t.startPage||n==t.maxPageIndex()||Math.abs(n-t.pageIndex())<4?n==t.pageIndex()?j:j:i=="..."||i==""?"":"...",i!=""&&r.push({pageNumber:i});return r},t),t.previousPage=function(){t.pageIndex()>1&&t.pageIndex(t.pageIndex()-1)},t.nextPage=function(){t.pageIndex()<t.maxPageIndex()&&t.pageIndex(t.pageIndex()+1)},t.moveToPage=function(n){t.pageIndex(n)},t.pageIndex.subscribe(function(){t.callback&&t.callback({pageSize:t.pageSize(),page:t.pageIndex()})}),t.Show=ko.computed(function(){return t.TotalRows()>0&&t.maxPageIndex()>1},t),t.DisablePreviousPage=function(){return t.pageIndex()===1},t.DisableNextPage=function(){return t.pageIndex()===t.maxPageIndex()},t}}