(()=>{"use strict";var t,n={934:()=>{const t=window.wp.blocks,n=window.wp.i18n,e=window.wp.blockEditor,r=window.wp.components,i=window.wp.element,o=window.ReactJSXRuntime,a=["#FF6384","#36A2EB","#FFCE56","#4BC0C0","#9966FF","#FF9F40","#FF6384","#C9CBCF","#4BC0C0","#FF9F40"],l=({value:t,onChange:l,dataSource:s,onDataSourceChange:u})=>{const[c,h]=(0,i.useState)(""),[f,p]=(0,i.useState)(""),[d,g]=(0,i.useState)("");(0,i.useEffect)((()=>{if(t&&Object.keys(t).length>0)if("manual_json"===s)p(JSON.stringify(t,null,2));else if("csv_url"===s){const n=t[Object.keys(t)[0]]?.[0]?.sourceUrl;n&&h(n)}}),[]);const m=[{label:(0,n.__)("Manual JSON","lcp"),value:"manual_json"},{label:(0,n.__)("CSV Upload","lcp"),value:"csv_upload"},{label:(0,n.__)("CSV URL","lcp"),value:"csv_url"}],v=(t,n="")=>{try{const e=t.split("\n");if(e.length<2)throw new Error("CSV must have at least a header row and one data row");const r=e[0].split(",").map((t=>t.trim()));if(!r.includes("label")||!r.includes("value"))throw new Error('CSV must have "label" and "value" columns');const i={"Dataset 1":e.slice(1).filter((t=>t.trim())).map(((t,e)=>{const i=t.split(",").map((t=>t.trim())),o={};return r.forEach(((t,n)=>{"color"!==t||i[n]?o[t]=i[n]:o[t]=a[e%a.length]})),n&&(o.sourceUrl=n),o}))};return g(""),i}catch(t){return g("Error parsing CSV: "+t.message),null}};return(0,o.jsxs)("div",{className:"lcp-data-selector",children:[(0,o.jsx)(r.SelectControl,{label:(0,n.__)("Data Source","lcp"),value:s,options:m,onChange:u}),"manual_json"===s&&(0,o.jsx)(r.TextareaControl,{label:(0,n.__)("JSON Data","lcp"),help:(0,n.__)("Enter datasets with arrays containing objects with label and value properties. Color is optional.","lcp"),value:f,onChange:t=>{p(t);const n=(t=>{try{const n=JSON.parse(t);if("object"!=typeof n||Array.isArray(n))throw new Error("Data must be an object with dataset names as keys");return Object.entries(n).forEach((([t,n])=>{if(!Array.isArray(n))throw new Error(`Dataset "${t}" must be an array`);n.forEach(((n,e)=>{if(!n.label||!n.value)throw new Error(`Item at index ${e} in dataset "${t}" is missing required fields (label or value)`);n.color||(n.color=a[e%a.length])}))})),g(""),n}catch(t){return g(t.message),null}})(t);n&&l(n)},placeholder:'{\n "Dataset 1": [\n {\n "label": "Label 1",\n "value": 100,\n "color": "red"\n },\n {\n "label": "Label 2",\n "value": 200\n }\n ],\n "Dataset 2": [\n {\n "label": "Label 3",\n "value": 300,\n "color": "green"\n }\n ]\n}'}),"csv_upload"===s&&(0,o.jsx)(e.MediaUploadCheck,{children:(0,o.jsx)(e.MediaUpload,{onSelect:t=>{const n=t.url;fetch(t.url).then((t=>t.text())).then((t=>{const e=v(t,n);e&&l(e)})).catch((t=>{g("Error reading CSV file: "+t.message)}))},allowedTypes:["text/csv"],render:({open:e})=>(0,o.jsxs)("div",{children:[(0,o.jsx)(r.Button,{onClick:e,isPrimary:!0,children:(0,n.__)("Upload CSV File","lcp")}),t&&Object.keys(t).length>0&&t[Object.keys(t)[0]]?.[0]?.sourceUrl&&(0,o.jsxs)("div",{className:"current-file",style:{marginTop:"10px"},children:[(0,n.__)("Current file:","lcp")," ",t[Object.keys(t)[0]][0].sourceUrl.split("/").pop()]})]})})}),"csv_url"===s&&(0,o.jsx)(r.TextControl,{label:(0,n.__)("CSV URL","lcp"),value:c,onChange:t=>{h(t),t&&fetch(t).then((t=>t.text())).then((n=>{const e=v(n,t);e&&l(e)})).catch((t=>{g("Error fetching CSV file: "+t.message)}))},help:(0,n.__)("Enter URL of a CSV file with label and value columns. Color column is optional.","lcp")}),d&&(0,o.jsx)("div",{className:"lcp-data-selector-error",style:{color:"red",marginTop:"10px"},children:d}),t&&Object.keys(t).length>0&&(0,o.jsxs)("div",{className:"data-preview",style:{marginTop:"15px"},children:[(0,o.jsx)("h4",{children:(0,n.__)("Current Data Preview:","lcp")}),(0,o.jsx)("div",{style:{fontSize:"12px",color:"#666"},children:Object.entries(t).map((([t,e])=>(0,o.jsxs)("div",{children:[t,": ",e.length," ",(0,n.__)("data points","lcp")]},t)))})]})]})};function s(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e=n)&&(e=n);else{let r=-1;for(let i of t)null!=(i=n(i,++r,t))&&(e=i)&&(e=i)}return e}function u(t){return t}var c=1e-6;function h(t){return"translate("+t+",0)"}function f(t){return"translate(0,"+t+")"}function p(t){return n=>+t(n)}function d(t,n){return n=Math.max(0,t.bandwidth()-2*n)/2,t.round()&&(n=Math.round(n)),e=>+t(e)+n}function g(){return!this.__axis}function m(t,n){var e=[],r=null,i=null,o=6,a=6,l=3,s="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,m=1===t||4===t?-1:1,v=4===t||2===t?"x":"y",y=1===t||3===t?h:f;function w(h){var f=null==r?n.ticks?n.ticks.apply(n,e):n.domain():r,w=null==i?n.tickFormat?n.tickFormat.apply(n,e):u:i,_=Math.max(o,0)+l,b=n.range(),x=+b[0]+s,C=+b[b.length-1]+s,k=(n.bandwidth?d:p)(n.copy(),s),j=h.selection?h.selection():h,M=j.selectAll(".domain").data([null]),N=j.selectAll(".tick").data(f,n).order(),A=N.exit(),S=N.enter().append("g").attr("class","tick"),E=N.select("line"),$=N.select("text");M=M.merge(M.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),N=N.merge(S),E=E.merge(S.append("line").attr("stroke","currentColor").attr(v+"2",m*o)),$=$.merge(S.append("text").attr("fill","currentColor").attr(v,m*_).attr("dy",1===t?"0em":3===t?"0.71em":"0.32em")),h!==j&&(M=M.transition(h),N=N.transition(h),E=E.transition(h),$=$.transition(h),A=A.transition(h).attr("opacity",c).attr("transform",(function(t){return isFinite(t=k(t))?y(t+s):this.getAttribute("transform")})),S.attr("opacity",c).attr("transform",(function(t){var n=this.parentNode.__axis;return y((n&&isFinite(n=n(t))?n:k(t))+s)}))),A.remove(),M.attr("d",4===t||2===t?a?"M"+m*a+","+x+"H"+s+"V"+C+"H"+m*a:"M"+s+","+x+"V"+C:a?"M"+x+","+m*a+"V"+s+"H"+C+"V"+m*a:"M"+x+","+s+"H"+C),N.attr("opacity",1).attr("transform",(function(t){return y(k(t)+s)})),E.attr(v+"2",m*o),$.attr(v,m*_).text(w),j.filter(g).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",2===t?"start":4===t?"end":"middle"),j.each((function(){this.__axis=k}))}return w.scale=function(t){return arguments.length?(n=t,w):n},w.ticks=function(){return e=Array.from(arguments),w},w.tickArguments=function(t){return arguments.length?(e=null==t?[]:Array.from(t),w):e.slice()},w.tickValues=function(t){return arguments.length?(r=null==t?null:Array.from(t),w):r&&r.slice()},w.tickFormat=function(t){return arguments.length?(i=t,w):i},w.tickSize=function(t){return arguments.length?(o=a=+t,w):o},w.tickSizeInner=function(t){return arguments.length?(o=+t,w):o},w.tickSizeOuter=function(t){return arguments.length?(a=+t,w):a},w.tickPadding=function(t){return arguments.length?(l=+t,w):l},w.offset=function(t){return arguments.length?(s=+t,w):s},w}function v(t){return m(3,t)}function y(t){return m(4,t)}function w(){}function _(t){return null==t?w:function(){return this.querySelector(t)}}function b(){return[]}function x(t){return null==t?b:function(){return this.querySelectorAll(t)}}function C(t){return function(){return this.matches(t)}}function k(t){return function(n){return n.matches(t)}}var j=Array.prototype.find;function M(){return this.firstElementChild}var N=Array.prototype.filter;function A(){return Array.from(this.children)}function S(t){return new Array(t.length)}function E(t,n){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=n}function $(t,n,e,r,i,o){for(var a,l=0,s=n.length,u=o.length;ln?1:t>=n?0:NaN}E.prototype={constructor:E,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,n){return this._parent.insertBefore(t,n)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var R="http://www.w3.org/1999/xhtml";const L={svg:"http://www.w3.org/2000/svg",xhtml:R,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function F(t){var n=t+="",e=n.indexOf(":");return e>=0&&"xmlns"!==(n=t.slice(0,e))&&(t=t.slice(e+1)),L.hasOwnProperty(n)?{space:L[n],local:t}:t}function D(t){return function(){this.removeAttribute(t)}}function V(t){return function(){this.removeAttributeNS(t.space,t.local)}}function X(t,n){return function(){this.setAttribute(t,n)}}function I(t,n){return function(){this.setAttributeNS(t.space,t.local,n)}}function U(t,n){return function(){var e=n.apply(this,arguments);null==e?this.removeAttribute(t):this.setAttribute(t,e)}}function q(t,n){return function(){var e=n.apply(this,arguments);null==e?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,e)}}function z(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function H(t){return function(){this.style.removeProperty(t)}}function Y(t,n,e){return function(){this.style.setProperty(t,n,e)}}function G(t,n,e){return function(){var r=n.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,e)}}function W(t,n){return t.style.getPropertyValue(n)||z(t).getComputedStyle(t,null).getPropertyValue(n)}function J(t){return function(){delete this[t]}}function K(t,n){return function(){this[t]=n}}function Z(t,n){return function(){var e=n.apply(this,arguments);null==e?delete this[t]:this[t]=e}}function Q(t){return t.trim().split(/^|\s+/)}function tt(t){return t.classList||new nt(t)}function nt(t){this._node=t,this._names=Q(t.getAttribute("class")||"")}function et(t,n){for(var e=tt(t),r=-1,i=n.length;++r=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var Nt=[null];function At(t,n){this._groups=t,this._parents=n}function St(){return new At([[document.documentElement]],Nt)}At.prototype=St.prototype={constructor:At,select:function(t){"function"!=typeof t&&(t=_(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i=b&&(b=_+1);!(w=v[b])&&++b=0;)(r=i[o])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(t){function n(n,e){return n&&e?t(n.__data__,e.__data__):!n-!e}t||(t=B);for(var e=this._groups,r=e.length,i=new Array(r),o=0;o1?this.each((null==n?H:"function"==typeof n?G:Y)(t,n,null==e?"":e)):W(this.node(),t)},property:function(t,n){return arguments.length>1?this.each((null==n?J:"function"==typeof n?Z:K)(t,n)):this.node()[t]},classed:function(t,n){var e=Q(t+"");if(arguments.length<2){for(var r=tt(this.node()),i=-1,o=e.length;++i=0&&(n=t.slice(e+1),t=t.slice(0,e)),{type:t,name:n}}))}(t+""),a=o.length;if(!(arguments.length<2)){for(l=n?Ct:xt,r=0;r{}};function Ot(){for(var t,n=0,e=arguments.length,r={};n=0&&(n=t.slice(e+1),t=t.slice(0,e)),t&&!r.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:n}}))),a=-1,l=o.length;if(!(arguments.length<2)){if(null!=n&&"function"!=typeof n)throw new Error("invalid callback: "+n);for(;++a0)for(var e,r,i=new Array(e),o=0;o=0&&n._call.call(void 0,t),n=n._next;--Dt}()}finally{Dt=0,function(){for(var t,n,e=Lt,r=1/0;e;)e._call?(r>e._time&&(r=e._time),t=e,e=e._next):(n=e._next,e._next=null,e=t?t._next=n:Lt=n);Ft=t,Qt(r)}(),Ut=0}}function Zt(){var t=zt.now(),n=t-It;n>1e3&&(qt-=n,It=t)}function Qt(t){Dt||(Vt&&(Vt=clearTimeout(Vt)),t-Ut>24?(t<1/0&&(Vt=setTimeout(Kt,t-zt.now()-qt)),Xt&&(Xt=clearInterval(Xt))):(Xt||(It=zt.now(),Xt=setInterval(Zt,1e3)),Dt=1,Ht(Kt)))}function tn(t,n,e){var r=new Wt;return n=null==n?0:+n,r.restart((e=>{r.stop(),t(e+n)}),n,e),r}Wt.prototype=Jt.prototype={constructor:Wt,restart:function(t,n,e){if("function"!=typeof t)throw new TypeError("callback is not a function");e=(null==e?Yt():+e)+(null==n?0:+n),this._next||Ft===this||(Ft?Ft._next=this:Lt=this,Ft=this),this._call=t,this._time=e,Qt()},stop:function(){this._call&&(this._call=null,this._time=1/0,Qt())}};var nn=Rt("start","end","cancel","interrupt"),en=[];function rn(t,n,e,r,i,o){var a=t.__transition;if(a){if(e in a)return}else t.__transition={};!function(t,n,e){var r,i=t.__transition;function o(s){var u,c,h,f;if(1!==e.state)return l();for(u in i)if((f=i[u]).name===e.name){if(3===f.state)return tn(o);4===f.state?(f.state=6,f.timer.stop(),f.on.call("interrupt",t,t.__data__,f.index,f.group),delete i[u]):+u0)throw new Error("too late; already scheduled");return e}function an(t,n){var e=ln(t,n);if(e.state>3)throw new Error("too late; already running");return e}function ln(t,n){var e=t.__transition;if(!e||!(e=e[n]))throw new Error("transition not found");return e}function sn(t,n){return t=+t,n=+n,function(e){return t*(1-e)+n*e}}var un,cn=180/Math.PI,hn={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function fn(t,n,e,r,i,o){var a,l,s;return(a=Math.sqrt(t*t+n*n))&&(t/=a,n/=a),(s=t*e+n*r)&&(e-=t*s,r-=n*s),(l=Math.sqrt(e*e+r*r))&&(e/=l,r/=l,s/=l),t*r180?n+=360:n-t>180&&(t+=360),o.push({i:e.push(i(e)+"rotate(",null,r)-2,x:sn(t,n)})):n&&e.push(i(e)+"rotate("+n+r)}(o.rotate,a.rotate,l,s),function(t,n,e,o){t!==n?o.push({i:e.push(i(e)+"skewX(",null,r)-2,x:sn(t,n)}):n&&e.push(i(e)+"skewX("+n+r)}(o.skewX,a.skewX,l,s),function(t,n,e,r,o,a){if(t!==e||n!==r){var l=o.push(i(o)+"scale(",null,",",null,")");a.push({i:l-4,x:sn(t,e)},{i:l-2,x:sn(n,r)})}else 1===e&&1===r||o.push(i(o)+"scale("+e+","+r+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,l,s),o=a=null,function(t){for(var n,e=-1,r=s.length;++e>8&15|n>>4&240,n>>4&15|240&n,(15&n)<<4|15&n,1):8===e?Vn(n>>24&255,n>>16&255,n>>8&255,(255&n)/255):4===e?Vn(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|240&n,((15&n)<<4|15&n)/255):null):(n=Sn.exec(t))?new In(n[1],n[2],n[3],1):(n=En.exec(t))?new In(255*n[1]/100,255*n[2]/100,255*n[3]/100,1):(n=$n.exec(t))?Vn(n[1],n[2],n[3],n[4]):(n=On.exec(t))?Vn(255*n[1]/100,255*n[2]/100,255*n[3]/100,n[4]):(n=Pn.exec(t))?Gn(n[1],n[2]/100,n[3]/100,1):(n=Tn.exec(t))?Gn(n[1],n[2]/100,n[3]/100,n[4]):Bn.hasOwnProperty(t)?Dn(Bn[t]):"transparent"===t?new In(NaN,NaN,NaN,0):null}function Dn(t){return new In(t>>16&255,t>>8&255,255&t,1)}function Vn(t,n,e,r){return r<=0&&(t=n=e=NaN),new In(t,n,e,r)}function Xn(t,n,e,r){return 1===arguments.length?((i=t)instanceof xn||(i=Fn(i)),i?new In((i=i.rgb()).r,i.g,i.b,i.opacity):new In):new In(t,n,e,null==r?1:r);var i}function In(t,n,e,r){this.r=+t,this.g=+n,this.b=+e,this.opacity=+r}function Un(){return`#${Yn(this.r)}${Yn(this.g)}${Yn(this.b)}`}function qn(){const t=zn(this.opacity);return`${1===t?"rgb(":"rgba("}${Hn(this.r)}, ${Hn(this.g)}, ${Hn(this.b)}${1===t?")":`, ${t})`}`}function zn(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Hn(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Yn(t){return((t=Hn(t))<16?"0":"")+t.toString(16)}function Gn(t,n,e,r){return r<=0?t=n=e=NaN:e<=0||e>=1?t=n=NaN:n<=0&&(t=NaN),new Jn(t,n,e,r)}function Wn(t){if(t instanceof Jn)return new Jn(t.h,t.s,t.l,t.opacity);if(t instanceof xn||(t=Fn(t)),!t)return new Jn;if(t instanceof Jn)return t;var n=(t=t.rgb()).r/255,e=t.g/255,r=t.b/255,i=Math.min(n,e,r),o=Math.max(n,e,r),a=NaN,l=o-i,s=(o+i)/2;return l?(a=n===o?(e-r)/l+6*(e0&&s<1?0:a,new Jn(a,l,s,t.opacity)}function Jn(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}function Kn(t){return(t=(t||0)%360)<0?t+360:t}function Zn(t){return Math.max(0,Math.min(1,t||0))}function Qn(t,n,e){return 255*(t<60?n+(e-n)*t/60:t<180?e:t<240?n+(e-n)*(240-t)/60:n)}function te(t,n,e,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*n+(4-6*o+3*a)*e+(1+3*t+3*o-3*a)*r+a*i)/6}wn(xn,Fn,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:Rn,formatHex:Rn,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return Wn(this).formatHsl()},formatRgb:Ln,toString:Ln}),wn(In,Xn,bn(xn,{brighter(t){return t=null==t?kn:Math.pow(kn,t),new In(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?Cn:Math.pow(Cn,t),new In(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new In(Hn(this.r),Hn(this.g),Hn(this.b),zn(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Un,formatHex:Un,formatHex8:function(){return`#${Yn(this.r)}${Yn(this.g)}${Yn(this.b)}${Yn(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:qn,toString:qn})),wn(Jn,(function(t,n,e,r){return 1===arguments.length?Wn(t):new Jn(t,n,e,null==r?1:r)}),bn(xn,{brighter(t){return t=null==t?kn:Math.pow(kn,t),new Jn(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?Cn:Math.pow(Cn,t),new Jn(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+360*(this.h<0),n=isNaN(t)||isNaN(this.s)?0:this.s,e=this.l,r=e+(e<.5?e:1-e)*n,i=2*e-r;return new In(Qn(t>=240?t-240:t+120,i,r),Qn(t,i,r),Qn(t<120?t+240:t-120,i,r),this.opacity)},clamp(){return new Jn(Kn(this.h),Zn(this.s),Zn(this.l),zn(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=zn(this.opacity);return`${1===t?"hsl(":"hsla("}${Kn(this.h)}, ${100*Zn(this.s)}%, ${100*Zn(this.l)}%${1===t?")":`, ${t})`}`}}));const ne=t=>()=>t;function ee(t,n){var e=n-t;return e?function(t,n){return function(e){return t+e*n}}(t,e):ne(isNaN(t)?n:t)}const re=function t(n){var e=function(t){return 1==(t=+t)?ee:function(n,e){return e-n?function(t,n,e){return t=Math.pow(t,e),n=Math.pow(n,e)-t,e=1/e,function(r){return Math.pow(t+r*n,e)}}(n,e,t):ne(isNaN(n)?e:n)}}(n);function r(t,n){var r=e((t=Xn(t)).r,(n=Xn(n)).r),i=e(t.g,n.g),o=e(t.b,n.b),a=ee(t.opacity,n.opacity);return function(n){return t.r=r(n),t.g=i(n),t.b=o(n),t.opacity=a(n),t+""}}return r.gamma=t,r}(1);function ie(t){return function(n){var e,r,i=n.length,o=new Array(i),a=new Array(i),l=new Array(i);for(e=0;e=1?(e=1,n-1):Math.floor(e*n),i=t[r],o=t[r+1],a=r>0?t[r-1]:2*i-o,l=ro&&(i=n.slice(o,i),l[a]?l[a]+=i:l[++a]=i),(e=e[0])===(r=r[0])?l[a]?l[a]+=r:l[++a]=r:(l[++a]=null,s.push({i:a,x:sn(e,r)})),o=ae.lastIndex;return o=0&&(t=t.slice(0,n)),!t||"start"===t}))}(n)?on:an;return function(){var a=o(this,t),l=a.on;l!==r&&(i=(r=l).copy()).on(n,e),a.on=i}}(e,t,n))},attr:function(t,n){var e=F(t),r="transform"===e?gn:se;return this.attrTween(t,"function"==typeof n?(e.local?de:pe)(e,r,yn(this,"attr."+t,n)):null==n?(e.local?ce:ue)(e):(e.local?fe:he)(e,r,n))},attrTween:function(t,n){var e="attr."+t;if(arguments.length<2)return(e=this.tween(e))&&e._value;if(null==n)return this.tween(e,null);if("function"!=typeof n)throw new Error;var r=F(t);return this.tween(e,(r.local?ge:me)(r,n))},style:function(t,n,e){var r="transform"==(t+="")?dn:se;return null==n?this.styleTween(t,function(t,n){var e,r,i;return function(){var o=W(this,t),a=(this.style.removeProperty(t),W(this,t));return o===a?null:o===e&&a===r?i:i=n(e=o,r=a)}}(t,r)).on("end.style."+t,xe(t)):"function"==typeof n?this.styleTween(t,function(t,n,e){var r,i,o;return function(){var a=W(this,t),l=e(this),s=l+"";return null==l&&(this.style.removeProperty(t),s=l=W(this,t)),a===s?null:a===r&&s===i?o:(i=s,o=n(r=a,l))}}(t,r,yn(this,"style."+t,n))).each(function(t,n){var e,r,i,o,a="style."+n,l="end."+a;return function(){var s=an(this,t),u=s.on,c=null==s.value[a]?o||(o=xe(n)):void 0;u===e&&i===c||(r=(e=u).copy()).on(l,i=c),s.on=r}}(this._id,t)):this.styleTween(t,function(t,n,e){var r,i,o=e+"";return function(){var a=W(this,t);return a===o?null:a===r?i:i=n(r=a,e)}}(t,r,n),e).on("end.style."+t,null)},styleTween:function(t,n,e){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==n)return this.tween(r,null);if("function"!=typeof n)throw new Error;return this.tween(r,function(t,n,e){var r,i;function o(){var o=n.apply(this,arguments);return o!==i&&(r=(i=o)&&function(t,n,e){return function(r){this.style.setProperty(t,n.call(this,r),e)}}(t,o,e)),r}return o._value=n,o}(t,n,null==e?"":e))},text:function(t){return this.tween("text","function"==typeof t?function(t){return function(){var n=t(this);this.textContent=null==n?"":n}}(yn(this,"text",t)):function(t){return function(){this.textContent=t}}(null==t?"":t+""))},textTween:function(t){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(null==t)return this.tween(n,null);if("function"!=typeof t)throw new Error;return this.tween(n,function(t){var n,e;function r(){var r=t.apply(this,arguments);return r!==e&&(n=(e=r)&&function(t){return function(n){this.textContent=t.call(this,n)}}(r)),n}return r._value=t,r}(t))},remove:function(){return this.on("end.remove",function(t){return function(){var n=this.parentNode;for(var e in this.__transition)if(+e!==t)return;n&&n.removeChild(this)}}(this._id))},tween:function(t,n){var e=this._id;if(t+="",arguments.length<2){for(var r,i=ln(this.node(),e).tween,o=0,a=i.length;o2&&e.state<5,e.state=6,e.timer.stop(),e.on.call(r?"interrupt":"cancel",t,t.__data__,e.index,e.group),delete o[i]):a=!1;a&&delete t.__transition}}(this,t)}))},Et.prototype.transition=function(t){var n,e;t instanceof ke?(n=t._id,t=t._name):(n=je(),(e=Ne).time=Yt(),t=null==t?null:t+"");for(var r=this._groups,i=r.length,o=0;o=Ve?10:o>=Xe?5:o>=Ie?2:1;let l,s,u;return i<0?(u=Math.pow(10,-i)/a,l=Math.round(t*u),s=Math.round(n*u),l/un&&--s,u=-u):(u=Math.pow(10,i)*a,l=Math.round(t/u),s=Math.round(n/u),l*un&&--s),sn?1:t>=n?0:NaN}function He(t,n){return null==t||null==n?NaN:nt?1:n>=t?0:NaN}function Ye(t){let n,e,r;function i(t,r,i=0,o=t.length){if(i>>1;e(t[n],r)<0?i=n+1:o=n}while(ize(t(n),e),r=(n,e)=>t(n)-e):(n=t===ze||t===He?t:Ge,e=t,r=t),{left:i,center:function(t,n,e=0,o=t.length){const a=i(t,n,e,o-1);return a>e&&r(t[a-1],n)>-r(t[a],n)?a-1:a},right:function(t,r,i=0,o=t.length){if(i>>1;e(t[n],r)<=0?i=n+1:o=n}while(i=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function fr(t){if(!(n=hr.exec(t)))throw new Error("invalid format: "+t);var n;return new pr({fill:n[1],align:n[2],sign:n[3],symbol:n[4],zero:n[5],width:n[6],comma:n[7],precision:n[8]&&n[8].slice(1),trim:n[9],type:n[10]})}function pr(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function dr(t,n){if((e=(t=n?t.toExponential(n-1):t.toExponential()).indexOf("e"))<0)return null;var e,r=t.slice(0,e);return[r.length>1?r[0]+r.slice(2):r,+t.slice(e+1)]}function gr(t){return(t=dr(Math.abs(t)))?t[1]:NaN}function mr(t,n){var e=dr(t,n);if(!e)return t+"";var r=e[0],i=e[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}fr.prototype=pr.prototype,pr.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};const vr={"%":(t,n)=>(100*t).toFixed(n),b:t=>Math.round(t).toString(2),c:t=>t+"",d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:(t,n)=>t.toExponential(n),f:(t,n)=>t.toFixed(n),g:(t,n)=>t.toPrecision(n),o:t=>Math.round(t).toString(8),p:(t,n)=>mr(100*t,n),r:mr,s:function(t,n){var e=dr(t,n);if(!e)return t+"";var r=e[0],i=e[1],o=i-(cr=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,a=r.length;return o===a?r:o>a?r+new Array(o-a+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+dr(t,Math.max(0,n+o-1))[0]},X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function yr(t){return t}var wr,_r,br,xr=Array.prototype.map,Cr=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function kr(t){var n=t.domain;return t.ticks=function(t){var e=n();return function(t,n,e){if(!((e=+e)>0))return[];if((t=+t)==(n=+n))return[t];const r=n=i))return[];const l=o-i+1,s=new Array(l);if(r)if(a<0)for(let t=0;t0;){if((i=qe(s,u,e))===r)return o[a]=s,o[l]=u,n(o);if(i>0)s=Math.floor(s/i)*i,u=Math.ceil(u/i)*i;else{if(!(i<0))break;s=Math.ceil(s*i)/i,u=Math.floor(u*i)/i}r=i}return t},t}function jr(){var t=function(){var t,n,e,r,i,o,a=or,l=or,s=er,u=ar;function c(){var t,n,e,s=Math.min(a.length,l.length);return u!==ar&&(t=a[0],n=a[s-1],t>n&&(e=t,t=n,n=e),u=function(e){return Math.max(t,Math.min(n,e))}),r=s>2?ur:sr,i=o=null,h}function h(n){return null==n||isNaN(n=+n)?e:(i||(i=r(a.map(t),l,s)))(t(u(n)))}return h.invert=function(e){return u(n((o||(o=r(l,a.map(t),sn)))(e)))},h.domain=function(t){return arguments.length?(a=Array.from(t,ir),c()):a.slice()},h.range=function(t){return arguments.length?(l=Array.from(t),c()):l.slice()},h.rangeRound=function(t){return l=Array.from(t),s=rr,c()},h.clamp=function(t){return arguments.length?(u=!!t||ar,c()):u!==ar},h.interpolate=function(t){return arguments.length?(s=t,c()):s},h.unknown=function(t){return arguments.length?(e=t,h):e},function(e,r){return t=e,n=r,c()}}()(ar,ar);return t.copy=function(){return n=t,jr().domain(n.domain()).range(n.range()).interpolate(n.interpolate()).clamp(n.clamp()).unknown(n.unknown());var n},Pe.apply(t,arguments),kr(t)}function Mr(t){return"string"==typeof t?new At([[document.querySelector(t)]],[document.documentElement]):new At([[t]],Nt)}function Nr(t,n,e){this.k=t,this.x=n,this.y=e}wr=function(t){var n,e,r=void 0===t.grouping||void 0===t.thousands?yr:(n=xr.call(t.grouping,Number),e=t.thousands+"",function(t,r){for(var i=t.length,o=[],a=0,l=n[0],s=0;i>0&&l>0&&(s+l+1>r&&(l=Math.max(1,r-s)),o.push(t.substring(i-=l,i+l)),!((s+=l+1)>r));)l=n[a=(a+1)%n.length];return o.reverse().join(e)}),i=void 0===t.currency?"":t.currency[0]+"",o=void 0===t.currency?"":t.currency[1]+"",a=void 0===t.decimal?".":t.decimal+"",l=void 0===t.numerals?yr:function(t){return function(n){return n.replace(/[0-9]/g,(function(n){return t[+n]}))}}(xr.call(t.numerals,String)),s=void 0===t.percent?"%":t.percent+"",u=void 0===t.minus?"−":t.minus+"",c=void 0===t.nan?"NaN":t.nan+"";function h(t){var n=(t=fr(t)).fill,e=t.align,h=t.sign,f=t.symbol,p=t.zero,d=t.width,g=t.comma,m=t.precision,v=t.trim,y=t.type;"n"===y?(g=!0,y="g"):vr[y]||(void 0===m&&(m=12),v=!0,y="g"),(p||"0"===n&&"="===e)&&(p=!0,n="0",e="=");var w="$"===f?i:"#"===f&&/[boxX]/.test(y)?"0"+y.toLowerCase():"",_="$"===f?o:/[%p]/.test(y)?s:"",b=vr[y],x=/[defgprs%]/.test(y);function C(t){var i,o,s,f=w,C=_;if("c"===y)C=b(t)+C,t="";else{var k=(t=+t)<0||1/t<0;if(t=isNaN(t)?c:b(Math.abs(t),m),v&&(t=function(t){t:for(var n,e=t.length,r=1,i=-1;r0&&(i=0)}return i>0?t.slice(0,i)+t.slice(n+1):t}(t)),k&&0==+t&&"+"!==h&&(k=!1),f=(k?"("===h?h:u:"-"===h||"("===h?"":h)+f,C=("s"===y?Cr[8+cr/3]:"")+C+(k&&"("===h?")":""),x)for(i=-1,o=t.length;++i(s=t.charCodeAt(i))||s>57){C=(46===s?a+t.slice(i+1):t.slice(i))+C,t=t.slice(0,i);break}}g&&!p&&(t=r(t,1/0));var j=f.length+t.length+C.length,M=j>1)+f+t+C+M.slice(j);break;default:t=M+f+t+C}return l(t)}return m=void 0===m?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m)),C.toString=function(){return t+""},C}return{format:h,formatPrefix:function(t,n){var e=h(((t=fr(t)).type="f",t)),r=3*Math.max(-8,Math.min(8,Math.floor(gr(n)/3))),i=Math.pow(10,-r),o=Cr[8+r/3];return function(t){return e(i*t)+o}}}}({thousands:",",grouping:[3],currency:["$",""]}),_r=wr.format,br=wr.formatPrefix,Nr.prototype={constructor:Nr,scale:function(t){return 1===t?this:new Nr(this.k*t,this.x,this.y)},translate:function(t,n){return 0===t&0===n?this:new Nr(this.k,this.x+this.k*t,this.y+this.k*n)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}},new Nr(1,0,0),Nr.prototype;const Ar=({data:t,width:n="100%",height:e="400px",backgroundColor:r,title:a,showGridX:l,showGridY:u,gridColor:c,gridWidth:h,showBarValues:f,xAxisLabel:p,yAxisLabel:d,colorSource:g,defaultBarColor:m,customColors:w,barOpacity:_})=>{const b=(0,i.useRef)(),x=(0,i.useRef)();return(0,i.useEffect)((()=>{if(!t||!b.current||!x.current)return;Mr(b.current).selectAll("*").remove();const n=[];for(const[e,r]of Object.entries(t))for(const t of r)n.push({dataset:e,label:t.label,value:parseInt(t.value,10),color:t.color||"#FF6384"});const e=x.current.clientWidth,r=x.current.clientHeight,i=a?40:20,o=d?60:40,C=e-o-20,k=r-i-(p?50:30),j=Mr(b.current).attr("width",e).attr("height",r);a&&j.append("text").attr("x",e/2).attr("y",20).attr("text-anchor","middle").style("font-size","16px").text(a);const M=j.append("g").attr("transform",`translate(${o},${i})`),N=De().domain(n.map((t=>t.label))).range([0,C]).padding(.1),A=jr().domain([0,s(n,(t=>t.value))]).range([k,0]);l&&M.append("g").attr("class","grid x-grid").attr("transform",`translate(0,${k})`).call(v(N).tickSize(-k).tickFormat("")).call((t=>t.selectAll(".tick line").attr("stroke",c).attr("stroke-width",h).attr("opacity",.5))),u&&M.append("g").attr("class","grid y-grid").call(y(A).tickSize(-C).tickFormat("")).call((t=>t.selectAll(".tick line").attr("stroke",c).attr("stroke-width",h).attr("opacity",.5))),M.selectAll("rect").data(n).enter().append("rect").attr("x",(t=>N(t.label))).attr("y",(t=>A(t.value))).attr("width",N.bandwidth()).attr("height",(t=>k-A(t.value))).attr("fill",(t=>(t=>{switch(g){case"singleColor":return m;case"customColors":const n=w.find((n=>n.dataset===t.dataset&&n.label===t.label));return n?n.color:t.color;default:return t.color}})(t))).style("opacity",_),f&&M.selectAll(".bar-value").data(n).enter().append("text").attr("class","bar-value").attr("x",(t=>N(t.label)+N.bandwidth()/2)).attr("y",(t=>A(t.value)-5)).attr("text-anchor","middle").text((t=>t.value)),M.append("g").attr("transform",`translate(0,${k})`).call(v(N)),M.append("g").call(y(A)),p&&M.append("text").attr("class","x-axis-label").attr("x",C/2).attr("y",k+40).attr("text-anchor","middle").style("font-size","12px").text(p),d&&M.append("text").attr("class","y-axis-label").attr("transform","rotate(-90)").attr("x",-k/2).attr("y",-45).attr("text-anchor","middle").style("font-size","12px").text(d)}),[t,n,e,a,l,u,c,h,f,p,d,g,m,w,_]),(0,o.jsx)("div",{ref:x,className:"bar-graph",style:{width:n,height:e,backgroundColor:r,position:"relative"},children:(0,o.jsx)("svg",{ref:b})})},Sr=({label:t,value:n,onChange:e})=>{const{number:i,unit:a}=(t=>{const n=t?.match(/^(\d+)(.*)$/);return n?{number:parseInt(n[1],10),unit:n[2]||"px"}:{number:300,unit:"px"}})(n);return(0,o.jsxs)("div",{className:"lcp-dimension-control",children:[(0,o.jsx)("label",{className:"components-base-control__label",children:t}),(0,o.jsxs)("div",{style:{display:"flex",gap:"8px",alignItems:"flex-start"},children:[(0,o.jsx)(r.TextControl,{type:"number",value:i,onChange:t=>{e(`${t}${a}`)},min:0,style:{width:"80px"}}),(0,o.jsx)(r.SelectControl,{value:a,options:[{label:"Pixels (px)",value:"px"},{label:"Percentage (%)",value:"%"},{label:"Viewport Width (vw)",value:"vw"},{label:"Viewport Height (vh)",value:"vh"}],onChange:t=>{e(`${i}${t}`)},style:{minWidth:"100px"}})]})]})},Er=({data:t,colorSource:e,singleColor:a,customColors:l,onColorSourceChange:s,onSingleColorChange:u,onCustomColorChange:c})=>{const[h,f]=(0,i.useState)(null),p=(t,n)=>{const e=l.find((e=>e.dataset===t&&e.label===n));return e?e.color:"#FF6384"};return(0,o.jsxs)("div",{className:"lcp-color-controls",children:[(0,o.jsx)(r.SelectControl,{label:(0,n.__)("Color Source","lcp"),value:e,options:[{label:(0,n.__)("Default Colors","lcp"),value:"default"},{label:(0,n.__)("Single Color","lcp"),value:"singleColor"},{label:(0,n.__)("Custom Colors","lcp"),value:"customColors"}],onChange:s}),"singleColor"===e&&(0,o.jsxs)("div",{className:"components-base-control",children:[(0,o.jsx)("label",{className:"components-base-control__label",children:(0,n.__)("Bar Color","lcp")}),(0,o.jsx)(r.ColorPicker,{color:a,onChangeComplete:t=>u(t.hex)})]}),"customColors"===e&&(0,o.jsx)("div",{className:"custom-colors-grid",style:{marginTop:"10px"},children:(()=>{const n=[];return Object.entries(t).forEach((([t,e])=>{e.forEach((e=>{n.push({dataset:t,label:e.label,value:e.value})}))})),n})().map(((t,n)=>(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",marginBottom:"8px",gap:"8px"},children:[(0,o.jsx)("span",{style:{flex:1},children:t.label}),(0,o.jsx)(r.Button,{onClick:()=>f(n),style:{backgroundColor:p(t.dataset,t.label),width:"24px",height:"24px",borderRadius:"50%",padding:0,border:"1px solid #ddd"}}),h===n&&(0,o.jsx)(r.Popover,{onClose:()=>f(null),children:(0,o.jsx)("div",{style:{padding:"12px"},children:(0,o.jsx)(r.ColorPicker,{color:p(t.dataset,t.label),onChangeComplete:n=>{c(t.dataset,t.label,n.hex)}})})})]},`${t.dataset}-${t.label}`)))})]})},$r=JSON.parse('{"UU":"lcp/bar-graph"}');(0,t.registerBlockType)($r.UU,{edit:function({attributes:t,setAttributes:a}){const{chartHeight:s,chartWidth:u,barColor:c,barOpacity:h,backgroundColor:f,showGridY:p,gridColor:d,chartData:g,dataSource:m,displayChartTitle:v,chartTitle:y,allowDownload:w,downloadMaxWidth:_,showSorting:b,showFiltering:x,showBarValues:C,showGridX:k,gridWidth:j,xAxisLabel:M,yAxisLabel:N,chartColorSource:A,chartCustomColors:S}=t,E=(0,e.useBlockProps)(),$=t=>{console.log("New data:",t),a({chartData:t})},O=t=>{a({dataSource:t,chartData:{}})},P=(t,n,e)=>{const r=[...S],i=r.findIndex((e=>e.dataset===t&&e.label===n));i>=0?r[i].color=e:r.push({dataset:t,label:n,color:e}),a({chartCustomColors:r})},[T,B]=(0,i.useState)(!1),R=()=>{B(!T)},[L,F]=(0,i.useState)(!1),D=()=>{F(!L)};return console.log("Chart data:",g),(0,o.jsxs)("div",{...E,children:[(0,o.jsx)(e.InspectorControls,{children:(0,o.jsx)(r.TabPanel,{className:"lcp-tab-panel",activeClass:"active-tab",tabs:[{name:"data",title:(0,n.__)("Data Settings","lcp"),className:"tab-data"},{name:"appearance",title:(0,n.__)("Appearance","lcp"),className:"tab-appearance"},{name:"tools",title:(0,n.__)("Tools Settings","lcp"),className:"tab-tools"}],children:t=>"data"===t.name?(0,o.jsxs)(r.Panel,{children:[(0,o.jsx)(r.PanelBody,{title:"Data Settings",children:(0,o.jsx)(l,{value:g,onChange:$,dataSource:m,onDataSourceChange:O})}),(0,o.jsxs)(r.PanelBody,{title:"Chart Settings",children:[(0,o.jsx)(r.ToggleControl,{label:(0,n.__)("Display Chart Title","lcp"),checked:v,onChange:t=>a({displayChartTitle:t})}),v&&(0,o.jsx)(r.TextControl,{label:(0,n.__)("Chart Title","lcp"),value:y,onChange:t=>a({chartTitle:t})}),(0,o.jsx)(Sr,{label:(0,n.__)("Chart Width","lcp"),value:u,onChange:t=>a({chartWidth:t})}),(0,o.jsx)(Sr,{label:(0,n.__)("Chart Height","lcp"),value:s,onChange:t=>a({chartHeight:t})})]}),(0,o.jsxs)(r.PanelBody,{title:"Appearance",children:[(0,o.jsxs)("div",{className:"grid-color-row",style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"10px"},children:[(0,o.jsx)("span",{children:"Grid Color"}),(0,o.jsx)(r.Button,{className:"grid-color-button",onClick:R,style:{backgroundColor:d,width:"26px",height:"26px",borderRadius:"50%",border:"none"}}),T&&(0,o.jsx)(r.Popover,{position:"bottom center",onClose:R,children:(0,o.jsx)(r.ColorPicker,{color:d,onChangeComplete:t=>{return n=t.hex,void a({gridColor:n});var n}})})]}),(0,o.jsxs)("div",{className:"background-color-row",style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"10px"},children:[(0,o.jsx)("span",{children:"Background Color"}),(0,o.jsx)(r.Button,{className:"background-color-button",onClick:D,style:{backgroundColor:f,width:"26px",height:"26px",borderRadius:"50%",border:"1px solid #ccc"}}),L&&(0,o.jsx)(r.Popover,{position:"bottom center",onClose:D,children:(0,o.jsx)(r.ColorPicker,{color:f,onChangeComplete:t=>{return n=t.hex,void a({backgroundColor:n});var n}})})]}),(0,o.jsx)(Er,{data:g,colorSource:A,singleColor:c,customColors:S,onColorSourceChange:t=>a({chartColorSource:t}),onSingleColorChange:t=>a({barColor:t}),onCustomColorChange:P}),(0,o.jsx)(r.RangeControl,{label:(0,n.__)("Bar Opacity","lcp"),value:h,onChange:t=>a({barOpacity:t}),min:0,max:1,step:.1}),(0,o.jsxs)("div",{className:"components-base-control",children:[(0,o.jsx)("label",{className:"components-base-control__label",children:(0,n.__)("Background Color","lcp")}),(0,o.jsx)(r.ColorPicker,{color:f,onChangeComplete:t=>a({backgroundColor:t.hex})})]}),(0,o.jsx)(r.ToggleControl,{label:(0,n.__)("Show Bar Values","lcp"),checked:C,onChange:t=>a({showBarValues:t})})]}),(0,o.jsxs)(r.PanelBody,{title:"Grid Settings",children:[(0,o.jsx)(r.TextControl,{label:(0,n.__)("X-Axis Label","lcp"),value:M,onChange:t=>a({xAxisLabel:t})}),(0,o.jsx)(r.TextControl,{label:(0,n.__)("Y-Axis Label","lcp"),value:N,onChange:t=>a({yAxisLabel:t})}),(0,o.jsx)(r.ToggleControl,{label:(0,n.__)("Show X-Axis Grid","lcp"),checked:k,onChange:t=>a({showGridX:t})}),(0,o.jsx)(r.ToggleControl,{label:(0,n.__)("Show Y-Axis Grid","lcp"),checked:p,onChange:t=>a({showGridY:t})}),(k||p)&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:"components-base-control",children:[(0,o.jsx)("label",{className:"components-base-control__label",children:(0,n.__)("Grid Color","lcp")}),(0,o.jsx)(r.ColorPicker,{color:d,onChangeComplete:t=>a({gridColor:t.hex})})]}),(0,o.jsx)(r.RangeControl,{label:(0,n.__)("Grid Width","lcp"),value:j,onChange:t=>a({gridWidth:t}),min:1,max:5,step:1})]})]})]}):"appearance"===t.name?(0,o.jsx)(r.PanelBody,{}):"tools"===t.name?(0,o.jsxs)(r.PanelBody,{children:[(0,o.jsx)(r.ToggleControl,{label:(0,n.__)("Allow Download","lcp"),checked:w,onChange:t=>a({allowDownload:t})}),w&&(0,o.jsx)(r.TextControl,{type:"number",label:(0,n.__)("Max Download Width (px)","lcp"),value:parseInt(_),onChange:t=>a({downloadMaxWidth:`${t}px`}),min:100,max:5e3}),(0,o.jsx)(r.ToggleControl,{label:(0,n.__)("Show Sorting Options","lcp"),checked:b,onChange:t=>a({showSorting:t})}),(0,o.jsx)(r.ToggleControl,{label:(0,n.__)("Show Filtering Options","lcp"),checked:x,onChange:t=>a({showFiltering:t})})]}):void 0})}),w&&(0,o.jsx)("div",{className:"lcp-bar-graph-toolbar",children:(0,o.jsx)(r.Button,{isPrimary:!0,onClick:()=>{const t=document.querySelector(".bar-graph svg");if(!t)return;const n=document.createElement("canvas"),e=(new XMLSerializer).serializeToString(t),r=new Blob([e],{type:"image/svg+xml;charset=utf-8"}),i=window.URL||window.webkitURL||window,o=i.createObjectURL(r),a=new Image;a.onload=()=>{n.width=t.width.baseVal.value,n.height=t.height.baseVal.value;const e=n.getContext("2d");e.fillStyle=f,e.fillRect(0,0,n.width,n.height),e.drawImage(a,0,0),n.toBlob((t=>{const n=URL.createObjectURL(t),e=document.createElement("a");e.href=n,e.download="bar-graph.png",document.body.appendChild(e),e.click(),document.body.removeChild(e),URL.revokeObjectURL(n),i.revokeObjectURL(o)}),"image/png")},a.src=o},icon:"download",children:(0,n.__)("Download Graph","lcp")})}),g&&Object.keys(g).length>0?(0,o.jsx)(Ar,{data:g,height:s,width:u,backgroundColor:f,defaultBarColor:c,barOpacity:h,showGridX:k,showGridY:p,gridColor:d,gridWidth:j,title:v?y:"",showSorting:b,showFiltering:x,showBarValues:C,xAxisLabel:M,yAxisLabel:N,colorSource:A,customColors:S}):(0,o.jsx)("div",{className:"lcp-bar-graph-placeholder",style:{height:s,width:u,backgroundColor:f,display:"flex",alignItems:"center",justifyContent:"center",border:"2px dashed #ccc",borderRadius:"4px",color:"#666"},children:(0,n.__)("Please add data using the Data Settings panel","lcp")})]})},save:function({attributes:t}){const{chartHeight:n,backgroundColor:r}=t;return(0,o.jsx)("div",{...e.useBlockProps.save(),children:(0,o.jsx)("div",{className:"lcp-bar-graph",style:{height:n,backgroundColor:r}})})}})}},e={};function r(t){var i=e[t];if(void 0!==i)return i.exports;var o=e[t]={exports:{}};return n[t](o,o.exports,r),o.exports}r.m=n,t=[],r.O=(n,e,i,o)=>{if(!e){var a=1/0;for(c=0;c=o)&&Object.keys(r.O).every((t=>r.O[t](e[s])))?e.splice(s--,1):(l=!1,o0&&t[c-1][2]>o;c--)t[c]=t[c-1];t[c]=[e,i,o]},r.o=(t,n)=>Object.prototype.hasOwnProperty.call(t,n),(()=>{var t={57:0,350:0};r.O.j=n=>0===t[n];var n=(n,e)=>{var i,o,[a,l,s]=e,u=0;if(a.some((n=>0!==t[n]))){for(i in l)r.o(l,i)&&(r.m[i]=l[i]);if(s)var c=s(r)}for(n&&n(e);ur(934)));i=r.O(i)})();