UNPKG

@progress/kendo-ui

Version:

This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.

1 lines 12.2 kB
module.exports=function(i){var a={};function s(t){if(a[t])return a[t].exports;var e=a[t]={exports:{},id:t,loaded:!1};return i[t].call(e.exports,e,e.exports,s),e.loaded=!0,e.exports}return s.m=i,s.c=a,s.p="",s(0)}({0:function(t,e,i){t.exports=i(946)},3:function(t,e){t.exports=function(){throw Error("define cannot be used indirect")}},943:function(t,e){t.exports=require("../../kendo.dataviz.chart")},946:function(t,e,i){var a;i(3),i=[i(943)],void 0===(e="function"==typeof(a=function(){window.kendo.dataviz=window.kendo.dataviz||{};var x=kendo.dataviz,b=x.elementStyles,h=x.deepExtend,y=x.toTime,c=x.constants,r=x.Chart,t=kendo.drawing,e=t.Animation.extend({setup:function(){this._initialOpacity=parseFloat(b(this.element,"opacity").opacity)},step:function(t){b(this.element,{opacity:String(x.interpolateValue(this._initialOpacity,0,t))})},abort:function(){t.Animation.fn.abort.call(this);b(this.element,{display:"none",opacity:String(this._initialOpacity)})},cancel:function(){t.Animation.fn.abort.call(this);b(this.element,{opacity:String(this._initialOpacity)})}});function a(t,e){var i=document.createElement("div");i.className=t;if(e)i.style.cssText=e;return i}var d=x.Class.extend({init:function(t,e,i){this.options=h({},this.options,i);this.container=t;this.chartService=e;var a=b(t,["paddingLeft","paddingTop"]);this.chartPadding={top:a.paddingTop,left:a.paddingLeft};this.createElements();t.appendChild(this.element)},createElements:function(){var t=this.element=a("k-navigator-hint","display: none; position: absolute; top: 1px; left: 1px;");var e=this.tooltip=a("k-tooltip k-chart-tooltip");var i=this.scroll=a("k-scroll");e.innerHTML="&nbsp;";t.appendChild(e);t.appendChild(i)},show:function(t,e,i){var a=this;var s=a.element;var r=a.options;var c=a.scroll;var n=a.tooltip;var v=x.toDate(y(t)+y(e-t)/2);var o=i.width()*.4;var l=i.center().x-o;var f=i.center().x;var d=f-l;var p=r.max-r.min;var u=d/p;var m=v-r.min;var g=this.chartService.intl.format(r.format,t,e);var _=x.getTemplate(r);this.clearHideTimeout();if(!this._visible){b(s,{visibility:"hidden",display:"block"});this._visible=true}if(_)g=_({from:t,to:e});n.innerHTML=g;b(n,{left:i.center().x-n.offsetWidth/2,top:i.y1});var h=b(n,["marginTop","borderTopWidth","height"]);b(c,{width:o,left:l+m*u,top:i.y1+h.marginTop+h.borderTopWidth+h.height/2});b(s,{visibility:"visible"})},clearHideTimeout:function(){if(this._hideTimeout)clearTimeout(this._hideTimeout);if(this._hideAnimation)this._hideAnimation.cancel()},hide:function(){var t=this;this.clearHideTimeout();this._hideTimeout=setTimeout(function(){t._visible=false;t._hideAnimation=new e(t.element);t._hideAnimation.setup();t._hideAnimation.play()},this.options.hideDelay)},destroy:function(){this.clearHideTimeout();if(this.container)this.container.removeChild(this.element);delete this.container;delete this.chartService;delete this.element;delete this.tooltip;delete this.scroll}}),v=(x.setDefaultOptions(d,{format:"{0:d} - {1:d}",hideDelay:500}),"_navigator"),f=v,i={NAVIGATOR_AXIS:f,NAVIGATOR_PANE:v},p=3,n=x.Class.extend({init:function(t){this.chart=t;var e=this.options=h({},this.options,t.options.navigator);var i=e.select;if(i){i.from=this.parseDate(i.from);i.to=this.parseDate(i.to)}if(!x.defined(e.hint.visible))e.hint.visible=e.visible;var a;this.chartObserver=new x.InstanceObserver(this,(a={},a[c.DRAG]="_drag",a[c.DRAG_END]="_dragEnd",a[c.ZOOM]="_zoom",a[c.ZOOM_END]="_zoomEnd",a));t.addObserver(this.chartObserver)},parseDate:function(t){return x.parseDate(this.chart.chartService.intl,t)},clean:function(){if(this.selection){this.selection.destroy();this.selection=null}if(this.hint){this.hint.destroy();this.hint=null}},destroy:function(){if(this.chart){this.chart.removeObserver(this.chartObserver);delete this.chart}this.clean()},redraw:function(){this._redrawSelf();this.initSelection()},initSelection:function(){var t=this;var e=t.chart;var i=t.options;var a=this.mainAxis();var s=a.roundedRange();var r=s.min;var n=s.max;var o=i.select;var l=o.from;var c=o.to;var v=o.mousewheel;var h=u(a);if(a.categoriesCount()===0)return;this.clean();h.box=a.box;this.selection=new x.Selection(e,h,{min:r,max:n,from:l||r,to:c||n,mousewheel:x.valueOrDefault(v,{zoom:"left"}),visible:i.visible},new x.InstanceObserver(this,{selectStart:"_selectStart",select:"_select",selectEnd:"_selectEnd"}));if(i.hint.visible)this.hint=new d(e.element,e.chartService,{min:r,max:n,template:x.getTemplate(i.hint),format:i.hint.format})},setRange:function(){var t=this.chart._createPlotArea(true);var e=t.namedCategoryAxes[f];var i=e.roundedRange();var a=i.min;var s=i.max;var r=this.options.select||{};var n=r.from||a;if(n<a)n=a;var o=r.to||s;if(o>s)o=s;this.options.select=h({},r,{from:n,to:o});this.filterAxes()},_redrawSelf:function(t){var e=this.chart._plotArea;if(e)e.redraw(x.last(e.panes),t)},redrawSlaves:function(){var t=this.chart;var e=t._plotArea;var i=e.panes.slice(0,-1);e.srcSeries=t.options.series;e.options.categoryAxis=t.options.categoryAxis;e.clearSeriesPointsCache();e.redraw(i)},_drag:function(t){var e=this;var i=e.chart;var a=e.selection;var c=i._eventCoordinates(t.originalEvent);var s=this.mainAxis();var r=s.roundedRange();var v=s.pane.box.containsPoint(c);var f=i._plotArea.categoryAxis;var d=t.axisRanges[f.options.name];var n=this.options.select;var o;if(!d||v||!a)return;if(n.from&&n.to)o=y(n.to)-y(n.from);else o=y(a.options.to)-y(a.options.from);var l=x.toDate(x.limitValue(y(d.min),r.min,y(r.max)-o));var h=x.toDate(x.limitValue(y(l)+o,y(r.min)+o,r.max));this.options.select={from:l,to:h};if(this.options.liveDrag){this.filterAxes();this.redrawSlaves()}a.set(l,h);this.showHint(l,h)},_dragEnd:function(){this.filterAxes();this.filter();this.redrawSlaves();if(this.hint)this.hint.hide()},readSelection:function(){var t=this;var e=t.selection.options;var i=e.from;var a=e.to;var s=t.options.select;s.from=i;s.to=a},filterAxes:function(){var t=this;var e=t.options.select;if(e===void 0)e={};var i=t.chart;var a=i.options.categoryAxis;var s=e.from;var r=e.to;for(var n=0;n<a.length;n++){var o=a[n];if(o.pane!==v){o.min=s;o.max=r}}},filter:function(){var t=this;var e=t.chart;var i=t.options.select;if(!e.requiresHandlers(["navigatorFilter"]))return;var a=this.mainAxis();var s={from:i.from,to:i.to};if(a.options.type!=="category"){var r=new x.DateCategoryAxis(h({baseUnit:"fit"},e.options.categoryAxis[0],{categories:[i.from,i.to]}),e.chartService).options;s.from=x.addDuration(r.min,-r.baseUnitStep,r.baseUnit);s.to=x.addDuration(r.max,r.baseUnitStep,r.baseUnit)}this.chart.trigger("navigatorFilter",s)},_zoom:function(t){var e=this;var i=e.chart._plotArea.categoryAxis;var a=e.selection;var s=e.options;var r=s.select;var n=s.liveDrag;var o=this.mainAxis();var l=t.delta;if(!a)return;var c=o.categoryIndex(a.options.from);var v=o.categoryIndex(a.options.to);var h=this.chart._eventCoordinates(t.originalEvent);t.originalEvent.preventDefault();if(Math.abs(l)>1)l*=p;if(v-c>1){a.zoom(l,h);this.readSelection()}else{i.options.min=r.from;r.from=i.scaleRange(-t.delta*this.chart._mousewheelZoomRate(),h).min}if(n){this.filterAxes();this.redrawSlaves()}a.set(r.from,r.to);this.showHint(this.options.select.from,this.options.select.to)},_zoomEnd:function(t){this._dragEnd(t)},showHint:function(t,e){var i=this.chart._plotArea;if(this.hint)this.hint.show(t,e,i.backgroundBox())},_selectStart:function(t){return this.chart._selectStart(t)},_select:function(t){this.showHint(t.from,t.to);return this.chart._select(t)},_selectEnd:function(t){if(this.hint)this.hint.hide();this.readSelection();this.filterAxes();this.filter();this.redrawSlaves();return this.chart._selectEnd(t)},mainAxis:function(){var t=this.chart._plotArea;if(t)return t.namedCategoryAxes[f]},select:function(t,e){var i=this.options.select;if(t&&e){i.from=this.parseDate(t);i.to=this.parseDate(e);this.filterAxes();this.filter();this.redrawSlaves();this.selection.set(t,e)}return{from:i.from,to:i.to}}});function s(){}function u(t){s.prototype=t;return new s}n.setup=function(t,e){if(t===void 0)t={};if(e===void 0)e={};if(t.__navi)return;t.__navi=true;var i=h({},e.navigator,t.navigator);var a=t.panes=[].concat(t.panes);var s=h({},i.pane,{name:v});if(!i.visible){s.visible=false;s.height=.1}a.push(s);n.attachAxes(t,i);n.attachSeries(t,i,e)},n.attachAxes=function(t,e){var i=e.series||[];var a=t.categoryAxis=[].concat(t.categoryAxis);var s=t.valueAxis=[].concat(t.valueAxis);var r=x.filterSeriesByType(i,c.EQUALLY_SPACED_SERIES);var n=r.length===0;var o=h({type:"date",pane:v,roundToBaseUnit:!n,justified:n,_collapse:false,majorTicks:{visible:true},tooltip:{visible:false},labels:{step:1},autoBind:e.autoBindElements,autoBaseUnitSteps:{minutes:[1],hours:[1,2],days:[1,2],weeks:[],months:[1],years:[1]}});var l=e.categoryAxis;a.push(h({},o,{maxDateGroups:200},l,{name:f,title:null,baseUnit:"fit",baseUnitStep:"auto",labels:{visible:false},majorTicks:{visible:false}}),h({},o,l,{name:f+"_labels",maxDateGroups:20,baseUnitStep:"auto",labels:{position:""},plotBands:[],autoBaseUnitSteps:{minutes:[]},_overlap:true}),h({},o,l,{name:f+"_ticks",maxDateGroups:200,majorTicks:{width:.5},plotBands:[],title:null,labels:{visible:false,mirror:true},_overlap:true}));s.push(h({name:f,pane:v,majorGridLines:{visible:false},visible:false},e.valueAxis))},n.attachSeries=function(t,e,i){var a=t.series=t.series||[];var s=[].concat(e.series||[]);var r=i.seriesColors;var n=e.seriesDefaults;for(var o=0;o<s.length;o++)a.push(h({color:r[o%r.length],categoryField:e.dateField,visibleInLegend:false,tooltip:{visible:false}},n,s[o],{axis:f,categoryAxis:f,autoBind:e.autoBindElements}))};var o=28,l=r.extend({applyDefaults:function(t,e){var i=x.elementSize(this.element).width||c.DEFAULT_WIDTH;var a=e;var s={seriesDefaults:{categoryField:t.dateField},axisDefaults:{categoryAxis:{name:"default",majorGridLines:{visible:false},labels:{step:2},majorTicks:{visible:false},maxDateGroups:Math.floor(i/o)}}};if(a)a=h({},a,s);n.setup(t,a);r.fn.applyDefaults.call(this,t,a)},_setElementClass:function(t){x.addClass(t,"k-chart k-stockchart")},setOptions:function(t){this.destroyNavigator();r.fn.setOptions.call(this,t)},noTransitionsRedraw:function(){var t=this.options.transitions;this.options.transitions=false;this._fullRedraw();this.options.transitions=t},_resize:function(){this.noTransitionsRedraw()},_redraw:function(){var t=this.navigator;if(!this._dirty()&&t&&t.options.partialRedraw)t.redrawSlaves();else this._fullRedraw()},_dirty:function(){var t=this.options;var e=[].concat(t.series,t.navigator.series);var i=x.grep(e,function(t){return t&&t.visible}).length;var a=this._seriesCount!==i;this._seriesCount=i;return a},_fullRedraw:function(){var t=this.navigator;if(!t){t=this.navigator=new n(this);this.trigger("navigatorCreated",{navigator:t})}t.clean();t.setRange();r.fn._redraw.call(this);t.initSelection()},_trackSharedTooltip:function(t){var e=this._plotArea;var i=e.paneByPoint(t);if(i&&i.options.name===v)this._unsetActivePoint();else r.fn._trackSharedTooltip.call(this,t)},bindCategories:function(){r.fn.bindCategories.call(this);this.copyNavigatorCategories()},copyNavigatorCategories:function(){var t=[].concat(this.options.categoryAxis);var e;for(var i=0;i<t.length;i++){var a=t[i];if(a.name===f)e=a.categories;else if(e&&a.pane===v)a.categories=e}},destroyNavigator:function(){if(this.navigator){this.navigator.destroy();this.navigator=null}},destroy:function(){this.destroyNavigator();r.fn.destroy.call(this)},_stopChartHandlers:function(t){var e=this._eventCoordinates(t);var i=this._plotArea.paneByPoint(e);return r.fn._stopChartHandlers.call(this,t)||i&&i.options.name===v},_toggleDragZoomEvents:function(){if(!this._dragZoomEnabled){this.element.style.touchAction="none";this._dragZoomEnabled=true}}});x.setDefaultOptions(l,{dateField:"date",axisDefaults:{categoryAxis:{type:"date",baseUnit:"fit",justified:true},valueAxis:{narrowRange:true,labels:{format:"C"}}},navigator:{select:{},seriesDefaults:{markers:{visible:false},tooltip:{visible:true},line:{width:2}},hint:{},visible:true},tooltip:{visible:true},legend:{visible:false}}),kendo.deepExtend(kendo.dataviz,{constants:i,Navigator:n,NavigatorHint:d,StockChart:l})})?a.apply(e,i):a)||(t.exports=e)}});