import{r as t,h as e,g as i,H as s}from"./p-6b2342e0.js";import{B as r,a as o,L as n,P as a,b as c,c as h}from"./p-e4917e76.js";import{Y as l,X as d,a as p,b as u}from"./p-8e34b266.js";import{I as m}from"./p-6e1ab235.js";import{V as w,I as v}from"./p-4415ad28.js";import"./p-d27ae9ff.js";import"./p-262ec334.js";import"./p-d884c644.js";import"./p-0c667d6a.js";class b extends r{addInteractionSupport(){}draw(){const{dataSource:t=[],xScale:e,yScale:i,colors:s,direction:r}=this.options.renderOptions,o=t.map((t=>t.x)),n=t.map((t=>t.y));o.forEach(((t,o)=>{var a,c;const h=n[o]||0;let l=0,d=0,p={x:0,y:0};"horizontal"!==r?(l=(null===(a=e.bandwidth)||void 0===a?void 0:a.call(e))||5,d=Math.abs(i(0)-i(h)),p={x:e(t),y:i(Math.max(0,h))}):(d=(null===(c=i.bandwidth)||void 0===c?void 0:c.call(i))||5,l=Math.abs(e(h)-e(0)),p={x:e(Math.min(h,0)),y:i(t)}),this.renderer.drawRect(p,l,d,this.getColorFromToken(this.getColorByIndex(0,s)))}))}}class f extends l{process(t,e){const{dataSource:i,yAxis:s}=t,{innerWidth:r,innerHeight:o}=e,{scale:n,ticks:a}=this.getScale(i,[0,r],4);return{start:{x:0,y:o},end:{x:r,y:o},tickSize:a,scale:n,labelFormatter:null==s?void 0:s.labelFormatter,width:r,height:o,direction:"horizontal"}}}class j extends d{process(t,e){const{dataSource:i,xAxis:s,container:r}=t,{innerWidth:o,innerHeight:n}=e;return{start:{x:0,y:0},end:{x:0,y:n},tickSize:4,scale:this.getScale(i,n,(null==s?void 0:s.type)||"value","VEGA-LINE-CHART"===r.tagName?1:.1,null==s?void 0:s.sorter),labelFormatter:null==s?void 0:s.labelFormatter,width:o,height:n,direction:"horizontal"}}}class x extends o{constructor(){super(...arguments),this.layoutInputProcessor=new n,this.xAxisInputProcessorChain=new a([this.layoutInputProcessor,new d]),this.horizontalXAxisInputProcessorChain=new a([this.layoutInputProcessor,new f]),this.yAxisInputProcessorChain=new a([this.layoutInputProcessor,new l]),this.horizontalYAxisInputProcessorChain=new a([this.layoutInputProcessor,new j]),this.legendInputProcessorChain=new a([this.layoutInputProcessor,new c])}createDrawerChain(t,e){const{colors:i,xAxis:s,dataSource:r,direction:o}=this.options,n=Object.assign(Object.assign({},this.options),{xAxis:Object.assign(Object.assign({},s),{type:"category"})}),a="horizontal"===o?this.horizontalXAxisInputProcessorChain.process(n):this.xAxisInputProcessorChain.process(n),c="horizontal"===o?this.horizontalYAxisInputProcessorChain.process(n):this.yAxisInputProcessorChain.process(n);return[new p(t,e,{renderOptions:a}),new u(t,e,{renderOptions:c}),new h(t,e,{renderOptions:this.legendInputProcessorChain.process(n)}),new b(t,e,{renderOptions:{dataSource:r,xScale:a.scale,yScale:c.scale,colors:i,direction:o}})]}}var O=function(t,e,i,s){var r,o=arguments.length,n=o<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,e,i,s);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(n=(o<3?r(n):o>3?r(e,i,n):r(e,i))||n);return o>3&&n&&Object.defineProperty(e,i,n),n};const S=class{constructor(e){t(this,e),this.globalSlimmers={},this.vegaComponentUsageRuntimeMetricsSlimmer=new w,this.options={}}watchOptions(t){this.initChart(t)}componentWillLoad(){this.initChart(this.options)}render(){return e(s,null)}initChart(t){const{mode:e="svg",dataSource:i=[]}=t,s=function(t,e){var i={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(i[s]=t[s]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(s=Object.getOwnPropertySymbols(t);r<s.length;r++)e.indexOf(s[r])<0&&Object.prototype.propertyIsEnumerable.call(t,s[r])&&(i[s[r]]=t[s[r]])}return i}(t,["mode","dataSource"]),r=Object.assign(Object.assign({},s),{mode:e,container:this.host,dataSource:i});this.chart?this.chart.updateOptions(r):(this.chart=new x(r),this.chart.render())}get host(){return i(this)}static get watchers(){return{options:["watchOptions"]}}};O([v()],S.prototype,"globalSlimmers",void 0),O([m()],S.prototype,"vegaComponentUsageRuntimeMetricsSlimmer",void 0),S.style=".vega-chart-legend-item{cursor:pointer}.vega-chart-line-path:hover{stroke-width:5}:host{display:block}";export{S as vega_bar_chart}