vue-chrts 0.0.99 → 0.0.100

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -331,4 +331,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
331
331
  stroke-width: var(--vis-crosshair-circle-stroke-width);
332
332
  stroke-opacity: var(--vis-crosshair-circle-stroke-opacity);
333
333
  pointer-events: none;
334
- `,Nm=Object.freeze(Object.defineProperty({__proto__:null,circle:kl,globalStyles:$m,line:wl,root:Em},Symbol.toStringTag,{value:"Module"}));class Tl extends zr{constructor(e){super(),this.clippable=!0,this._defaultConfig=Am,this.config=this._defaultConfig,this.x=0,this.show=!1,this._animFrameId=null,this._accessors={x:void 0,y:void 0,yStacked:void 0,baseline:void 0},e&&this.setConfig(e),this.g.style("opacity",this.show?1:0),this.line=this.g.append("line").attr("class",wl)}set accessors(e){this._accessors=e}get accessors(){var e;const{config:n}=this,i=!!(n.x||n.y||n.yStacked),r=i?n.x:this._accessors.x,o=i?n.y:this._accessors.y,s=o?Gn(o)?o:[o]:void 0,a=i?n.yStacked:this._accessors.yStacked,l=(e=n.baseline)!==null&&e!==void 0?e:this._accessors.baseline;return{x:r,y:s,yStacked:a,baseline:l}}setContainer(e){this.container=e,this.container.on("mousemove.crosshair",this._onMouseMove.bind(this)),this.container.on("mouseout.crosshair",this._onMouseOut.bind(this))}_render(e){const{config:n}=this;if(n.snapToData&&!this.datum)return;const i=Ct(e)?e:n.duration;yt(this.g,i).style("opacity",this.show?1:0),this.line.attr("y1",0).attr("y1",this._height),yt(this.line,i,Do).attr("x1",this.x).attr("x2",this.x);const r=this.getCircleData(),o=this.g.selectAll("circle").data(r,(a,l)=>{var c;return(c=a.id)!==null&&c!==void 0?c:l}),s=o.enter().append("circle").attr("class",kl).attr("r",0).attr("cx",this.x).attr("cy",a=>a.y).style("fill",a=>a.color).style("stroke",a=>a.strokeColor).style("stroke-width",a=>a.strokeWidth);yt(s.merge(o),i,Do).attr("cx",this.x).attr("cy",a=>a.y).attr("r",4).style("opacity",a=>a.opacity).style("fill",a=>a.color).style("stroke",a=>a.strokeColor).style("stroke-width",a=>a.strokeWidth),o.exit().remove()}hide(){this._onMouseOut()}_onMouseMove(e){var n,i;const{config:r,datamodel:o,element:s}=this;!this.accessors.x&&(!((n=o.data)===null||n===void 0)&&n.length)&&console.warn("Unovis | Crosshair: X accessor function has not been configured. Please check if it's present in the configuration object");const[a]=xn(e,s),l=this.xScale.range();if(r.snapToData){!this.accessors.y&&!this.accessors.yStacked&&(!((i=o.data)===null||i===void 0)&&i.length)&&console.warn("Unovis | Crosshair: Y accessors have not been configured. Please check if they're present in the configuration object");const c=this.xScale,h=c.invert(a);if(this.datum=Bu(o.data,h,this.accessors.x),this.datumIndex=o.data.indexOf(this.datum),!this.datum)return;this.x=Rt(Math.round(c(nt(this.datum,this.accessors.x,this.datumIndex))),0,this._width),this.show=this.x>=0&&this.x<=this._width&&(!r.hideWhenFarFromPointer||Math.abs(this.x-a)<r.hideWhenFarFromPointerDistance)}else this.x=Rt(a,l[0],l[1]),this.show=a>=l[0]-2&&a<=l[1]+2;window.cancelAnimationFrame(this._animFrameId),this._animFrameId=window.requestAnimationFrame(()=>{this._render()}),this.show?this._showTooltip(e):this._hideTooltip()}_onMouseOut(){this.show=!1,window.cancelAnimationFrame(this._animFrameId),this._animFrameId=window.requestAnimationFrame(()=>{this._render()}),this._hideTooltip()}_showTooltip(e){var n;const{config:i}=this,r=(n=i.tooltip)!==null&&n!==void 0?n:this.tooltip;if(!r)return;const o=r.getContainer()||this.container.node(),[s,a]=r.isContainerBody()?[e.clientX,e.clientY]:xn(e,o),l=i.template(this.datum,this.xScale.invert(this.x));if(r.config.followCursor=!0,!r.config.horizontalPlacement||r.config.horizontalPlacement===C.Auto){const c=r.isContainerBody()?s-this.container.node().getBoundingClientRect().left:s;r.overrideHorizontalPlacement(c>this._containerWidth/2?C.Left:C.Right)}l&&r.show(l,{x:s,y:a})}_hideTooltip(){var e;const{config:n}=this,i=(e=n.tooltip)!==null&&e!==void 0?e:this.tooltip;i==null||i.hide()}getYDataExtent(){return[void 0,void 0]}getCircleData(){var e,n;const{config:i,datamodel:{data:r}}=this;if(lr(i.getCircles))return i.getCircles(this.xScale.invert(this.x),r,this.yScale);if(i.snapToData&&this.datum){const o=(e=this.accessors.y)!==null&&e!==void 0?e:[],s=(n=this.accessors.yStacked)!==null&&n!==void 0?n:[],a=nt(this.datum,this.accessors.baseline,this.datumIndex)||0,l=Pu(this.datum,this.datumIndex,...s).map((h,u,f)=>({y:this.yScale(h+a),opacity:Ct(nt(this.datum,s[u]))?1:0,color:Pt(this.datum,i.color,u),strokeColor:i.strokeColor?Pt(this.datum,i.strokeColor,u):void 0,strokeWidth:i.strokeWidth?nt(this.datum,i.strokeWidth,u):void 0})),c=o.map((h,u)=>{const f=nt(this.datum,h);return{y:this.yScale(f),opacity:Ct(f)?1:0,color:Pt(this.datum,i.color,l.length+u),strokeColor:i.strokeColor?Pt(this.datum,i.strokeColor,u):void 0,strokeWidth:i.strokeWidth?nt(this.datum,i.strokeWidth,u):void 0}});return l.concat(c)}return[]}}Tl.selectors=Nm;const Sl=Symbol("componentAccessorKey"),Cl=Symbol("tooltipAccessorKey"),Ml=Symbol("crosshairAccessorKey"),Al=Symbol("axisAccessorKey"),Om=Symbol("annotationsAccessorKey");function je(t,e){return Re(t,e)}function _e(t){const e=m.getCurrentInstance(),n=e.attrs;return m.computed(()=>{const i={},r=(e==null?void 0:e.vnode.props)??{};return Object.keys(r).forEach(o=>{i[m.camelize(o)]=t[m.camelize(o)]}),{...i,...n}})}const Dm=m.defineComponent({__name:"index",props:{components:{},xScale:{type:[Object,Function]},xDomain:{},xDomainMinConstraint:{},xDomainMaxConstraint:{},xRange:{},yScale:{type:[Object,Function]},yDomain:{},yDomainMinConstraint:{},yDomainMaxConstraint:{},yRange:{},yDirection:{},xAxis:{},yAxis:{},autoMargin:{type:Boolean},tooltip:{},crosshair:{},preventEmptyDomain:{type:[Boolean,null]},scaleByDomain:{type:Boolean},annotations:{},duration:{},margin:{},padding:{},sizing:{},width:{},height:{},svgDefs:{},ariaLabel:{},data:{}},setup(t,{expose:e}){const n=t,{data:i}=m.toRefs(n),r=_e(n),o=m.ref(),s=m.reactive({components:[],annotations:void 0,crosshair:void 0,tooltip:void 0,xAxis:void 0,yAxis:void 0}),a=m.ref();return m.watch(i,()=>{o.value&&o.value.setData(i.value,!0)}),m.watchEffect(()=>{var l;s.components.map(c=>c.config),(l=o.value)==null||l.updateContainer({...m.toRaw(r.value),...m.toRaw(s)})}),m.onMounted(()=>{a.value&&(o.value=new Ug(a.value,{...m.toRaw(s)},i.value))}),m.onUnmounted(()=>{var l;return(l=o.value)==null?void 0:l.destroy()}),m.provide(Sl,{data:i,update:l=>s.components=[...s.components,l],destroy:()=>{var l;return s.components=(l=s.components)==null?void 0:l.filter(c=>!c.isDestroyed())}}),m.provide(Al,{data:i,update:l=>s[`${l.config.type}Axis`]=l,destroy:l=>{s[`${l}Axis`]=void 0}}),m.provide(Ml,{data:i,update:l=>s.crosshair=l,destroy:()=>{s.crosshair=void 0}}),m.provide(Cl,{data:i,update:l=>s.tooltip=l,destroy:()=>{s.tooltip=void 0}}),m.provide(Om,{data:i,update:l=>s.annotations=l,destroy:()=>{s.annotations=void 0}}),e({component:o}),(l,c)=>(m.openBlock(),m.createElementBlock("div",{"data-vis-xy-container":"",ref_key:"elRef",ref:a,class:"unovis-xy-container"},[m.renderSlot(l.$slots,"default")],512))}}),Rm={"data-vis-axis":""},Ts=m.defineComponent({__name:"index",props:{position:{},type:{},fullSize:{type:Boolean},label:{},labelFontSize:{},labelMargin:{},labelColor:{},gridLine:{type:Boolean},tickLine:{type:Boolean},domainLine:{type:Boolean},minMaxTicksOnly:{type:Boolean},minMaxTicksOnlyWhenWidthIsLess:{},tickFormat:{type:Function},tickValues:{},numTicks:{},tickTextFitMode:{},tickTextWidth:{},tickTextSeparator:{},tickTextForceWordBreak:{type:Boolean},tickTextTrimType:{},tickTextFontSize:{},tickTextAlign:{},tickTextColor:{},tickTextAngle:{},tickTextHideOverlapping:{type:Boolean},tickPadding:{},x:{},y:{},id:{type:Function},color:{},xScale:{type:[Object,Function]},yScale:{type:[Object,Function]},excludeFromDomainCalculation:{type:Boolean},duration:{},events:{},attributes:{},data:{}},setup(t,{expose:e}){const n=m.inject(Al),i=t,r=m.computed(()=>n.data.value??i.data),o=_e(i),s=m.ref();return m.onMounted(()=>{m.nextTick(()=>{var a;s.value=new _l(o.value),(a=s.value)==null||a.setData(r.value),n.update(s.value)})}),m.onUnmounted(()=>{var a;(a=s.value)==null||a.destroy(),n.destroy(i.type)}),m.watch(o,(a,l)=>{var c;je(a,l)||(c=s.value)==null||c.setConfig(o.value)}),m.watch(r,()=>{var a;(a=s.value)==null||a.setData(r.value)}),e({component:s}),(a,l)=>(m.openBlock(),m.createElementBlock("div",Rm))}}),Fm={"data-vis-crosshair":""},Pm=m.defineComponent({__name:"index",props:{data:{}},setup(t,{expose:e}){const n=m.inject(Ml),i=t,r=m.computed(()=>n.data.value??i.data),o=_e(i),s=m.ref();return m.onMounted(()=>{m.nextTick(()=>{var a;s.value=new Tl(o.value),(a=s.value)==null||a.setData(r.value),n.update(s.value)})}),m.onUnmounted(()=>{var a;(a=s.value)==null||a.destroy(),n.destroy()}),m.watch(o,(a,l)=>{var c;je(a,l)||(c=s.value)==null||c.setConfig(o.value)}),m.watch(r,()=>{var a;(a=s.value)==null||a.setData(r.value)}),e({component:s}),(a,l)=>(m.openBlock(),m.createElementBlock("div",Fm))}}),zm={"data-vis-component":""},Lm=m.defineComponent({__name:"index",props:{color:{},curveType:{},lineWidth:{},lineDashArray:{},fallbackValue:{},highlightOnHover:{type:Boolean},cursor:{},interpolateMissingData:{type:Boolean},x:{},y:{},id:{type:Function},xScale:{type:[Object,Function]},yScale:{type:[Object,Function]},excludeFromDomainCalculation:{type:Boolean},duration:{},events:{},attributes:{},data:{}},setup(t,{expose:e}){const n=m.inject(Sl),i=t,r=m.computed(()=>n.data.value??i.data),o=_e(i),s=m.ref();return m.onMounted(()=>{m.nextTick(()=>{var a;s.value=new ci(o.value),(a=s.value)==null||a.setData(r.value),n.update(s.value)})}),m.onUnmounted(()=>{var a;(a=s.value)==null||a.destroy(),n.destroy()}),m.watch(o,(a,l)=>{var c;je(a,l)||(c=s.value)==null||c.setConfig(o.value)}),m.watch(r,()=>{var a;(a=s.value)==null||a.setData(r.value)}),e({component:s}),(a,l)=>(m.openBlock(),m.createElementBlock("div",zm))}}),Bm={"data-vis-tooltip":""},Im=m.defineComponent({__name:"index",props:{components:{},container:{},followCursor:{type:Boolean},allowHover:{type:Boolean},horizontalPlacement:{},horizontalShift:{},verticalPlacement:{},verticalShift:{},triggers:{},attributes:{},className:{},data:{}},setup(t,{expose:e}){const n=m.inject(Cl),i=_e(t),r=m.ref();return m.onMounted(()=>{m.nextTick(()=>{r.value=new Xa(i.value),n.update(r.value)})}),m.onUnmounted(()=>{var o;(o=r.value)==null||o.destroy(),n.destroy()}),m.watch(i,(o,s)=>{var a;je(o,s)||(a=r.value)==null||a.setConfig(i.value)}),e({component:r}),(o,s)=>(m.openBlock(),m.createElementBlock("div",Bm))}}),Um=m.defineComponent({__name:"index",props:{items:{},labelClassName:{},onLegendItemClick:{type:Function},labelFontSize:{},labelMaxWidth:{},bulletSize:{},bulletShape:{},orientation:{},renderIntoProvidedDomNode:{type:Boolean},data:{}},setup(t,{expose:e}){const n=t;m.computed(()=>n.data);const i=_e(n),r=m.ref(),o=m.ref();return m.onMounted(()=>{m.nextTick(()=>{o.value&&(r.value=new bl(o.value,{...i.value,renderIntoProvidedDomNode:!0}))})}),m.onUnmounted(()=>{var s;(s=r.value)==null||s.destroy()}),m.watch(i,(s,a)=>{var l;je(s,a)||(l=r.value)==null||l.update(i.value)}),e({component:r}),(s,a)=>(m.openBlock(),m.createElementBlock("div",{"data-vis-bullet-legend":"",ref_key:"elRef",ref:o},null,512))}});(function(){try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode(".unovis-xy-container,.unovis-single-container{display:block;position:relative;width:100%}[data-vis-leaflet-map],[data-vis-leaflet-flow-map]{display:block;position:relative}[data-vis-bullet-legend]{display:block}")),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();const Hm={class:"flex flex-col"},Vm={class:"flex items-center mr-2 mt-2"},Wm={class:"font-semibold capitalize text-white/75"},Ym={class:"flex items-center gap-2"},Xm={class:"font-normal"},$l=m.defineComponent({__name:"Tooltip",props:{data:{},categories:{}},setup(t){function e(i){var r;return((r=n.categories[i])==null?void 0:r.color)??"#f00"}const n=t;return(i,r)=>(m.openBlock(),m.createElementBlock("div",Hm,[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(Object.entries(i.data),([o,s])=>{var a;return m.openBlock(),m.createElementBlock(m.Fragment,{key:o},[m.createElementVNode("div",Vm,[m.createElementVNode("span",Wm,m.toDisplayString(o)+":",1)]),m.createElementVNode("div",Ym,[(a=n.categories[o])!=null&&a.color?(m.openBlock(),m.createElementBlock("span",{key:0,style:m.normalizeStyle({backgroundColor:e(o)}),class:"w-2 h-2"},null,4)):m.createCommentVNode("",!0),m.createElementVNode("span",Xm,m.toDisplayString(s),1)])],64)}),128))]))}}),qm={class:"flex items center justify-end"},Gm=m.defineComponent({__name:"LineChart",props:{data:{},height:{},xLabel:{},yLabel:{},categories:{},xFormatter:{type:Function},yFormatter:{type:Function},curveType:{},yNumTicks:{},xNumTicks:{},paginationPoisition:{}},setup(t){const e=t,n=r=>Object.values(e.categories)[r].color,i=m.computed(()=>r=>{const o=m.createApp($l,{data:r,categories:e.categories}),s=document.createElement("div");o.mount(s);const a=s.innerHTML;return o.unmount(),a});return(r,o)=>(m.openBlock(),m.createElementBlock("div",{class:m.normalizeClass(["space-y-4 flex flex-col",{"flex-col-reverse":e.paginationPoisition==="top"}])},[m.createVNode(m.unref(Dm),{data:r.data,height:r.height},{default:m.withCtx(()=>[m.createVNode(m.unref(Im),{"horizontal-placement":m.unref(C).Right,"vertical-placement":m.unref(C).Top},null,8,["horizontal-placement","vertical-placement"]),(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(Object.keys(e.categories),(s,a)=>(m.openBlock(),m.createBlock(m.unref(Lm),{key:a,x:(l,c)=>c,y:l=>l[s],color:n(a),"curve-type":r.curveType??m.unref(exports.CurveType).MonotoneX},null,8,["x","y","color","curve-type"]))),128)),m.createVNode(m.unref(Ts),{type:"x","tick-format":r.xFormatter,"num-ticks":r.xNumTicks??4,label:r.xLabel,"label-margin":8,"domain-line":!1,"grid-line":!1},null,8,["tick-format","num-ticks","label"]),m.createVNode(m.unref(Ts),{type:"y","num-ticks":r.yNumTicks??4,"tick-format":r.yFormatter,label:r.yLabel,"domain-line":!1},null,8,["num-ticks","tick-format","label"]),m.createVNode(m.unref(Pm),{color:"#666",template:i.value},null,8,["template"])]),_:1},8,["data","height"]),m.createElementVNode("div",qm,[m.createVNode(m.unref(Um),{items:Object.values(r.categories)},null,8,["items"])])],2))}});var El=(t=>(t.Top="top",t.Bottom="bottom",t))(El||{});const jm={class:"space-y-2"},Zm={class:"space-y-2"},Qm={class:"text-gray-500 mb-1"},Jm={class:"text-xl dark:text-white font-bold"},Km={class:"flex items-center justify-between text-sm font-medium dark:text-gray-500 mt-2"},tv={class:"dark:bg-white/5 bg-gray-100 rounded-full h-3"},ev=m.defineComponent({__name:"Progress",props:{label:{},value:{},unit:{},progress:{},total:{},color:{}},setup(t){const e=t,n=m.computed(()=>(e.progress/e.total*100).toFixed(1)),i=m.computed(()=>`${e.progress/e.total*100}%`);return(r,o)=>(m.openBlock(),m.createElementBlock("div",jm,[m.createElementVNode("div",Zm,[m.createElementVNode("p",Qm,m.toDisplayString(r.label),1),m.createElementVNode("h2",Jm,m.toDisplayString(r.value),1)]),m.createElementVNode("div",Km,[m.createElementVNode("div",null,m.toDisplayString(n.value)+"%",1),m.createElementVNode("div",null,m.toDisplayString(r.progress)+" of "+m.toDisplayString(r.total)+m.toDisplayString(r.unit),1)]),m.createElementVNode("div",tv,[m.createElementVNode("div",{class:"rounded-full h-full",style:m.normalizeStyle({width:i.value,backgroundColor:r.color})},null,4)])]))}}),nv={class:"ring ring-border divide-y divide-border rounded-xl shadow-sm"},iv={class:"flex items-center justify-between p-4"},rv={class:"flex items-center gap-2"},ov={class:"font-medium"},sv={class:"text-sm dark:text-gray-400"},av={class:"p-4"},lv=m.defineComponent({__name:"Status",setup(t){const e=m.ref("example.com"),n=m.ref("99.9% uptime"),i=m.ref([{hour:0,status:"online"},{hour:1,status:"online"},{hour:2,status:"online"},{hour:3,status:"online"},{hour:4,status:"online"},{hour:5,status:"online"},{hour:6,status:"online"},{hour:7,status:"online"},{hour:8,status:"online"},{hour:9,status:"online"},{hour:10,status:"online"},{hour:11,status:"offline"},{hour:12,status:"online"},{hour:13,status:"online"},{hour:14,status:"online"},{hour:15,status:"online"},{hour:16,status:"online"},{hour:17,status:"online"},{hour:18,status:"online"},{hour:19,status:"online"},{hour:20,status:"online"},{hour:21,status:"online"},{hour:22,status:"online"},{hour:23,status:"online"},{hour:0,status:"online"},{hour:1,status:"online"},{hour:2,status:"online"},{hour:3,status:"online"},{hour:4,status:"online"},{hour:5,status:"online"},{hour:6,status:"online"},{hour:7,status:"online"},{hour:8,status:"online"},{hour:9,status:"online"},{hour:10,status:"online"},{hour:11,status:"online"},{hour:12,status:"online"},{hour:13,status:"online"},{hour:14,status:"online"},{hour:15,status:"online"},{hour:16,status:"online"},{hour:17,status:"online"},{hour:18,status:"online"},{hour:19,status:"online"},{hour:20,status:"online"},{hour:21,status:"online"},{hour:22,status:"online"},{hour:23,status:"online"},{hour:0,status:"online"},{hour:1,status:"online"}]);return(r,o)=>(m.openBlock(),m.createElementBlock("div",nv,[m.createElementVNode("div",iv,[m.createElementVNode("div",rv,[o[0]||(o[0]=m.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-6 text-primary"},[m.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9 12.75 11.25 15 15 9.75M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"})],-1)),m.createElementVNode("span",ov,m.toDisplayString(e.value),1)]),m.createElementVNode("span",sv,m.toDisplayString(n.value),1)]),m.createElementVNode("div",av,[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(i.value,(s,a)=>(m.openBlock(),m.createElementBlock("div",{key:a,class:m.normalizeClass(["w-2.5 h-8 first:rounded-tl first:rounded-bl last:rounded-tr last:rounded-br ml-[3px] inline-block",s.status==="online"?"bg-primary":"bg-white"])},null,2))),128))])]))}});exports.LineChart=Gm;exports.PaginationPosition=El;exports.Progress=ev;exports.Status=lv;exports.Tooltip=$l;
334
+ `,Nm=Object.freeze(Object.defineProperty({__proto__:null,circle:kl,globalStyles:$m,line:wl,root:Em},Symbol.toStringTag,{value:"Module"}));class Tl extends zr{constructor(e){super(),this.clippable=!0,this._defaultConfig=Am,this.config=this._defaultConfig,this.x=0,this.show=!1,this._animFrameId=null,this._accessors={x:void 0,y:void 0,yStacked:void 0,baseline:void 0},e&&this.setConfig(e),this.g.style("opacity",this.show?1:0),this.line=this.g.append("line").attr("class",wl)}set accessors(e){this._accessors=e}get accessors(){var e;const{config:n}=this,i=!!(n.x||n.y||n.yStacked),r=i?n.x:this._accessors.x,o=i?n.y:this._accessors.y,s=o?Gn(o)?o:[o]:void 0,a=i?n.yStacked:this._accessors.yStacked,l=(e=n.baseline)!==null&&e!==void 0?e:this._accessors.baseline;return{x:r,y:s,yStacked:a,baseline:l}}setContainer(e){this.container=e,this.container.on("mousemove.crosshair",this._onMouseMove.bind(this)),this.container.on("mouseout.crosshair",this._onMouseOut.bind(this))}_render(e){const{config:n}=this;if(n.snapToData&&!this.datum)return;const i=Ct(e)?e:n.duration;yt(this.g,i).style("opacity",this.show?1:0),this.line.attr("y1",0).attr("y1",this._height),yt(this.line,i,Do).attr("x1",this.x).attr("x2",this.x);const r=this.getCircleData(),o=this.g.selectAll("circle").data(r,(a,l)=>{var c;return(c=a.id)!==null&&c!==void 0?c:l}),s=o.enter().append("circle").attr("class",kl).attr("r",0).attr("cx",this.x).attr("cy",a=>a.y).style("fill",a=>a.color).style("stroke",a=>a.strokeColor).style("stroke-width",a=>a.strokeWidth);yt(s.merge(o),i,Do).attr("cx",this.x).attr("cy",a=>a.y).attr("r",4).style("opacity",a=>a.opacity).style("fill",a=>a.color).style("stroke",a=>a.strokeColor).style("stroke-width",a=>a.strokeWidth),o.exit().remove()}hide(){this._onMouseOut()}_onMouseMove(e){var n,i;const{config:r,datamodel:o,element:s}=this;!this.accessors.x&&(!((n=o.data)===null||n===void 0)&&n.length)&&console.warn("Unovis | Crosshair: X accessor function has not been configured. Please check if it's present in the configuration object");const[a]=xn(e,s),l=this.xScale.range();if(r.snapToData){!this.accessors.y&&!this.accessors.yStacked&&(!((i=o.data)===null||i===void 0)&&i.length)&&console.warn("Unovis | Crosshair: Y accessors have not been configured. Please check if they're present in the configuration object");const c=this.xScale,h=c.invert(a);if(this.datum=Bu(o.data,h,this.accessors.x),this.datumIndex=o.data.indexOf(this.datum),!this.datum)return;this.x=Rt(Math.round(c(nt(this.datum,this.accessors.x,this.datumIndex))),0,this._width),this.show=this.x>=0&&this.x<=this._width&&(!r.hideWhenFarFromPointer||Math.abs(this.x-a)<r.hideWhenFarFromPointerDistance)}else this.x=Rt(a,l[0],l[1]),this.show=a>=l[0]-2&&a<=l[1]+2;window.cancelAnimationFrame(this._animFrameId),this._animFrameId=window.requestAnimationFrame(()=>{this._render()}),this.show?this._showTooltip(e):this._hideTooltip()}_onMouseOut(){this.show=!1,window.cancelAnimationFrame(this._animFrameId),this._animFrameId=window.requestAnimationFrame(()=>{this._render()}),this._hideTooltip()}_showTooltip(e){var n;const{config:i}=this,r=(n=i.tooltip)!==null&&n!==void 0?n:this.tooltip;if(!r)return;const o=r.getContainer()||this.container.node(),[s,a]=r.isContainerBody()?[e.clientX,e.clientY]:xn(e,o),l=i.template(this.datum,this.xScale.invert(this.x));if(r.config.followCursor=!0,!r.config.horizontalPlacement||r.config.horizontalPlacement===C.Auto){const c=r.isContainerBody()?s-this.container.node().getBoundingClientRect().left:s;r.overrideHorizontalPlacement(c>this._containerWidth/2?C.Left:C.Right)}l&&r.show(l,{x:s,y:a})}_hideTooltip(){var e;const{config:n}=this,i=(e=n.tooltip)!==null&&e!==void 0?e:this.tooltip;i==null||i.hide()}getYDataExtent(){return[void 0,void 0]}getCircleData(){var e,n;const{config:i,datamodel:{data:r}}=this;if(lr(i.getCircles))return i.getCircles(this.xScale.invert(this.x),r,this.yScale);if(i.snapToData&&this.datum){const o=(e=this.accessors.y)!==null&&e!==void 0?e:[],s=(n=this.accessors.yStacked)!==null&&n!==void 0?n:[],a=nt(this.datum,this.accessors.baseline,this.datumIndex)||0,l=Pu(this.datum,this.datumIndex,...s).map((h,u,f)=>({y:this.yScale(h+a),opacity:Ct(nt(this.datum,s[u]))?1:0,color:Pt(this.datum,i.color,u),strokeColor:i.strokeColor?Pt(this.datum,i.strokeColor,u):void 0,strokeWidth:i.strokeWidth?nt(this.datum,i.strokeWidth,u):void 0})),c=o.map((h,u)=>{const f=nt(this.datum,h);return{y:this.yScale(f),opacity:Ct(f)?1:0,color:Pt(this.datum,i.color,l.length+u),strokeColor:i.strokeColor?Pt(this.datum,i.strokeColor,u):void 0,strokeWidth:i.strokeWidth?nt(this.datum,i.strokeWidth,u):void 0}});return l.concat(c)}return[]}}Tl.selectors=Nm;const Sl=Symbol("componentAccessorKey"),Cl=Symbol("tooltipAccessorKey"),Ml=Symbol("crosshairAccessorKey"),Al=Symbol("axisAccessorKey"),Om=Symbol("annotationsAccessorKey");function je(t,e){return Re(t,e)}function _e(t){const e=m.getCurrentInstance(),n=e.attrs;return m.computed(()=>{const i={},r=(e==null?void 0:e.vnode.props)??{};return Object.keys(r).forEach(o=>{i[m.camelize(o)]=t[m.camelize(o)]}),{...i,...n}})}const Dm=m.defineComponent({__name:"index",props:{components:{},xScale:{type:[Object,Function]},xDomain:{},xDomainMinConstraint:{},xDomainMaxConstraint:{},xRange:{},yScale:{type:[Object,Function]},yDomain:{},yDomainMinConstraint:{},yDomainMaxConstraint:{},yRange:{},yDirection:{},xAxis:{},yAxis:{},autoMargin:{type:Boolean},tooltip:{},crosshair:{},preventEmptyDomain:{type:[Boolean,null]},scaleByDomain:{type:Boolean},annotations:{},duration:{},margin:{},padding:{},sizing:{},width:{},height:{},svgDefs:{},ariaLabel:{},data:{}},setup(t,{expose:e}){const n=t,{data:i}=m.toRefs(n),r=_e(n),o=m.ref(),s=m.reactive({components:[],annotations:void 0,crosshair:void 0,tooltip:void 0,xAxis:void 0,yAxis:void 0}),a=m.ref();return m.watch(i,()=>{o.value&&o.value.setData(i.value,!0)}),m.watchEffect(()=>{var l;s.components.map(c=>c.config),(l=o.value)==null||l.updateContainer({...m.toRaw(r.value),...m.toRaw(s)})}),m.onMounted(()=>{a.value&&(o.value=new Ug(a.value,{...m.toRaw(s)},i.value))}),m.onUnmounted(()=>{var l;return(l=o.value)==null?void 0:l.destroy()}),m.provide(Sl,{data:i,update:l=>s.components=[...s.components,l],destroy:()=>{var l;return s.components=(l=s.components)==null?void 0:l.filter(c=>!c.isDestroyed())}}),m.provide(Al,{data:i,update:l=>s[`${l.config.type}Axis`]=l,destroy:l=>{s[`${l}Axis`]=void 0}}),m.provide(Ml,{data:i,update:l=>s.crosshair=l,destroy:()=>{s.crosshair=void 0}}),m.provide(Cl,{data:i,update:l=>s.tooltip=l,destroy:()=>{s.tooltip=void 0}}),m.provide(Om,{data:i,update:l=>s.annotations=l,destroy:()=>{s.annotations=void 0}}),e({component:o}),(l,c)=>(m.openBlock(),m.createElementBlock("div",{"data-vis-xy-container":"",ref_key:"elRef",ref:a,class:"unovis-xy-container"},[m.renderSlot(l.$slots,"default")],512))}}),Rm={"data-vis-axis":""},Ts=m.defineComponent({__name:"index",props:{position:{},type:{},fullSize:{type:Boolean},label:{},labelFontSize:{},labelMargin:{},labelColor:{},gridLine:{type:Boolean},tickLine:{type:Boolean},domainLine:{type:Boolean},minMaxTicksOnly:{type:Boolean},minMaxTicksOnlyWhenWidthIsLess:{},tickFormat:{type:Function},tickValues:{},numTicks:{},tickTextFitMode:{},tickTextWidth:{},tickTextSeparator:{},tickTextForceWordBreak:{type:Boolean},tickTextTrimType:{},tickTextFontSize:{},tickTextAlign:{},tickTextColor:{},tickTextAngle:{},tickTextHideOverlapping:{type:Boolean},tickPadding:{},x:{},y:{},id:{type:Function},color:{},xScale:{type:[Object,Function]},yScale:{type:[Object,Function]},excludeFromDomainCalculation:{type:Boolean},duration:{},events:{},attributes:{},data:{}},setup(t,{expose:e}){const n=m.inject(Al),i=t,r=m.computed(()=>n.data.value??i.data),o=_e(i),s=m.ref();return m.onMounted(()=>{m.nextTick(()=>{var a;s.value=new _l(o.value),(a=s.value)==null||a.setData(r.value),n.update(s.value)})}),m.onUnmounted(()=>{var a;(a=s.value)==null||a.destroy(),n.destroy(i.type)}),m.watch(o,(a,l)=>{var c;je(a,l)||(c=s.value)==null||c.setConfig(o.value)}),m.watch(r,()=>{var a;(a=s.value)==null||a.setData(r.value)}),e({component:s}),(a,l)=>(m.openBlock(),m.createElementBlock("div",Rm))}}),Fm={"data-vis-crosshair":""},Pm=m.defineComponent({__name:"index",props:{data:{}},setup(t,{expose:e}){const n=m.inject(Ml),i=t,r=m.computed(()=>n.data.value??i.data),o=_e(i),s=m.ref();return m.onMounted(()=>{m.nextTick(()=>{var a;s.value=new Tl(o.value),(a=s.value)==null||a.setData(r.value),n.update(s.value)})}),m.onUnmounted(()=>{var a;(a=s.value)==null||a.destroy(),n.destroy()}),m.watch(o,(a,l)=>{var c;je(a,l)||(c=s.value)==null||c.setConfig(o.value)}),m.watch(r,()=>{var a;(a=s.value)==null||a.setData(r.value)}),e({component:s}),(a,l)=>(m.openBlock(),m.createElementBlock("div",Fm))}}),zm={"data-vis-component":""},Lm=m.defineComponent({__name:"index",props:{color:{},curveType:{},lineWidth:{},lineDashArray:{},fallbackValue:{},highlightOnHover:{type:Boolean},cursor:{},interpolateMissingData:{type:Boolean},x:{},y:{},id:{type:Function},xScale:{type:[Object,Function]},yScale:{type:[Object,Function]},excludeFromDomainCalculation:{type:Boolean},duration:{},events:{},attributes:{},data:{}},setup(t,{expose:e}){const n=m.inject(Sl),i=t,r=m.computed(()=>n.data.value??i.data),o=_e(i),s=m.ref();return m.onMounted(()=>{m.nextTick(()=>{var a;s.value=new ci(o.value),(a=s.value)==null||a.setData(r.value),n.update(s.value)})}),m.onUnmounted(()=>{var a;(a=s.value)==null||a.destroy(),n.destroy()}),m.watch(o,(a,l)=>{var c;je(a,l)||(c=s.value)==null||c.setConfig(o.value)}),m.watch(r,()=>{var a;(a=s.value)==null||a.setData(r.value)}),e({component:s}),(a,l)=>(m.openBlock(),m.createElementBlock("div",zm))}}),Bm={"data-vis-tooltip":""},Im=m.defineComponent({__name:"index",props:{components:{},container:{},followCursor:{type:Boolean},allowHover:{type:Boolean},horizontalPlacement:{},horizontalShift:{},verticalPlacement:{},verticalShift:{},triggers:{},attributes:{},className:{},data:{}},setup(t,{expose:e}){const n=m.inject(Cl),i=_e(t),r=m.ref();return m.onMounted(()=>{m.nextTick(()=>{r.value=new Xa(i.value),n.update(r.value)})}),m.onUnmounted(()=>{var o;(o=r.value)==null||o.destroy(),n.destroy()}),m.watch(i,(o,s)=>{var a;je(o,s)||(a=r.value)==null||a.setConfig(i.value)}),e({component:r}),(o,s)=>(m.openBlock(),m.createElementBlock("div",Bm))}}),Um=m.defineComponent({__name:"index",props:{items:{},labelClassName:{},onLegendItemClick:{type:Function},labelFontSize:{},labelMaxWidth:{},bulletSize:{},bulletShape:{},orientation:{},renderIntoProvidedDomNode:{type:Boolean},data:{}},setup(t,{expose:e}){const n=t;m.computed(()=>n.data);const i=_e(n),r=m.ref(),o=m.ref();return m.onMounted(()=>{m.nextTick(()=>{o.value&&(r.value=new bl(o.value,{...i.value,renderIntoProvidedDomNode:!0}))})}),m.onUnmounted(()=>{var s;(s=r.value)==null||s.destroy()}),m.watch(i,(s,a)=>{var l;je(s,a)||(l=r.value)==null||l.update(i.value)}),e({component:r}),(s,a)=>(m.openBlock(),m.createElementBlock("div",{"data-vis-bullet-legend":"",ref_key:"elRef",ref:o},null,512))}});(function(){try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode(".unovis-xy-container,.unovis-single-container{display:block;position:relative;width:100%}[data-vis-leaflet-map],[data-vis-leaflet-flow-map]{display:block;position:relative}[data-vis-bullet-legend]{display:block}")),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();const Hm={class:"flex flex-col"},Vm={class:"flex items-center mr-2 mt-2"},Wm={class:"font-semibold capitalize text-white/75"},Ym={class:"flex items-center gap-2"},Xm={class:"font-normal"},$l=m.defineComponent({__name:"Tooltip",props:{data:{},categories:{}},setup(t){function e(i){var r;return((r=n.categories[i])==null?void 0:r.color)??"#f00"}const n=t;return(i,r)=>(m.openBlock(),m.createElementBlock("div",Hm,[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(Object.entries(i.data),([o,s])=>{var a;return m.openBlock(),m.createElementBlock(m.Fragment,{key:o},[m.createElementVNode("div",Vm,[m.createElementVNode("span",Wm,m.toDisplayString(o)+":",1)]),m.createElementVNode("div",Ym,[(a=n.categories[o])!=null&&a.color?(m.openBlock(),m.createElementBlock("span",{key:0,style:m.normalizeStyle({backgroundColor:e(o)}),class:"w-2 h-2"},null,4)):m.createCommentVNode("",!0),m.createElementVNode("span",Xm,m.toDisplayString(s),1)])],64)}),128))]))}}),qm={class:"flex items center justify-end"},Gm=m.defineComponent({__name:"LineChart",props:{data:{},height:{},xLabel:{},yLabel:{},categories:{},xFormatter:{type:Function},yFormatter:{type:Function},curveType:{},yNumTicks:{},xNumTicks:{},paginationPoisition:{}},setup(t){const e=t,n=r=>Object.values(e.categories)[r].color,i=m.computed(()=>r=>{const o=m.createApp($l,{data:r,categories:e.categories});if(!document)return;const s=document.createElement("div");o.mount(s);const a=s.innerHTML;return o.unmount(),a});return(r,o)=>(m.openBlock(),m.createElementBlock("div",{class:m.normalizeClass(["space-y-4 flex flex-col",{"flex-col-reverse":e.paginationPoisition==="top"}])},[m.createVNode(m.unref(Dm),{data:r.data,height:r.height},{default:m.withCtx(()=>[m.createVNode(m.unref(Im),{"horizontal-placement":m.unref(C).Right,"vertical-placement":m.unref(C).Top},null,8,["horizontal-placement","vertical-placement"]),(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(Object.keys(e.categories),(s,a)=>(m.openBlock(),m.createBlock(m.unref(Lm),{key:a,x:(l,c)=>c,y:l=>l[s],color:n(a),"curve-type":r.curveType??m.unref(exports.CurveType).MonotoneX},null,8,["x","y","color","curve-type"]))),128)),m.createVNode(m.unref(Ts),{type:"x","tick-format":r.xFormatter,"num-ticks":r.xNumTicks??4,label:r.xLabel,"label-margin":8,"domain-line":!1,"grid-line":!1},null,8,["tick-format","num-ticks","label"]),m.createVNode(m.unref(Ts),{type:"y","num-ticks":r.yNumTicks??4,"tick-format":r.yFormatter,label:r.yLabel,"domain-line":!1},null,8,["num-ticks","tick-format","label"]),m.createVNode(m.unref(Pm),{color:"#666",template:i.value},null,8,["template"])]),_:1},8,["data","height"]),m.createElementVNode("div",qm,[m.createVNode(m.unref(Um),{items:Object.values(r.categories)},null,8,["items"])])],2))}});var El=(t=>(t.Top="top",t.Bottom="bottom",t))(El||{});const jm={class:"space-y-2"},Zm={class:"space-y-2"},Qm={class:"text-gray-500 mb-1"},Jm={class:"text-xl dark:text-white font-bold"},Km={class:"flex items-center justify-between text-sm font-medium dark:text-gray-500 mt-2"},tv={class:"dark:bg-white/5 bg-gray-100 rounded-full h-3"},ev=m.defineComponent({__name:"Progress",props:{label:{},value:{},unit:{},progress:{},total:{},color:{}},setup(t){const e=t,n=m.computed(()=>(e.progress/e.total*100).toFixed(1)),i=m.computed(()=>`${e.progress/e.total*100}%`);return(r,o)=>(m.openBlock(),m.createElementBlock("div",jm,[m.createElementVNode("div",Zm,[m.createElementVNode("p",Qm,m.toDisplayString(r.label),1),m.createElementVNode("h2",Jm,m.toDisplayString(r.value),1)]),m.createElementVNode("div",Km,[m.createElementVNode("div",null,m.toDisplayString(n.value)+"%",1),m.createElementVNode("div",null,m.toDisplayString(r.progress)+" of "+m.toDisplayString(r.total)+m.toDisplayString(r.unit),1)]),m.createElementVNode("div",tv,[m.createElementVNode("div",{class:"rounded-full h-full",style:m.normalizeStyle({width:i.value,backgroundColor:r.color})},null,4)])]))}}),nv={class:"ring ring-border divide-y divide-border rounded-xl shadow-sm"},iv={class:"flex items-center justify-between p-4"},rv={class:"flex items-center gap-2"},ov={class:"font-medium"},sv={class:"text-sm dark:text-gray-400"},av={class:"p-4"},lv=m.defineComponent({__name:"Status",setup(t){const e=m.ref("example.com"),n=m.ref("99.9% uptime"),i=m.ref([{hour:0,status:"online"},{hour:1,status:"online"},{hour:2,status:"online"},{hour:3,status:"online"},{hour:4,status:"online"},{hour:5,status:"online"},{hour:6,status:"online"},{hour:7,status:"online"},{hour:8,status:"online"},{hour:9,status:"online"},{hour:10,status:"online"},{hour:11,status:"offline"},{hour:12,status:"online"},{hour:13,status:"online"},{hour:14,status:"online"},{hour:15,status:"online"},{hour:16,status:"online"},{hour:17,status:"online"},{hour:18,status:"online"},{hour:19,status:"online"},{hour:20,status:"online"},{hour:21,status:"online"},{hour:22,status:"online"},{hour:23,status:"online"},{hour:0,status:"online"},{hour:1,status:"online"},{hour:2,status:"online"},{hour:3,status:"online"},{hour:4,status:"online"},{hour:5,status:"online"},{hour:6,status:"online"},{hour:7,status:"online"},{hour:8,status:"online"},{hour:9,status:"online"},{hour:10,status:"online"},{hour:11,status:"online"},{hour:12,status:"online"},{hour:13,status:"online"},{hour:14,status:"online"},{hour:15,status:"online"},{hour:16,status:"online"},{hour:17,status:"online"},{hour:18,status:"online"},{hour:19,status:"online"},{hour:20,status:"online"},{hour:21,status:"online"},{hour:22,status:"online"},{hour:23,status:"online"},{hour:0,status:"online"},{hour:1,status:"online"}]);return(r,o)=>(m.openBlock(),m.createElementBlock("div",nv,[m.createElementVNode("div",iv,[m.createElementVNode("div",rv,[o[0]||(o[0]=m.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-6 text-primary"},[m.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9 12.75 11.25 15 15 9.75M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"})],-1)),m.createElementVNode("span",ov,m.toDisplayString(e.value),1)]),m.createElementVNode("span",sv,m.toDisplayString(n.value),1)]),m.createElementVNode("div",av,[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(i.value,(s,a)=>(m.openBlock(),m.createElementBlock("div",{key:a,class:m.normalizeClass(["w-2.5 h-8 first:rounded-tl first:rounded-bl last:rounded-tr last:rounded-br ml-[3px] inline-block",s.status==="online"?"bg-primary":"bg-white"])},null,2))),128))])]))}});exports.LineChart=Gm;exports.PaginationPosition=El;exports.Progress=ev;exports.Status=lv;exports.Tooltip=$l;
package/dist/index.js CHANGED
@@ -8185,7 +8185,10 @@ const mv = { class: "flex flex-col" }, vv = { class: "flex items-center mr-2 mt-
8185
8185
  const o = hc(bv, {
8186
8186
  data: r,
8187
8187
  categories: e.categories
8188
- }), s = document.createElement("div");
8188
+ });
8189
+ if (!document)
8190
+ return;
8191
+ const s = document.createElement("div");
8189
8192
  o.mount(s);
8190
8193
  const a = s.innerHTML;
8191
8194
  return o.unmount(), a;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vue-chrts",
3
- "version": "0.0.99",
3
+ "version": "0.0.100",
4
4
  "type": "module",
5
5
  "main": "./dist/index.cjs",
6
6
  "files": [