/** * Copyright 2014 Telerik AD * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ !function(e,define){define(["./kendo.core.min","./kendo.data.min"],e)}(function(){return function(e,t){function n(t,n,i){return v.extend({init:function(e,t,n){var i=this;v.fn.init.call(i,e.element[0],t,n),i.widget=e,i._dataBinding=z(i.dataBinding,i),i._dataBound=z(i.dataBound,i),i._itemChange=z(i.itemChange,i)},itemChange:function(e){a(e.item[0],e.data,this._ns(e.ns),[e.data].concat(this.bindings[t]._parents()))},dataBinding:function(e){var t,n,i=this.widget,r=e.removedItems||i.items();for(t=0,n=r.length;n>t;t++)l(r[t])},_ns:function(t){t=t||S.ui;var n=[S.ui,S.dataviz.ui,S.mobile.ui];return n.splice(e.inArray(t,n),1),n.unshift(t),S.rolesFromNamespaces(n)},dataBound:function(e){{var i,r,o,s,u=this.widget,l=e.addedItems||u.items(),d=u[n];d.group()||[]}if(l.length)for(o=e.addedDataItems||d.flatView(),s=this.bindings[t]._parents(),i=0,r=o.length;r>i;i++)a(l[i],o[i],this._ns(e.ns),[o[i]].concat(s))},refresh:function(e){var r,o=this,a=o.widget;e=e||{},e.action||(o.destroy(),a.bind("dataBinding",o._dataBinding),a.bind("dataBound",o._dataBound),a.bind("itemChange",o._itemChange),r=o.bindings[t].get(),a[n]instanceof S.data.DataSource&&a[n]!=r&&(r instanceof S.data.DataSource?a[i](r):r&&r._dataSource?a[i](r._dataSource):a[n].data(r)))},destroy:function(){var e=this.widget;e.unbind("dataBinding",this._dataBinding),e.unbind("dataBound",this._dataBound),e.unbind("itemChange",this._itemChange)}})}function i(e,n){var i=S.initWidget(e,{},n);return i?new b(i):t}function r(e){var t,n,i,o,a,s,u,l={};for(u=e.match(w),t=0,n=u.length;n>t;t++)i=u[t],o=i.indexOf(":"),a=i.substring(0,o),s=i.substring(o+1),"{"==s.charAt(0)&&(s=r(s)),l[a]=s;return l}function o(e,t,n){var i,r={};for(i in e)r[i]=new n(t,e[i]);return r}function a(e,t,n,s){var l,d,c,f=e.getAttribute("data-"+S.ns+"role"),h=e.getAttribute("data-"+S.ns+"bind"),v=e.children,y=[],b=!0,w={};if(s=s||[t],(f||h)&&u(e),f&&(c=i(e,n)),h&&(h=r(h.replace(x,"")),c||(w=S.parseOptions(e,{textField:"",valueField:"",template:"",valueUpdate:E,valuePrimitive:!1,autoBind:!0}),w.roles=n,c=new _(e,w)),c.source=t,d=o(h,s,g),w.template&&(d.template=new m(s,"",w.template)),d.click&&(h.events=h.events||{},h.events.click=h.click,d.click.destroy(),delete d.click),d.source&&(b=!1),h.attr&&(d.attr=o(h.attr,s,g)),h.style&&(d.style=o(h.style,s,g)),h.events&&(d.events=o(h.events,s,p)),c.bind(d)),c&&(e.kendoBindingTarget=c),b&&v){for(l=0;v.length>l;l++)y[l]=v[l];for(l=0;y.length>l;l++)a(y[l],t,n,s)}}function s(t,n){var i,r,o,s=S.rolesFromNamespaces([].slice.call(arguments,2));for(n=S.observable(n),t=e(t),i=0,r=t.length;r>i;i++)o=t[i],1===o.nodeType&&a(o,n,s)}function u(e){var t=e.kendoBindingTarget;t&&(t.destroy(),H?delete e.kendoBindingTarget:e.removeAttribute?e.removeAttribute("kendoBindingTarget"):e.kendoBindingTarget=null)}function l(e){u(e),d(e)}function d(e){var t,n,i=e.children;if(i)for(t=0,n=i.length;n>t;t++)l(i[t])}function c(t){var n,i;for(t=e(t),n=0,i=t.length;i>n;n++)l(t[n])}function f(e,t){var n=e.element,i=n[0].kendoBindingTarget;i&&s(n,i.source,t)}var h,g,p,m,v,y,_,b,w,x,S=window.kendo,M=S.Observable,k=S.data.ObservableObject,T=S.data.ObservableArray,C={}.toString,O={},D=S.Class,z=e.proxy,A="value",P="source",F="events",N="checked",H=!0,E="change";!function(){var e=document.createElement("a");e.innerText!==t?h="innerText":e.textContent!==t&&(h="textContent");try{delete e.test}catch(n){H=!1}}(),g=M.extend({init:function(e,t){var n=this;M.fn.init.call(n),n.source=e[0],n.parents=e,n.path=t,n.dependencies={},n.dependencies[t]=!0,n.observable=n.source instanceof M,n._access=function(e){n.dependencies[e.field]=!0},n.observable&&(n._change=function(e){n.change(e)},n.source.bind(E,n._change))},_parents:function(){var t,n=this.parents,i=this.get();return i&&"function"==typeof i.parent&&(t=i.parent(),e.inArray(t,n)<0&&(n=[t].concat(n))),n},change:function(e){var t,n,i=e.field,r=this;if("this"===r.path)r.trigger(E,e);else for(t in r.dependencies)if(0===t.indexOf(i)&&(n=t.charAt(i.length),!n||"."===n||"["===n)){r.trigger(E,e);break}},start:function(e){e.bind("get",this._access)},stop:function(e){e.unbind("get",this._access)},get:function(){var e=this,n=e.source,i=0,r=e.path,o=n;if(!e.observable)return o;for(e.start(e.source),o=n.get(r);o===t&&n;)n=e.parents[++i],n instanceof k&&(o=n.get(r));if(o===t)for(n=e.source;o===t&&n;)n=n.parent(),n instanceof k&&(o=n.get(r));return"function"==typeof o&&(i=r.lastIndexOf("."),i>0&&(n=n.get(r.substring(0,i))),e.start(n),o=n!==e.source?o.call(n,e.source):o.call(n),e.stop(n)),n&&n!==e.source&&(e.currentSource=n,n.unbind(E,e._change).bind(E,e._change)),e.stop(e.source),o},set:function(e){var t=this.currentSource||this.source,n=S.getter(this.path)(t);"function"==typeof n?t!==this.source?n.call(t,this.source,e):n.call(t,e):t.set(this.path,e)},destroy:function(){this.observable&&this.source.unbind(E,this._change),this.unbind()}}),p=g.extend({get:function(){var e,t=this.source,n=this.path,i=0;for(e=t.get(n);!e&&t;)t=this.parents[++i],t instanceof k&&(e=t.get(n));return z(e,t)}}),m=g.extend({init:function(e,t,n){var i=this;g.fn.init.call(i,e,t),i.template=n},render:function(e){var t;return this.start(this.source),t=S.render(this.template,e),this.stop(this.source),t}}),v=D.extend({init:function(e,t,n){this.element=e,this.bindings=t,this.options=n},bind:function(e,t){var n=this;e=t?e[t]:e,e.bind(E,function(e){n.refresh(t||e)}),n.refresh(t)},destroy:function(){}}),O.attr=v.extend({refresh:function(e){this.element.setAttribute(e,this.bindings.attr[e].get())}}),O.style=v.extend({refresh:function(e){this.element.style[e]=this.bindings.style[e].get()||""}}),O.enabled=v.extend({refresh:function(){this.bindings.enabled.get()?this.element.removeAttribute("disabled"):this.element.setAttribute("disabled","disabled")}}),O.readonly=v.extend({refresh:function(){this.bindings.readonly.get()?this.element.setAttribute("readonly","readonly"):this.element.removeAttribute("readonly")}}),O.disabled=v.extend({refresh:function(){this.bindings.disabled.get()?this.element.setAttribute("disabled","disabled"):this.element.removeAttribute("disabled")}}),O.events=v.extend({init:function(e,t,n){v.fn.init.call(this,e,t,n),this.handlers={}},refresh:function(t){var n=e(this.element),i=this.bindings.events[t],r=this.handlers[t];r&&n.off(t,r),r=this.handlers[t]=i.get(),n.on(t,i.source,r)},destroy:function(){var t,n=e(this.element);for(t in this.handlers)n.off(t,this.handlers[t])}}),O.text=v.extend({refresh:function(){var e=this.bindings.text.get();null==e&&(e=""),this.element[h]=e}}),O.visible=v.extend({refresh:function(){this.element.style.display=this.bindings.visible.get()?"":"none"}}),O.invisible=v.extend({refresh:function(){this.element.style.display=this.bindings.invisible.get()?"none":""}}),O.html=v.extend({refresh:function(){this.element.innerHTML=this.bindings.html.get()}}),O.value=v.extend({init:function(t,n,i){v.fn.init.call(this,t,n,i),this._change=z(this.change,this),this.eventName=i.valueUpdate||E,e(this.element).on(this.eventName,this._change),this._initChange=!1},change:function(){var e,t;this._initChange=this.eventName!=E,e=this.element.value,t=this.element.type,"date"==t?e=S.parseDate(e,"yyyy-MM-dd"):"datetime-local"==t?e=S.parseDate(e,["yyyy-MM-ddTHH:mm:ss","yyyy-MM-ddTHH:mm"]):"number"==t&&(e=S.parseFloat(e)),this.bindings[A].set(e),this._initChange=!1},refresh:function(){var e,t;this._initChange||(e=this.bindings[A].get(),null==e&&(e=""),t=this.element.type,"date"==t?e=S.toString(e,"yyyy-MM-dd"):"datetime-local"==t&&(e=S.toString(e,"yyyy-MM-ddTHH:mm:ss")),this.element.value=e),this._initChange=!1},destroy:function(){e(this.element).off(this.eventName,this._change)}}),O.source=v.extend({init:function(e,t,n){v.fn.init.call(this,e,t,n);var i=this.bindings.source.get();i instanceof S.data.DataSource&&n.autoBind!==!1&&i.fetch()},refresh:function(e){var t=this,n=t.bindings.source.get();n instanceof T||n instanceof S.data.DataSource?(e=e||{},"add"==e.action?t.add(e.index,e.items):"remove"==e.action?t.remove(e.index,e.items):"itemchange"!=e.action&&t.render()):t.render()},container:function(){var e=this.element;return"table"==e.nodeName.toLowerCase()&&(e.tBodies[0]||e.appendChild(document.createElement("tbody")),e=e.tBodies[0]),e},template:function(){var e=this.options,t=e.template,n=this.container().nodeName.toLowerCase();return t||(t="select"==n?e.valueField||e.textField?S.format('',e.valueField||e.textField,e.textField||e.valueField):"":"tbody"==n?"#:data#":"ul"==n||"ol"==n?"
  • #:data#
  • ":"#:data#",t=S.template(t)),t},add:function(t,n){var i,r,o,s,u=this.container(),l=u.cloneNode(!1),d=u.children[t];if(e(l).html(S.render(this.template(),n)),l.children.length)for(i=this.bindings.source._parents(),r=0,o=n.length;o>r;r++)s=l.children[0],u.insertBefore(s,d||null),a(s,n[r],this.options.roles,[n[r]].concat(i))},remove:function(e,t){var n,i,r=this.container();for(n=0;t.length>n;n++)i=r.children[e],l(i),r.removeChild(i)},render:function(){var t,n,i,r=this.bindings.source.get(),o=this.container(),s=this.template();if(r instanceof S.data.DataSource&&(r=r.view()),r instanceof T||"[object Array]"===C.call(r)||(r=[r]),this.bindings.template){if(d(o),e(o).html(this.bindings.template.render(r)),o.children.length)for(t=this.bindings.source._parents(),n=0,i=r.length;i>n;n++)a(o.children[n],r[n],this.options.roles,[r[n]].concat(t))}else e(o).html(S.render(s,r))}}),O.input={checked:v.extend({init:function(t,n,i){v.fn.init.call(this,t,n,i),this._change=z(this.change,this),e(this.element).change(this._change)},change:function(){var e,t,n=this.element,i=this.value();"radio"==n.type?this.bindings[N].set(i):"checkbox"==n.type&&(e=this.bindings[N].get(),e instanceof T?(i=this.element.value,"on"!==i&&"off"!==i&&(t=e.indexOf(i),t>-1?e.splice(t,1):e.push(i))):this.bindings[N].set(i))},refresh:function(){var e=this.bindings[N].get(),t=e,n=this.element;"checkbox"==n.type?(t instanceof T&&(e=this.element.value,t.indexOf(e)>=0&&(e=!0)),n.checked=e===!0):"radio"==n.type&&null!=e&&n.value===""+e&&(n.checked=!0)},value:function(){var e=this.element,t=e.value;return"checkbox"==e.type&&(t=e.checked),t},destroy:function(){e(this.element).off(E,this._change)}})},O.select={value:v.extend({init:function(t,n,i){v.fn.init.call(this,t,n,i),this._change=z(this.change,this),e(this.element).change(this._change)},change:function(){var e,t,n,i,r,o,a=[],s=this.element,u=this.options.valueField||this.options.textField,l=this.options.valuePrimitive;for(r=0,o=s.options.length;o>r;r++)t=s.options[r],t.selected&&(i=t.attributes.value,i=i&&i.specified?t.value:t.text,a.push(i));if(u)for(e=this.bindings.source.get(),n=0;a.length>n;n++)for(r=0,o=e.length;o>r;r++)if(e[r].get(u)==a[n]){a[n]=e[r];break}i=this.bindings[A].get(),i instanceof T?i.splice.apply(i,[0,i.length].concat(a)):this.bindings[A].set(l||!(i instanceof k)&&u?a[0].get(u):a[0])},refresh:function(){var e,t,n,i=this.element,r=i.options,o=this.bindings[A].get(),a=o,s=this.options.valueField||this.options.textField,u=!1;for(a instanceof T||(a=new T([o])),i.selectedIndex=-1,n=0;a.length>n;n++)for(o=a[n],s&&o instanceof k&&(o=o.get(s)),e=0;r.length>e;e++)t=r[e].value,""===t&&""!==o&&(t=r[e].text),t==o&&(r[e].selected=!0,u=!0)},destroy:function(){e(this.element).off(E,this._change)}})},O.widget={events:v.extend({init:function(e,t,n){v.fn.init.call(this,e.element[0],t,n),this.widget=e,this.handlers={}},refresh:function(e){var t=this.bindings.events[e],n=this.handlers[e];n&&this.widget.unbind(e,n),n=t.get(),this.handlers[e]=function(e){e.data=t.source,n(e),e.data===t.source&&delete e.data},this.widget.bind(e,this.handlers[e])},destroy:function(){var e;for(e in this.handlers)this.widget.unbind(e,this.handlers[e])}}),checked:v.extend({init:function(e,t,n){v.fn.init.call(this,e.element[0],t,n),this.widget=e,this._change=z(this.change,this),this.widget.bind(E,this._change)},change:function(){this.bindings[N].set(this.value())},refresh:function(){this.widget.check(this.bindings[N].get()===!0)},value:function(){var e=this.element,t=e.value;return("on"==t||"off"==t)&&(t=e.checked),t},destroy:function(){this.widget.unbind(E,this._change)}}),visible:v.extend({init:function(e,t,n){v.fn.init.call(this,e.element[0],t,n),this.widget=e},refresh:function(){var e=this.bindings.visible.get();this.widget.wrapper[0].style.display=e?"":"none"}}),invisible:v.extend({init:function(e,t,n){v.fn.init.call(this,e.element[0],t,n),this.widget=e},refresh:function(){var e=this.bindings.invisible.get();this.widget.wrapper[0].style.display=e?"none":""}}),enabled:v.extend({init:function(e,t,n){v.fn.init.call(this,e.element[0],t,n),this.widget=e},refresh:function(){this.widget.enable&&this.widget.enable(this.bindings.enabled.get())}}),disabled:v.extend({init:function(e,t,n){v.fn.init.call(this,e.element[0],t,n),this.widget=e},refresh:function(){this.widget.enable&&this.widget.enable(!this.bindings.disabled.get())}}),source:n("source","dataSource","setDataSource"),value:v.extend({init:function(t,n,i){v.fn.init.call(this,t.element[0],n,i),this.widget=t,this._change=e.proxy(this.change,this),this.widget.first(E,this._change);var r=this.bindings.value.get();this._valueIsObservableObject=!i.valuePrimitive&&(null==r||r instanceof k),this._valueIsObservableArray=r instanceof T,this._initChange=!1},change:function(){var e,t,n,i,r,o,a,s=this.widget.value(),u=this.options.dataValueField||this.options.dataTextField,l="[object Array]"===C.call(s),d=this._valueIsObservableObject,c=[];if(this._initChange=!0,u)if(this.bindings.source&&(a=this.bindings.source.get()),""===s&&(d||this.options.valuePrimitive))s=null;else{for((!a||a instanceof S.data.DataSource)&&(a=this.widget.dataSource.view()),l&&(t=s.length,c=s.slice(0)),r=0,o=a.length;o>r;r++)if(n=a[r],i=n.get(u),l){for(e=0;t>e;e++)if(i==c[e]){c[e]=n;break}}else if(i==s){s=d?n:i;break}c[0]&&(s=this._valueIsObservableArray?c:d||!u?c[0]:c[0].get(u))}this.bindings.value.set(s),this._initChange=!1},refresh:function(){if(!this._initChange){var e,n=this.options.dataValueField||this.options.dataTextField,i=this.bindings.value.get(),r=0,o=[];if(i===t&&(i=null),n)if(i instanceof T){for(e=i.length;e>r;r++)o[r]=i[r].get(n);i=o}else i instanceof k&&(i=i.get(n));this.widget.value(i)}this._initChange=!1},destroy:function(){this.widget.unbind(E,this._change)}}),gantt:{dependencies:n("dependencies","dependencies","setDependenciesDataSource")},multiselect:{value:v.extend({init:function(t,n,i){v.fn.init.call(this,t.element[0],n,i),this.widget=t,this._change=e.proxy(this.change,this),this.widget.first(E,this._change),this._initChange=!1},change:function(){var e,t,n,i,r,o,a,s,u,l=this,d=l.bindings[A].get(),c=l.options.valuePrimitive,f=c?l.widget.value():l.widget.dataItems(),h=this.options.dataValueField||this.options.dataTextField;if(f=f.slice(0),l._initChange=!0,d instanceof T){for(e=[],t=f.length,n=0,i=0,r=d[n],o=!1;r;){for(u=!1,i=0;t>i;i++)if(c?o=f[i]==r:(s=f[i],s=s.get?s.get(h):s,o=s==(r.get?r.get(h):r)),o){f.splice(i,1),t-=1,u=!0;break}u?n+=1:(e.push(r),y(d,n,1),a=n),r=d[n]}y(d,d.length,0,f),e.length&&d.trigger("change",{action:"remove",items:e,index:a}),f.length&&d.trigger("change",{action:"add",items:f,index:d.length-1})}else l.bindings[A].set(f);l._initChange=!1},refresh:function(){if(!this._initChange){var e,n,i=this.options.dataValueField||this.options.dataTextField,r=this.bindings.value.get(),o=0,a=[];if(r===t&&(r=null),i)if(r instanceof T){for(e=r.length;e>o;o++)n=r[o],a[o]=n.get?n.get(i):n;r=a}else r instanceof k&&(r=r.get(i));this.widget.value(r)}},destroy:function(){this.widget.unbind(E,this._change)}})}},y=function(e,t,n,i){var r,o,a,s,u;if(i=i||[],n=n||0,r=i.length,o=e.length,a=[].slice.call(e,t+n),s=a.length,r){for(r=t+r,u=0;r>t;t++)e[t]=i[u],u++;e.length=r}else if(n)for(e.length=t,n+=t;n>t;)delete e[--n];if(s){for(s=t+s,u=0;s>t;t++)e[t]=a[u],u++;e.length=s}for(t=e.length;o>t;)delete e[t],t++},_=D.extend({init:function(e,t){this.target=e,this.options=t,this.toDestroy=[]},bind:function(e){var t,n,i,r,o=this.target.nodeName.toLowerCase(),a=O[o]||{};for(t in e)t==A?n=!0:t==P?i=!0:t==F?r=!0:this.applyBinding(t,e,a);i&&this.applyBinding(P,e,a),n&&this.applyBinding(A,e,a),r&&this.applyBinding(F,e,a)},applyBinding:function(e,t,n){var i,r=n[e]||O[e],o=this.toDestroy,a=t[e];if(r)if(r=new r(this.target,t,this.options),o.push(r),a instanceof g)r.bind(a),o.push(a);else for(i in a)r.bind(a,i),o.push(a[i]);else if("template"!==e)throw Error("The "+e+" binding is not supported by the "+this.target.nodeName.toLowerCase()+" element")},destroy:function(){var e,t,n=this.toDestroy;for(e=0,t=n.length;t>e;e++)n[e].destroy()}}),b=_.extend({bind:function(e){var t,n=this,i=!1,r=!1,o=O.widget[n.target.options.name.toLowerCase()]||{};for(t in e)t==A?i=!0:t==P?r=!0:n.applyBinding(t,e,o);r&&n.applyBinding(P,e,o),i&&n.applyBinding(A,e,o)},applyBinding:function(e,t,n){var i,r=n[e]||O.widget[e],o=this.toDestroy,a=t[e];if(!r)throw Error("The "+e+" binding is not supported by the "+this.target.options.name+" widget");if(r=new r(this.target,t,this.target.options),o.push(r),a instanceof g)r.bind(a),o.push(a);else for(i in a)r.bind(a,i),o.push(a[i])}}),w=/[A-Za-z0-9_\-]+:(\{([^}]*)\}|[^,}]+)/g,x=/\s/g,S.unbind=c,S.bind=s,S.data.binders=O,S.data.Binder=v,S.notify=f,S.observable=function(e){return e instanceof k||(e=new k(e)),e},S.observableHierarchy=function(e){function t(e){var n,i;for(n=0;e.length>n;n++)e[n]._initChildren(),i=e[n].children,i.fetch(),e[n].items=i.data(),t(e[n].items)}var n=S.data.HierarchicalDataSource.create(e);return n.fetch(),t(n.data()),n._data._dataSource=n,n._data}}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(e,t){t()});