/** * Kendo UI v2019.2.619 (http://www.telerik.com/kendo-ui) * Copyright 2019 Progress Software Corporation and/or one of its subsidiaries or affiliates. All rights reserved. * * Kendo UI commercial licenses may be obtained at * http://www.telerik.com/purchase/license-agreement/kendo-ui-complete * If you do not own a commercial license, this file shall be governed by the trial license terms. */ !function(e,define){define("kendo.data.min",["kendo.core.min","kendo.data.odata.min","kendo.data.xml.min"],e)}(function(){return function(e,t){function r(e,t,r,i){return function(n){var a,s={};for(a in n)s[a]=n[a];s.field=i?r+"."+n.field:r,t==Ae&&e._notifyChange&&e._notifyChange(s),e.trigger(t,s)}}function i(t,r){if(t===r)return!0;var n,a=e.type(t),s=e.type(r);if(a!==s)return!1;if("date"===a)return t.getTime()===r.getTime();if("object"!==a&&"array"!==a)return!1;for(n in t)if(!i(t[n],r[n]))return!1;return!0}function n(e,t){var r,i;for(i in e){if(r=e[i],_e(r)&&r.field&&r.field===t)return r;if(r===t)return r}return null}function a(e){this.data=e||[]}function s(e,r){if(e){var i=typeof e===qe?{field:e,dir:r}:e,n=me(i)?i:i!==t?[i]:[];return ye(n,function(e){return!!e.dir})}}function o(e){var t,r,i,n,a=e.filters;if(a)for(t=0,r=a.length;tt.field?1:e.field=t.length)););o0&&(t=this[r--]);r>=0;r--)t=e(t,this[r],r,this);return t},filter:function(e,t){for(var r,i=0,n=[],a=this.length,s=t||window;i=0;if(s)for(r=e.split("."),i="";r.length>1;){if(i+=r.shift(),n=ke.getter(i,!0)(a),n instanceof $)return n.set(r.join("."),t),s;i+="."}return ke.setter(e)(a,t),s},set:function(e,t){var r=this,i=!1,n=e.indexOf(".")>=0,a=ke.getter(e,!0)(r);return a!==t&&(a instanceof xe&&this._handlers[e]&&(this._handlers[e].get&&a.unbind(Me,this._handlers[e].get),a.unbind(Ae,this._handlers[e].change)),i=r.trigger("set",{field:e,value:t}),i||(n||(t=r.wrap(t,e,function(){return r})),(!r._set(e,t)||e.indexOf("(")>=0||e.indexOf("[")>=0)&&r.trigger(Ae,{field:e}))),i},parent:we,wrap:function(e,t,i){var n,a,s,o,u=this,l=Ze.call(e);return null==e||"[object Object]"!==l&&"[object Array]"!==l||(s=e instanceof rt,o=e instanceof ue,"[object Object]"!==l||o||s?("[object Array]"===l||s||o)&&(s||o||(e=new rt(e)),a=r(u,Ae,t,!1),e.bind(Ae,a),u._handlers[t]={change:a}):(e instanceof $||(e=new $(e)),n=r(u,Me,t,!0),e.bind(Me,n),a=r(u,Ae,t,!0),e.bind(Ae,a),u._handlers[t]={get:n,change:a}),e.parent=i),e}}),K={number:function(e){return typeof e===qe&&"null"===e.toLowerCase()?null:ke.parseFloat(e)},date:function(e){return typeof e===qe&&"null"===e.toLowerCase()?null:ke.parseDate(e)},"boolean":function(e){return typeof e===qe?"null"===e.toLowerCase()?null:"true"===e.toLowerCase():null!=e?!!e:e},string:function(e){return typeof e===qe&&"null"===e.toLowerCase()?null:null!=e?e+"":e},"default":function(e){return e}},X={string:"",number:0,date:new Date,"boolean":!1,"default":""},Y=$.extend({init:function(r){var i,n,a=this;if((!r||e.isEmptyObject(r))&&(r=e.extend({},a.defaults,r),a._initializers))for(i=0;i0&&(d._initializers=g),i=e.extend(d),i.define=function(e){return Y.define(i,e)},d.fields&&(i.fields=d.fields,i.idField=d.idField),i},Z={selector:function(e){return Fe(e)?e:He(e)},compare:function(e){var t=this.selector(e);return function(e,r){return e=t(e),r=t(r),null==e&&null==r?0:null==e?-1:null==r?1:e.localeCompare?e.localeCompare(r):e>r?1:en?1:-1}},desc:function(e){var t=this.selector(e);return function(e,r){var i=t(e),n=t(r);return i&&i.getTime&&n&&n.getTime&&(i=i.getTime(),n=n.getTime()),i===n?e.__position-r.__position:null==i?1:null==n?-1:n.localeCompare?n.localeCompare(i):i=0?"\\"+n:n}r=!1}return t+"$/"}return{quote:function(t){return t&&t.getTime?"new Date("+t.getTime()+")":e(t)},eq:function(e,t,i,n){return r("==",e,t,i,n)},neq:function(e,t,i,n){return r("!=",e,t,i,n)},gt:function(e,t,i){return r(">",e,t,i)},gte:function(e,t,i){return r(">=",e,t,i)},lt:function(e,t,i){return r("<",e,t,i)},lte:function(e,t,i){return r("<=",e,t,i)},startswith:t(function(e,t){return e+".lastIndexOf("+t+", 0) == 0"}),doesnotstartwith:t(function(e,t){return e+".lastIndexOf("+t+", 0) == -1"}),endswith:t(function(e,t){var r=t?t.length-2:0;return e+".indexOf("+t+", "+e+".length - "+r+") >= 0"}),doesnotendwith:t(function(e,t){var r=t?t.length-2:0;return e+".indexOf("+t+", "+e+".length - "+r+") < 0"}),contains:t(function(e,t){return e+".indexOf("+t+") >= 0"}),doesnotcontain:t(function(e,t){return e+".indexOf("+t+") == -1"}),matches:t(function(e,t){return t=t.substring(1,t.length-1),i(t)+".test("+e+")"}),doesnotmatch:t(function(e,t){return t=t.substring(1,t.length-1),"!"+i(t)+".test("+e+")"}),isempty:function(e){return e+" === ''"},isnotempty:function(e){return e+" !== ''"},isnull:function(e){return"("+e+" == null)"},isnotnull:function(e){return"("+e+" != null)"},isnullorempty:function(e){return"("+e+" === null) || ("+e+" === '')"},isnotnullorempty:function(e){return"("+e+" !== null) && ("+e+" !== '')"}}}(),a.filterExpr=function(e){var r,i,n,s,o,u,l=[],h={and:" && ",or:" || "},d=[],f=[],c=e.filters;for(r=0,i=c.length;r":"gt",isgreaterthan:"gt",greaterthan:"gt",greater:"gt",">=":"gte",isgreaterthanorequalto:"gte",greaterthanequal:"gte",ge:"gte",notsubstringof:"doesnotcontain",isnull:"isnull",isempty:"isempty",isnotempty:"isnotempty"},a.normalizeFilter=u,a.compareFilters=f,a.prototype={toArray:function(){return this.data},range:function(e,t){return new a(this.data.slice(e,e+t))},skip:function(e){return new a(this.data.slice(e))},take:function(e){return new a(this.data.slice(0,e))},select:function(e){return new a(Q(this.data,e))},order:function(e,t,r){var i={dir:t};return e&&(e.compare?i.compare=e.compare:i.field=e),new a(r?this.data.sort(Z.create(i)):this.data.slice(0).sort(Z.create(i)))},orderBy:function(e,t){return this.order(e,"asc",t)},orderByDescending:function(e,t){return this.order(e,"desc",t)},sort:function(e,t,r,i){var n,a,o=s(e,t),u=[];if(r=r||Z,o.length){for(n=0,a=o.length;n0&&(r=e[0],n=n.groupBy(r).select(function(i){var n=new a(t).filter([{field:i.field,operator:"eq",value:i.value,ignoreCase:!1}]);return{field:i.field,value:i.value,items:e.length>1?new a(i.items).group(e.slice(1),n.toArray()).toArray():i.items,hasSubgroups:e.length>1,aggregates:n.aggregate(r.aggregates)}})),n},groupBy:function(e){var t,r,i,n,s,o,u,l,h,d,f=this;if(ve(e)||!this.data.length)return new a([]);for(t=e.field,r=e.skipItemSorting?this.data:this._sortForGrouping(t,e.dir||"asc"),i=ke.accessor(t),s=i.get(r[0],t),o={field:t,value:s,items:[]},d=[o],l=0,h=r.length;li&&(y(i)||S(i))&&(e=i),e}},a.normalizeGroup=g,a.normalizeSort=s,a.process=function(e,r,i){var n,o,u,l,h,d,f,c,v,m,y,S;return r=r||{},n=r.group,o=_(g(n||[])),u=new a(e),l=p(n||[]),h=s(r.sort||[]),d=o?h:l.concat(h),v=r.filterCallback,m=r.filter,y=r.skip,S=r.take,d&&i&&(u=u.sort(d,t,t,i)),m&&(u=u.filter(m),v&&(u=v(u)),c=u.toArray().length),d&&!i&&(u=u.sort(d),n&&(e=u.toArray())),o?(u=u.group(n,e),y!==t&&S!==t&&(u=new a(z(u.toArray())).range(y,S),f=Q(l,function(e){return ge({},e,{skipItemSorting:!0})}),u=u.group(f,e))):(y!==t&&S!==t&&(u=u.range(y,S)),n&&(u=u.group(n,e))),{total:c,data:u.toArray()}},ne=Re.extend({init:function(e){this.data=e.data},read:function(e){e.success(this.data)},update:function(e){e.success(e.data)},create:function(e){e.success(e.data)},destroy:function(e){e.success(e.data)}}),ae=Re.extend({init:function(e){var t,r=this;e=r.options=ge({},r.options,e),be(Ee,function(t,r){typeof e[r]===qe&&(e[r]={url:e[r]})}),r.cache=e.cache?se.create(e.cache):{find:we,add:we},t=e.parameterMap,e.submit&&(r.submit=e.submit),Fe(e.push)&&(r.push=e.push),r.push||(r.push=Be),r.parameterMap=Fe(t)?t:function(e){var r={};return be(e,function(e,i){e in t&&(e=t[e],_e(e)&&(i=e.value(i),e=e.key)),r[e]=i}),r}},options:{parameterMap:Be},create:function(e){return Se(this.setup(e,Ce))},read:function(r){var i,n,a,s=this,o=s.cache;r=s.setup(r,Oe),i=r.success||we,n=r.error||we,a=o.find(r.data),a!==t?i(a):(r.success=function(e){o.add(r.data,e),i(e)},e.ajax(r))},update:function(e){return Se(this.setup(e,Pe))},destroy:function(e){return Se(this.setup(e,Te))},setup:function(e,t){e=e||{};var r,i=this,n=i.options[t],a=Fe(n.data)?n.data(e.data):n.data;return e=ge(!0,{},n,e),r=ge(!0,{},a,e.data),e.data=i.parameterMap(r,t),Fe(e.url)&&(e.url=e.url(r)),e}}),se=Re.extend({init:function(){this._store={}},add:function(e,r){e!==t&&(this._store[Ue(e)]=r)},find:function(e){return this._store[Ue(e)]},clear:function(){this._store={}},remove:function(e){delete this._store[Ue(e)]}}),se.create=function(e){var t={inmemory:function(){return new se}};return _e(e)&&Fe(e.find)?e:e===!0?new se:t[e]()},oe=Re.extend({init:function(e){var t,r,i,n,a,s,o,u,l,h,d,f,c,g,p=this;e=e||{};for(t in e)r=e[t],p[t]=typeof r===qe?He(r):r;n=e.modelBase||Y,_e(p.model)&&(p.model=i=n.define(p.model)),a=pe(p.data,p),p._dataAccessFunction=a,p.model&&(s=pe(p.groups,p),o=pe(p.serialize,p),u={},l={},h={},d={},f=!1,i=p.model,i.fields&&(be(i.fields,function(e,t){var r;c=e,_e(t)&&t.field?c=t.field:typeof t===qe&&(c=t),_e(t)&&t.from&&(r=t.from),f=f||r&&r!==e||c!==e,g=r||c,l[e]=g.indexOf(".")!==-1?He(g,!0):He(g),h[e]=He(e),u[r||c]=e,d[e]=r||c}),!e.serialize&&f&&(p.serialize=x(o,i,w,h,u,d))),p._dataAccessFunction=a,p._wrapDataAccessBase=R(i,k,l,u,d),p.data=x(a,i,k,l,u,d),p.groups=x(s,i,F,l,u,d))},errors:function(e){return e?e.errors:null},parse:Be,data:Be,total:function(e){return e.length},groups:Be,aggregates:function(){return{}},serialize:function(e){return e}}),ue=xe.extend({init:function(e){var r,i,n,a=this;e&&(i=e.data),e=a.options=ge({},a.options,e),a._map={},a._prefetch={},a._data=[],a._pristineData=[],a._ranges=[],a._view=[],a._pristineTotal=0,a._destroyed=[],a._pageSize=e.pageSize,a._page=e.page||(e.pageSize?1:t),a._sort=s(e.sort),a._filter=u(e.filter),a._group=g(e.group),a._aggregate=e.aggregate,a._total=e.total,a._shouldDetachObservableParents=!0,xe.fn.init.call(a),a.transport=le.create(e,i,a),Fe(a.transport.push)&&a.transport.push({pushCreate:pe(a._pushCreate,a),pushUpdate:pe(a._pushUpdate,a),pushDestroy:pe(a._pushDestroy,a)}),null!=e.offlineStorage&&("string"==typeof e.offlineStorage?(n=e.offlineStorage,a._storage={getItem:function(){return JSON.parse(localStorage.getItem(n))},setItem:function(e){localStorage.setItem(n,Ue(a.reader.serialize(e)))}}):a._storage=e.offlineStorage),a.reader=new ke.data.readers[e.schema.type||"json"](e.schema),r=a.reader.model||{},a._detachObservableParents(),a._data=a._observe(a._data),a._online=!0,a.bind(["push",Ne,Ae,Ge,Ie,je,Le],e)},options:{data:null,schema:{modelBase:Y},offlineStorage:null,serverSorting:!1,serverPaging:!1,serverFiltering:!1,serverGrouping:!1,serverAggregates:!1,batch:!1,inPlaceSort:!1},clone:function(){return this},online:function(r){return r!==t?this._online!=r&&(this._online=r,r)?this.sync():e.Deferred().resolve().promise():this._online},offlineData:function(e){return null==this.options.offlineStorage?null:e!==t?this._storage.setItem(e):this._storage.getItem()||[]},_isServerGrouped:function(){var e=this.group()||[];return this.options.serverGrouping&&e.length},_pushCreate:function(e){this._push(e,"pushCreate")},_pushUpdate:function(e){this._push(e,"pushUpdate")},_pushDestroy:function(e){this._push(e,"pushDestroy")},_push:function(e,t){var r=this._readData(e);r||(r=e),this[t](r)},_flatData:function(e,t){if(e){if(this._isServerGrouped())return C(e);if(!t)for(var r=0;r-1)return t(i,r),!0})},_removePristineForModel:function(e){this._executeOnPristineForModel(e,function(e,t){t.splice(e,1)})},_readData:function(e){var t=this._isServerGrouped()?this.reader.groups:this.reader.data;return t.call(this.reader,e)},_eachPristineItem:function(e){var t=this,r=t.options,i=t._getCurrentRangeSpan();t._eachItem(t._pristineData,e),r.serverPaging&&r.useRanges&&be(i,function(r,i){t._eachItem(i.pristineData,e)})},_eachItem:function(e,t){e&&e.length&&(this._isServerGrouped()?P(e,t):t(e))},_pristineForModel:function(e){var t,r,i=function(i){if(r=N(i,e),r>-1)return t=i[r],!0};return this._eachPristineItem(i),t},_cancelModel:function(e){var t=this,r=this._pristineForModel(e);this._eachItem(this._data,function(i){var n=G(i,e);n>=0&&(!r||e.isNew()&&!r.__state__?(t._modelCanceled(e),i.splice(n,1),t._removeModelFromRanges(e)):(i[n].accept(r),"update"==r.__state__&&(i[n].dirty=!0)))})},_modelCanceled:we,_submit:function(t,r){var i=this;i.trigger(Ge,{type:"submit"}),i.trigger(Le),i.transport.submit(ge({success:function(r,i){var n=e.grep(t,function(e){return e.type==i})[0];n&&n.resolve({response:r,models:n.models,type:i})},error:function(e,r,n){for(var a=0;ac._total&&(c._pageSize=c._total,c.options.pageSize&&c.options.pageSize>c._pageSize&&(c._pageSize=c.options.pageSize)),c._aggregate&&g.serverAggregates&&(c._aggregateResult=c._readAggregates(e)),e=c._readData(e),c._destroyed=[]}else{for(e=c._readData(e),r=[],n={},a=c.reader.model,s=a?a.idField:"id",o=0;o=0;t--)r=e[t],r.hasSubgroups?this._clearEmptyGroups(r.items):r.items&&!r.items.length&&$e.apply(r.parent(),[t,1])},_queryProcess:function(e,t){return this.options.inPlaceSort?a.process(e,t,this.options.inPlaceSort):a.process(e,t)},_mergeState:function(r){var i=this;return r!==t&&(i._pageSize=r.pageSize,i._page=r.page,i._sort=r.sort,i._filter=r.filter,i._group=r.group,i._aggregate=r.aggregate,i._skip=i._currentRangeStart=r.skip,i._take=r.take,i._skip===t&&(i._skip=i._currentRangeStart=i.skip(),r.skip=i.skip()),i._take===t&&i._pageSize!==t&&(i._take=i._pageSize,r.take=i._take),r.sort&&(i._sort=r.sort=s(r.sort)),r.filter&&(i._filter=r.filter=i.options.accentFoldingFiltering&&!e.isEmptyObject(r.filter)?e.extend({},u(r.filter),{accentFoldingFiltering:i.options.accentFoldingFiltering}):u(r.filter)),r.group&&(i._group=r.group=g(r.group)),r.aggregate&&(i._aggregate=r.aggregate=c(r.aggregate))),r},query:function(r){var i,n,a,s=this.options.serverSorting||this.options.serverPaging||this.options.serverFiltering||this.options.serverGrouping||this.options.serverAggregates;return s||(this._data===t||0===this._data.length)&&!this._destroyed.length?(this.options.endless&&(n=r.pageSize-this.pageSize(),n>0?(n=this.pageSize(),r.page=r.pageSize/n,r.pageSize=n):(r.page=1,this.options.endless=!1)),this.read(this._mergeState(r))):(a=this.trigger(Ge,{type:"read"}),a||(this.trigger(Le),i=this._queryProcess(this._data,this._mergeState(r)),this._setFilterTotal(i.total,!0),this._aggregateResult=this._calculateAggregates(i.dataToAggregate||this._data,r),this.view(i.data),this.trigger(je,{type:"read"}),this.trigger(Ae,{items:i.data})),e.Deferred().resolve(a).promise())},_setFilterTotal:function(e,r){var i=this;i.options.serverFiltering||(e!==t?i._total=e:r&&(i._total=i._data.length))},fetch:function(e){var t=this,r=function(r){r!==!0&&Fe(e)&&e.call(t)};return this._query().done(r)},_query:function(e){var t=this;return t.query(ge({},{page:t.page(),pageSize:t.pageSize(),sort:t.sort(),filter:t.filter(),group:t.group(),aggregate:t.aggregate()},e))},next:function(e){var t=this,r=t.page(),i=t.total();if(e=e||{},r&&!(i&&r+1>t.totalPages()))return t._skip=t._currentRangeStart=r*t.take(),r+=1,e.page=r,t._query(e),r},prev:function(e){var t=this,r=t.page();if(e=e||{},r&&1!==r)return t._skip=t._currentRangeStart=t._skip-t.take(),r-=1,e.page=r,t._query(e),r},page:function(e){var r,i=this;return e!==t?(e=Je.max(Je.min(Je.max(e,1),i.totalPages()),1),i._query(i._pageableQueryOptions({page:e})),t):(r=i.skip(),r!==t?Je.round((r||0)/(i.take()||1))+1:t)},pageSize:function(e){var r=this;return e!==t?(r._query(r._pageableQueryOptions({pageSize:e,page:1})),t):r.take()},sort:function(e){var r=this;return e!==t?(r._query({sort:e}),t):r._sort},filter:function(e){var r=this;return e===t?r._filter:(r.trigger("reset"),r._query({filter:e,page:1}),t)},group:function(e){var r=this;return e!==t?(r._query({group:e}),t):r._group},total:function(){return parseInt(this._total||0,10)},aggregate:function(e){var r=this;return e!==t?(r._query({aggregate:e}),t):r._aggregate},aggregates:function(){var e=this._aggregateResult;return ve(e)&&(e=this._emptyAggregates(this.aggregate())),e},_emptyAggregates:function(e){var t,r,i={};if(!ve(e))for(t={},me(e)||(e=[e]),r=0;r=n;i--)r=a[i],t={value:e.get?e.get(r.field):e[r.field],field:r.field,items:t?[t]:[e],hasSubgroups:!!t,aggregates:this._emptyAggregates(r.aggregates)};return t},totalPages:function(){var e=this,t=e.pageSize()||e.total();return Je.ceil((e.total()||0)/t)},inRange:function(e,t){var r=this,i=Je.min(e+t,r.total());return!r.options.serverPaging&&r._data.length>0||r._findRange(e,i).length>0},lastRange:function(){var e=this._ranges;return e[e.length-1]||{start:0,end:0,data:[]}},firstItemUid:function(){var e=this._ranges;return e.length&&e[0].data.length&&e[0].data[0].uid},enableRequestsInProgress:function(){this._skipRequestsInProgress=!1},_timeStamp:function(){return(new Date).getTime()},range:function(e,r,i){this._currentRequestTimeStamp=this._timeStamp(),this._skipRequestsInProgress=!0,e=Je.min(e||0,this.total()),i=Fe(i)?i:we;var n,a=this,s=Je.max(Je.floor(e/r),0)*r,o=Je.min(s+r,a.total());return n=a._findRange(e,Je.min(e+r,a.total())),n.length||0===a.total()?(a._processRangeData(n,e,r,s,o),i(),t):(r!==t&&(a._rangeExists(s,o)?ss&&o=i.start&&e<=i.end){for(c=0,a=n;a=i.start&&(l=i.data,h=i.end,b||(S.inPlaceSort?d=v._queryProcess(i.data,{filter:v.filter()}):(_=p(v.group()||[]).concat(s(v.sort()||[])),d=v._queryProcess(i.data,{sort:_,filter:v.filter()})),f=l=d.data,d.total!==t&&(h=d.total)),o=0,e+c>i.start&&(o=e+c-i.start),u=f.length,h>r&&(u-=h-r),c+=u-o,y=v._mergeGroups(y,l,o,u),r<=i.end&&c==r-e))return y;break}return[]},_mergeGroups:function(e,t,r,i){if(this._isServerGrouped()){var n,a=t.toJSON();return e.length&&(n=e[e.length-1]),D(n,a,r,i),e.concat(a)}return e.concat(t.slice(r,i))},_processRangeData:function(e,r,i,n,a){var s,o,u,l,h=this;h._pending=t,h._skip=r>h.skip()?Je.min(a,(h.totalPages()-1)*h.take()):n,h._currentRangeStart=r,h._take=i,s=h.options.serverPaging,o=h.options.serverSorting,u=h.options.serverFiltering,l=h.options.serverAggregates;try{h.options.serverPaging=!0,h._isServerGrouped()||h.group()&&h.group().length||(h.options.serverSorting=!0),h.options.serverFiltering=!0,h.options.serverPaging=!0,h.options.serverAggregates=!0,s&&(h._detachObservableParents(),h._data=e=h._observe(e)),h._process(e)}finally{h.options.serverPaging=s,h.options.serverSorting=o,h.options.serverFiltering=u,h.options.serverAggregates=l}},skip:function(){var e=this;return e._skip===t?e._page!==t?(e._page-1)*(e.take()||1):t:e._skip},currentRangeStart:function(){return this._currentRangeStart||0},take:function(){return this._take||this._pageSize},_prefetchSuccessHandler:function(e,t,r,i){var n=this,a=n._timeStamp();return function(s){var o,u,l,h=!1,d={start:e,end:t,data:[],timestamp:n._timeStamp()};if(n._dequeueRequest(),n.trigger(je,{response:s,type:"read"}),s=n.reader.parse(s),l=n._readData(s),l.length){for(o=0,u=n._ranges.length;o=n._currentRequestTimeStamp||!n._skipRequestsInProgress)&&(r&&l.length?r():n.trigger(Ae,{}))}},prefetch:function(e,t,r){var i=this,n=Je.min(e+t,i.total()),a={take:t,skip:e,page:e/t+1,pageSize:t,sort:i._sort,filter:i._filter,group:i._group,aggregate:i._aggregate};i._rangeExists(e,n)?r&&r():(clearTimeout(i._timeout),i._timeout=setTimeout(function(){i._queueRequest(a,function(){i.trigger(Ge,{type:"read"})?i._dequeueRequest():i.transport.read({data:i._params(a),success:i._prefetchSuccessHandler(e,n,r),error:function(){var e=Xe.call(arguments);i.error.apply(i,e)}})})},100))},_multiplePrefetch:function(e,t,r){var i=this,n=Je.min(e+t,i.total()),a={take:t,skip:e,page:e/t+1,pageSize:t,sort:i._sort,filter:i._filter,group:i._group,aggregate:i._aggregate};i._rangeExists(e,n)?r&&r():i.trigger(Ge,{type:"read"})||i.transport.read({data:i._params(a),success:i._prefetchSuccessHandler(e,n,r,!0)})},_rangeExists:function(e,t){var r,i,n=this,a=n._ranges;for(r=0,i=a.length;r=t)return!0;return!1},_getCurrentRangeSpan:function(){var e,t,r=this,i=r._ranges,n=r.currentRangeStart(),a=n+(r.take()||0),s=[],o=i.length;for(t=0;t=n||e.start>=n&&e.start<=a)&&s.push(e);return s},_removeModelFromRanges:function(e){var t,r,i,n=this;for(r=0,i=this._ranges.length;r=e){n._getByUid(t.uid,r.data)||(n._isServerGrouped()?r.data.splice(e,0,n._wrapInEmptyGroup(t)):r.data.splice(e,0,t));break}n._updateRangesLength()},_updateRangesLength:function(){var e,t,r=this,i=r._ranges||[],n=i.length,a=!1,s=0,o=0;for(t=0;t0?this.filter(this._hierarchicalFilter):(this.options.filter=this._hierarchicalFilter,this._filter=u(this.options.filter),this._hierarchicalFilter=null)),t},remove:function(e){var t,r=e.parentNode(),i=this;return r&&r._initChildren&&(i=r.children),t=ue.fn.remove.call(i,e),r&&!i.data().length&&(r.hasChildren=!1),t},success:J("success"),data:J("data"),insert:function(e,t){var r=this.parent();return r&&r._initChildren&&(r.hasChildren=!0,r._initChildren()),ue.fn.insert.call(this,e,t)},filter:function(e){return e===t?this._filter:(!this.options.serverFiltering&&this._markHierarchicalQuery(e)&&(e={logic:"or",filters:[e,{field:"_matchFilter",operator:"equals",value:!0}]}),this.trigger("reset"),this._query({filter:e,page:1}),t)},_markHierarchicalQuery:function(t){var r,i,n,s,o,l=this.options.accentFoldingFiltering;return t=l?e.extend({},u(t),{accentFoldingFiltering:l}):u(t),t&&0!==t.filters.length?(r=a.filterExpr(t),n=r.fields,s=r.operators,i=o=Function("d, __f, __o","return "+r.expression),(n.length||s.length)&&(o=function(e){return i(e,n,s)}),this._updateHierarchicalFilter(o),!0):(this._updateHierarchicalFilter(function(){return!0}),!1)},_updateHierarchicalFilter:function(e){var t,r,i=this._data,n=!1;for(r=0;r=this.total()?(this.trigger("endreached",{index:e}),null):this.useRanges?this.useRanges?((e=this.skip+r)&&(i=this.range(Math.floor(e/r)*r)),e===this.prefetchThreshold&&this._prefetch(),e===this.midPageThreshold?this.range(this.nextMidRange,!0):e===this.nextPageThreshold?this.range(this.nextFullRange):e===this.pullBackThreshold&&this.range(this.offset===this.skip?this.previousMidRange:this.previousFullRange),i?this.dataSource.at(e-this.dataOffset):(this.trigger("endreached",{index:e}),null)):t:this.dataSource.view()[e]},indexOf:function(e){return this.dataSource.data().indexOf(e)+this.dataOffset},total:function(){return parseInt(this.dataSource.total(),10)},next:function(){var e=this,t=e.pageSize,r=e.skip-e.viewSize+t,i=Je.max(Je.floor(r/t),0)*t;this.offset=r,this.dataSource.prefetch(i,t,function(){e._goToRange(r,!0)})},range:function(e,t){if(this.offset===e)return!0;var r=this,i=this.pageSize,n=Je.max(Je.floor(e/i),0)*i,a=this.dataSource;return t&&(n+=i),a.inRange(e,i)?(this.offset=e,this._recalculate(),this._goToRange(e),!0):!this.prefetch||(a.prefetch(n,i,function(){r.offset=e,r._recalculate(),r._goToRange(e,!0)}),!1)},syncDataSource:function(){var e=this.offset;this.offset=null,this.range(e)},destroy:function(){this.unbind()},_prefetch:function(){var e=this,t=this.pageSize,r=this.skip+t,i=this.dataSource;i.inRange(r,t)||this._prefetching||!this.prefetch||(this._prefetching=!0,this.trigger("prefetching",{skip:r,take:t}),i.prefetch(r,t,function(){e._prefetching=!1,e.trigger("prefetched",{skip:r,take:t})}))},_goToRange:function(e,t){this.offset===e&&(this.dataOffset=e,this._expanding=t,this.dataSource.range(e,this.pageSize),this.dataSource.enableRequestsInProgress())},_reset:function(){this._syncPending=!0},_change:function(){var e=this.dataSource;this.length=this.useRanges?e.lastRange().end:e.view().length,this._syncPending&&(this._syncWithDataSource(),this._recalculate(),this._syncPending=!1,this.trigger("reset",{offset:this.offset})),this.trigger("resize"),this._expanding&&this.trigger("expand"),delete this._expanding},_syncWithDataSource:function(){var e=this.dataSource;this._firstItemUid=e.firstItemUid(),this.dataOffset=this.offset=e.skip()||0,this.pageSize=e.pageSize(),this.useRanges=e.options.serverPaging},_recalculate:function(){var e=this.pageSize,t=this.offset,r=this.viewSize,i=Math.ceil(t/e)*e;this.skip=i,this.midPageThreshold=i+e-1,this.nextPageThreshold=i+r-1,this.prefetchThreshold=i+Math.floor(e/3*2),this.pullBackThreshold=this.offset-1,this.nextMidRange=i+e-r,this.nextFullRange=i,this.previousMidRange=t-r,this.previousFullRange=i-e}}),ce=ke.Observable.extend({init:function(e,t){var r=this;ke.Observable.fn.init.call(r),this.dataSource=e,this.batchSize=t,this._total=0,this.buffer=new fe(e,3*t),this.buffer.bind({endreached:function(e){r.trigger("endreached",{index:e.index})},prefetching:function(e){r.trigger("prefetching",{skip:e.skip,take:e.take})},prefetched:function(e){r.trigger("prefetched",{skip:e.skip,take:e.take})},reset:function(){r._total=0,r.trigger("reset")},resize:function(){r._total=Math.ceil(this.length/r.batchSize),r.trigger("resize",{total:r.total(),offset:this.offset})}})},syncDataSource:function(){this.buffer.syncDataSource()},at:function(e){var t,r,i=this.buffer,n=e*this.batchSize,a=this.batchSize,s=[];for(i.offset>n&&i.at(i.offset-1),r=0;r