@pie-element/graphing-solution-set 5.0.0-next.42 → 5.1.0-next.0
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/configure/lib/correct-response.js +10 -10
- package/configure/lib/correct-response.js.map +1 -1
- package/configure/lib/graphing-config.js +3 -3
- package/configure/lib/graphing-config.js.map +1 -1
- package/configure/lib/utils.js +3 -4
- package/configure/lib/utils.js.map +1 -1
- package/configure/package.json +7 -7
- package/controller/lib/index.js +11 -13
- package/controller/lib/index.js.map +1 -1
- package/controller/lib/utils.js +7 -11
- package/controller/lib/utils.js.map +1 -1
- package/controller/package.json +1 -1
- package/package.json +13 -10
- package/module/configure.js +0 -1
- package/module/controller.js +0 -21914
- package/module/demo.js +0 -79
- package/module/element.js +0 -1
- package/module/index.html +0 -21
- package/module/manifest.json +0 -22
- package/module/print-demo.js +0 -117
- package/module/print.html +0 -18
package/module/configure.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_dll_react_dom as e,_dll_prop_types as t,_dll_lodash as n,_dll_react as r,_dll_pie_lib__render_ui as o,_dll_mui__material_styles as i,_dll_debug as a,_dll_classnames as s,_dll_mui__material as l,_dll_mui__icons_material as c}from"../../../@pie-lib/shared-module@^3.0.5/module/index.js";import{_dll_pie_lib__math_rendering as u}from"../../../@pie-lib/math-rendering-module@^4.0.5/module/index.js";import{_dll_pie_lib__config_ui as p}from"../../../@pie-lib/config-module@^3.0.0/module/index.js";import{_dll_pie_lib__editable_html_tip_tap as h}from"../../../@pie-lib/editable-html-module@^6.0.5/module/index.js";"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var d,f=e;d=f.createRoot,f.hydrateRoot;var g="http://www.w3.org/1999/xhtml",m={svg:"http://www.w3.org/2000/svg",xhtml:g,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function y(e){var t=e+="",n=t.indexOf(":");return n>=0&&"xmlns"!==(t=e.slice(0,n))&&(e=e.slice(n+1)),m.hasOwnProperty(t)?{space:m[t],local:e}:e}function b(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===g&&t.documentElement.namespaceURI===g?t.createElement(e):t.createElementNS(n,e)}}function v(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function x(e){var t=y(e);return(t.local?v:b)(t)}function w(){}function S(e){return null==e?w:function(){return this.querySelector(e)}}function _(){return[]}function k(e){return function(t){return t.matches(e)}}var C=Array.prototype.find;function E(){return this.firstElementChild}var O=Array.prototype.filter;function P(){return Array.from(this.children)}function T(e){return new Array(e.length)}function A(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}function L(e,t,n,r,o,i){for(var a,s=0,l=t.length,c=i.length;s<c;++s)(a=t[s])?(a.__data__=i[s],r[s]=a):n[s]=new A(e,i[s]);for(;s<l;++s)(a=t[s])&&(o[s]=a)}function N(e,t,n,r,o,i,a){var s,l,c,u=new Map,p=t.length,h=i.length,d=new Array(p);for(s=0;s<p;++s)(l=t[s])&&(d[s]=c=a.call(l,l.__data__,s,t)+"",u.has(c)?o[s]=l:u.set(c,l));for(s=0;s<h;++s)c=a.call(e,i[s],s,i)+"",(l=u.get(c))?(r[s]=l,l.__data__=i[s],u.delete(c)):n[s]=new A(e,i[s]);for(s=0;s<p;++s)(l=t[s])&&u.get(d[s])===l&&(o[s]=l)}function M(e){return e.__data__}function R(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}function D(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function j(e){return function(){this.removeAttribute(e)}}function $(e){return function(){this.removeAttributeNS(e.space,e.local)}}function I(e,t){return function(){this.setAttribute(e,t)}}function F(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function V(e,t){return function(){var n=t.apply(this,arguments);null==n?this.removeAttribute(e):this.setAttribute(e,n)}}function B(e,t){return function(){var n=t.apply(this,arguments);null==n?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function z(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function H(e){return function(){this.style.removeProperty(e)}}function q(e,t,n){return function(){this.style.setProperty(e,t,n)}}function W(e,t,n){return function(){var r=t.apply(this,arguments);null==r?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function U(e){return function(){delete this[e]}}function G(e,t){return function(){this[e]=t}}function Y(e,t){return function(){var n=t.apply(this,arguments);null==n?delete this[e]:this[e]=n}}function K(e){return e.trim().split(/^|\s+/)}function X(e){return e.classList||new J(e)}function J(e){this._node=e,this._names=K(e.getAttribute("class")||"")}function Z(e,t){for(var n=X(e),r=-1,o=t.length;++r<o;)n.add(t[r])}function Q(e,t){for(var n=X(e),r=-1,o=t.length;++r<o;)n.remove(t[r])}function ee(e){return function(){Z(this,e)}}function te(e){return function(){Q(this,e)}}function ne(e,t){return function(){(t.apply(this,arguments)?Z:Q)(this,e)}}function re(){this.textContent=""}function oe(e){return function(){this.textContent=e}}function ie(e){return function(){var t=e.apply(this,arguments);this.textContent=null==t?"":t}}function ae(){this.innerHTML=""}function se(e){return function(){this.innerHTML=e}}function le(e){return function(){var t=e.apply(this,arguments);this.innerHTML=null==t?"":t}}function ce(){this.nextSibling&&this.parentNode.appendChild(this)}function ue(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function pe(){return null}function he(){var e=this.parentNode;e&&e.removeChild(this)}function de(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function fe(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function ge(e){return function(){var t=this.__on;if(t){for(var n,r=0,o=-1,i=t.length;r<i;++r)n=t[r],e.type&&n.type!==e.type||n.name!==e.name?t[++o]=n:this.removeEventListener(n.type,n.listener,n.options);++o?t.length=o:delete this.__on}}}function me(e,t,n){return function(){var r,o=this.__on,i=function(e){return function(t){e.call(this,t,this.__data__)}}(t);if(o)for(var a=0,s=o.length;a<s;++a)if((r=o[a]).type===e.type&&r.name===e.name)return this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=i,r.options=n),void(r.value=t);this.addEventListener(e.type,i,n),r={type:e.type,name:e.name,value:t,listener:i,options:n},o?o.push(r):this.__on=[r]}}function ye(e,t,n){var r=z(e),o=r.CustomEvent;"function"==typeof o?o=new o(t,n):(o=r.document.createEvent("Event"),n?(o.initEvent(t,n.bubbles,n.cancelable),o.detail=n.detail):o.initEvent(t,!1,!1)),e.dispatchEvent(o)}function be(e,t){return function(){return ye(this,e,t)}}function ve(e,t){return function(){return ye(this,e,t.apply(this,arguments))}}A.prototype={constructor:A,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}},J.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};var xe=[null];function we(e,t){this._groups=e,this._parents=t}function Se(e){return"string"==typeof e?new we([[document.querySelector(e)]],[document.documentElement]):new we([[e]],xe)}function _e(e,t){if(e=function(e){let t;for(;t=e.sourceEvent;)e=t;return e}(e),void 0===t&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,[(r=r.matrixTransform(t.getScreenCTM().inverse())).x,r.y]}if(t.getBoundingClientRect){var o=t.getBoundingClientRect();return[e.clientX-o.left-t.clientLeft,e.clientY-o.top-t.clientTop]}}return[e.pageX,e.pageY]}we.prototype={constructor:we,select:function(e){"function"!=typeof e&&(e=S(e));for(var t=this._groups,n=t.length,r=new Array(n),o=0;o<n;++o)for(var i,a,s=t[o],l=s.length,c=r[o]=new Array(l),u=0;u<l;++u)(i=s[u])&&(a=e.call(i,i.__data__,u,s))&&("__data__"in i&&(a.__data__=i.__data__),c[u]=a);return new we(r,this._parents)},selectAll:function(e){e="function"==typeof e?function(e){return function(){return function(e){return null==e?[]:Array.isArray(e)?e:Array.from(e)}(e.apply(this,arguments))}}(e):function(e){return null==e?_:function(){return this.querySelectorAll(e)}}(e);for(var t=this._groups,n=t.length,r=[],o=[],i=0;i<n;++i)for(var a,s=t[i],l=s.length,c=0;c<l;++c)(a=s[c])&&(r.push(e.call(a,a.__data__,c,s)),o.push(a));return new we(r,o)},selectChild:function(e){return this.select(null==e?E:function(e){return function(){return C.call(this.children,e)}}("function"==typeof e?e:k(e)))},selectChildren:function(e){return this.selectAll(null==e?P:function(e){return function(){return O.call(this.children,e)}}("function"==typeof e?e:k(e)))},filter:function(e){"function"!=typeof e&&(e=function(e){return function(){return this.matches(e)}}(e));for(var t=this._groups,n=t.length,r=new Array(n),o=0;o<n;++o)for(var i,a=t[o],s=a.length,l=r[o]=[],c=0;c<s;++c)(i=a[c])&&e.call(i,i.__data__,c,a)&&l.push(i);return new we(r,this._parents)},data:function(e,t){if(!arguments.length)return Array.from(this,M);var n=t?N:L,r=this._parents,o=this._groups;"function"!=typeof e&&(e=function(e){return function(){return e}}(e));for(var i=o.length,a=new Array(i),s=new Array(i),l=new Array(i),c=0;c<i;++c){var u=r[c],p=o[c],h=p.length,d=R(e.call(u,u&&u.__data__,c,r)),f=d.length,g=s[c]=new Array(f),m=a[c]=new Array(f);n(u,p,g,m,l[c]=new Array(h),d,t);for(var y,b,v=0,x=0;v<f;++v)if(y=g[v]){for(v>=x&&(x=v+1);!(b=m[x])&&++x<f;);y._next=b||null}}return(a=new we(a,r))._enter=s,a._exit=l,a},enter:function(){return new we(this._enter||this._groups.map(T),this._parents)},exit:function(){return new we(this._exit||this._groups.map(T),this._parents)},join:function(e,t,n){var r=this.enter(),o=this,i=this.exit();return"function"==typeof e?(r=e(r))&&(r=r.selection()):r=r.append(e+""),null!=t&&(o=t(o))&&(o=o.selection()),null==n?i.remove():n(i),r&&o?r.merge(o).order():o},merge:function(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,o=n.length,i=r.length,a=Math.min(o,i),s=new Array(o),l=0;l<a;++l)for(var c,u=n[l],p=r[l],h=u.length,d=s[l]=new Array(h),f=0;f<h;++f)(c=u[f]||p[f])&&(d[f]=c);for(;l<o;++l)s[l]=n[l];return new we(s,this._parents)},selection:function(){return this},order:function(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r,o=e[t],i=o.length-1,a=o[i];--i>=0;)(r=o[i])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(e){function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}e||(e=D);for(var n=this._groups,r=n.length,o=new Array(r),i=0;i<r;++i){for(var a,s=n[i],l=s.length,c=o[i]=new Array(l),u=0;u<l;++u)(a=s[u])&&(c[u]=a);c.sort(t)}return new we(o,this._parents).order()},call:function(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],o=0,i=r.length;o<i;++o){var a=r[o];if(a)return a}return null},size:function(){let e=0;for(const t of this)++e;return e},empty:function(){return!this.node()},each:function(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var o,i=t[n],a=0,s=i.length;a<s;++a)(o=i[a])&&e.call(o,o.__data__,a,i);return this},attr:function(e,t){var n=y(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((null==t?n.local?$:j:"function"==typeof t?n.local?B:V:n.local?F:I)(n,t))},style:function(e,t,n){return arguments.length>1?this.each((null==t?H:"function"==typeof t?W:q)(e,t,null==n?"":n)):function(e,t){return e.style.getPropertyValue(t)||z(e).getComputedStyle(e,null).getPropertyValue(t)}(this.node(),e)},property:function(e,t){return arguments.length>1?this.each((null==t?U:"function"==typeof t?Y:G)(e,t)):this.node()[e]},classed:function(e,t){var n=K(e+"");if(arguments.length<2){for(var r=X(this.node()),o=-1,i=n.length;++o<i;)if(!r.contains(n[o]))return!1;return!0}return this.each(("function"==typeof t?ne:t?ee:te)(n,t))},text:function(e){return arguments.length?this.each(null==e?re:("function"==typeof e?ie:oe)(e)):this.node().textContent},html:function(e){return arguments.length?this.each(null==e?ae:("function"==typeof e?le:se)(e)):this.node().innerHTML},raise:function(){return this.each(ce)},lower:function(){return this.each(ue)},append:function(e){var t="function"==typeof e?e:x(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})},insert:function(e,t){var n="function"==typeof e?e:x(e),r=null==t?pe:"function"==typeof t?t:S(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})},remove:function(){return this.each(he)},clone:function(e){return this.select(e?fe:de)},datum:function(e){return arguments.length?this.property("__data__",e):this.node().__data__},on:function(e,t,n){var r,o,i=function(e){return e.trim().split(/^|\s+/).map(function(e){var t="",n=e.indexOf(".");return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}(e+""),a=i.length;if(!(arguments.length<2)){for(s=t?me:ge,r=0;r<a;++r)this.each(s(i[r],t,n));return this}var s=this.node().__on;if(s)for(var l,c=0,u=s.length;c<u;++c)for(r=0,l=s[c];r<a;++r)if((o=i[r]).type===l.type&&o.name===l.name)return l.value},dispatch:function(e,t){return this.each(("function"==typeof t?ve:be)(e,t))},[Symbol.iterator]:function*(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r,o=e[t],i=0,a=o.length;i<a;++i)(r=o[i])&&(yield r)}};const ke=t,Ce={min:ke.number.isRequired,max:ke.number.isRequired,step:ke.number},Ee=ke.shape(Ce),Oe=ke.shape(Ce),Pe=ke.shape({width:ke.number.isRequired,height:ke.number.isRequired}),Te=ke.shape({x:ke.number.isRequired,y:ke.number.isRequired}),Ae=ke.oneOfType([ke.arrayOf(ke.node),ke.node]).isRequired,Le=ke.shape({x:ke.func.isRequired,y:ke.func.isRequired}),Ne=ke.shape({x:ke.func.isRequired,y:ke.func.isRequired}),Me=ke.shape({scale:Le.isRequired,snap:Ne.isRequired,domain:Ee.isRequired,range:Oe.isRequired,size:Pe.isRequired});var Re=function(e,t,n,r,o,i,a,s){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,i,a,s],u=0;(l=new Error(t.replace(/%s/g,function(){return c[u++]}))).name="Invariant Violation"}throw l.framesToPop=1,l}};function De(e,t){this.x=e,this.y=t}De.prototype={clone(){return new De(this.x,this.y)},add(e){return this.clone()._add(e)},sub(e){return this.clone()._sub(e)},multByPoint(e){return this.clone()._multByPoint(e)},divByPoint(e){return this.clone()._divByPoint(e)},mult(e){return this.clone()._mult(e)},div(e){return this.clone()._div(e)},rotate(e){return this.clone()._rotate(e)},rotateAround(e,t){return this.clone()._rotateAround(e,t)},matMult(e){return this.clone()._matMult(e)},unit(){return this.clone()._unit()},perp(){return this.clone()._perp()},round(){return this.clone()._round()},mag(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals(e){return this.x===e.x&&this.y===e.y},dist(e){return Math.sqrt(this.distSqr(e))},distSqr(e){const t=e.x-this.x,n=e.y-this.y;return t*t+n*n},angle(){return Math.atan2(this.y,this.x)},angleTo(e){return Math.atan2(this.y-e.y,this.x-e.x)},angleWith(e){return this.angleWithSep(e.x,e.y)},angleWithSep(e,t){return Math.atan2(this.x*t-this.y*e,this.x*e+this.y*t)},_matMult(e){const t=e[0]*this.x+e[1]*this.y,n=e[2]*this.x+e[3]*this.y;return this.x=t,this.y=n,this},_add(e){return this.x+=e.x,this.y+=e.y,this},_sub(e){return this.x-=e.x,this.y-=e.y,this},_mult(e){return this.x*=e,this.y*=e,this},_div(e){return this.x/=e,this.y/=e,this},_multByPoint(e){return this.x*=e.x,this.y*=e.y,this},_divByPoint(e){return this.x/=e.x,this.y/=e.y,this},_unit(){return this._div(this.mag()),this},_perp(){const e=this.y;return this.y=this.x,this.x=-e,this},_rotate(e){const t=Math.cos(e),n=Math.sin(e),r=t*this.x-n*this.y,o=n*this.x+t*this.y;return this.x=r,this.y=o,this},_rotateAround(e,t){const n=Math.cos(e),r=Math.sin(e),o=t.x+n*(this.x-t.x)-r*(this.y-t.y),i=t.y+r*(this.x-t.x)+n*(this.y-t.y);return this.x=o,this.y=i,this},_round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},constructor:De},De.convert=function(e){if(e instanceof De)return e;if(Array.isArray(e))return new De(+e[0],+e[1]);if(void 0!==e.x&&void 0!==e.y)return new De(+e.x,+e.y);throw new Error("Expected [x, y] or {x, y} point format")};const{range:je}=n,{isEqual:$e}=n;function Ie(e){let t,n=e[0],r=1;for(;r<e.length;){const o=e[r],i=e[r+1];if(r+=2,("optionalAccess"===o||"optionalCall"===o)&&null==n)return;"access"===o||"optionalAccess"===o?(t=n,n=i(n)):"call"!==o&&"optionalCall"!==o||(n=i((...e)=>n.call(t,...e)),t=void 0)}return n}const Fe=(e,t)=>({x:e,y:t});function Ve(e,t,n,r){if(r>=t)return t;if(r<=e)return e;let o=((e,t,n)=>{const r=je(e,t,n);return r.splice(r.length,1,t),r})(e,t,n);return o=o.filter(e=>Math.abs(r-e)<=n),o.length&&o.reduce((e,t)=>Math.abs(t-r)<=Math.abs(e-r)?t:e)}const Be=(e,t,n)=>({left:t.min-e.left,right:Math.abs(e.right-t.max),top:Math.abs(e.top-n.max),bottom:n.min-e.bottom}),ze=e=>new De(e.x,e.y),He=e=>{const t=Ie([new DOMParser,"optionalAccess",e=>e.parseFromString,"call",t=>t(e,"text/html")]);return Ie([t,"optionalAccess",e=>e.body,"optionalAccess",e=>e.textContent])||""},qe=e=>e&&0===Object.keys(e).length&&e.constructor===Object,We=e=>"string"==typeof e&&""===e.trim(),Ue=r,{useState:Ge}=r,{Readable:Ye}=o,Ke=t,Xe=h,Je={axisLabel:{fontSize:12,textAlign:"center",margin:4,padding:"4px 0"},chartLabel:{fontSize:16,textAlign:"center",margin:4,padding:"4px 0"},disabledLabel:{pointerEvents:"none",width:"100%"},editLabel:{position:"absolute",backgroundColor:"white",borderRadius:4,boxShadow:"0px 5px 8px rgba(0,0,0,0.15)",zIndex:10},rotateLeftLabel:{transform:"rotate(-90deg)",transformOrigin:"0 0",position:"absolute"},rotateRightLabel:{transform:"rotate(90deg)",transformOrigin:"0 0",position:"absolute"},customBottom:{position:"absolute"},displayNone:{display:"none"}},Ze=e=>{const{disabledLabel:t,graphHeight:n,graphWidth:r,isChartBottomLabel:o,isDefineChartBottomLabel:i,isChartLeftLabel:a,isDefineChartLeftLabel:s,placeholder:l,text:c,side:u,onChange:p,mathMlOptions:h={},charactersLimit:d,titleHeight:f}=e,[g,m]=Ge(!1),y=o||a||i||s,b="left"===u&&s&&n-220,v={width:b||("left"===u||"right"===u?n-8:r-8),top:b||a&&n-70+"px"||"left"===u&&n-8+"px"||o&&`${n-60+f}px`||"bottom"===u&&`${n-120+f}px`||0,left:"right"===u&&r-8+"px"||(s||i)&&"40px"||o&&"-10px"||0},x={width:r-8,top:"right"===u?n-22+"px":0,left:0};return Ue.createElement(Ye,{false:!0},Ue.createElement("div",{onClick:()=>{t||"left"!==u&&"right"!==u||m(!0)},style:{...g?x:v,...y?Je.chartLabel:Je.axisLabel,..."left"!==u||g?{}:Je.rotateLeftLabel,..."right"!==u||g?{}:Je.rotateRightLabel,...g?Je.editLabel:{},...o||i?Je.customBottom:{},...t&&!y&&We(He(c))&&Je.displayNone}},t?Ue.createElement("div",{style:Je.disabledLabel,dangerouslySetInnerHTML:{__html:c||""}}):Ue.createElement(Xe,{markup:c||"",onChange:p,placeholder:!t&&l,toolbarOpts:{position:"bottom"===u?"top":"bottom",noPadding:!0,noBorder:!0},disableScrollbar:!0,activePlugins:["bold","italic","underline","strikethrough","math"],onDone:()=>{m(!1),requestAnimationFrame(()=>{!function(e){let t,n=e[0],r=1;for(;r<e.length;){const o=e[r],i=e[r+1];if(r+=2,("optionalAccess"===o||"optionalCall"===o)&&null==n)return;"access"===o||"optionalAccess"===o?(t=n,n=i(n)):"call"!==o&&"optionalCall"!==o||(n=i((...e)=>n.call(t,...e)),t=void 0)}}([document,"access",e=>e.activeElement,"optionalAccess",e=>e.blur,"optionalCall",e=>e()])})},mathMlOptions:h,charactersLimit:d})))};Ze.propTypes={disabledLabel:Ke.bool,graphHeight:Ke.number,graphWidth:Ke.number,isChartBottomLabel:Ke.bool,isDefineChartBottomLabel:Ke.bool,isChartLeftLabel:Ke.bool,isDefineChartLeftLabel:Ke.bool,placeholder:Ke.string,text:Ke.string,side:Ke.string,onChange:Ke.func,mathMlOptions:Ke.object,charactersLimit:Ke.number,titleHeight:Ke.number};const Qe=r,{styled:et}=i,tt=t,{color:nt}=o,{Readable:rt}=o,ot=h;function it(e){let t,n=e[0],r=1;for(;r<e.length;){const o=e[r],i=e[r+1];if(r+=2,("optionalAccess"===o||"optionalCall"===o)&&null==n)return;"access"===o||"optionalAccess"===o?(t=n,n=i(n)):"call"!==o&&"optionalCall"!==o||(n=i((...e)=>n.call(t,...e)),t=void 0)}return n}const at=et("div")(({theme:e})=>({border:`solid 1px ${nt.primaryLight()}`,color:nt.defaults.TEXT,backgroundColor:e.palette.common.white,touchAction:"none",position:"relative",boxSizing:"unset"})),st=et("div")({display:"flex",position:"relative"}),lt=et("svg")({paddingLeft:"50px",overflow:"visible"}),ct=et("svg")({overflow:"visible"}),ut=et("g")({cursor:"pointer",userSelect:"none"}),pt=et("div")(({theme:e})=>({color:nt.defaults.TEXT,fontSize:e.typography.fontSize+2,padding:`${e.spacing(1.5)} ${e.spacing(.5)} 0`,textAlign:"center","&.disabled":{pointerEvents:"none"},"&.rightMargin":{marginRight:"74px"}})),ht=et("div")(({theme:e})=>({color:nt.defaults.TEXT,fontSize:e.typography.fontSize+4,padding:`${e.spacing(1.5)} ${e.spacing(.5)} 0`,textAlign:"center","&.disabled":{pointerEvents:"none"},"&.rightMargin":{marginRight:"74px"}})),dt=et("div")({display:"flex",paddingTop:"6px"}),ft=et("div")({display:"flex",flexDirection:"column",alignItems:"center",width:"100px",pointerEvents:"none",userSelect:"none"}),gt=et("div")({width:"70px",display:"flex",flexDirection:"column",marginRight:"6px"}),mt=et("div")({textAlign:"right",height:"20px",pointerEvents:"none",userSelect:"none","&:not(:last-child)":{marginBottom:"80px"}});class yt extends Qe.Component{constructor(e){super(e),yt.prototype.__init.call(this),yt.prototype.__init2.call(this),yt.prototype.__init3.call(this),yt.prototype.__init4.call(this),yt.prototype.__init5.call(this),yt.prototype.__init6.call(this),this.state={titleHeight:0},this.resizeObserver=null}static __initStatic(){this.propTypes={title:tt.string,children:Ae,defineChart:tt.bool,disabledLabels:tt.bool,disabledTitle:tt.bool,graphProps:Me.isRequired,isChart:tt.bool,labels:tt.object,labelsPlaceholders:tt.object,onChangeTitle:tt.func,onMouseMove:tt.func,showLabels:tt.bool,showTitle:tt.bool,showPixelGuides:tt.bool,rootRef:tt.func,onChangeLabels:tt.func,titlePlaceholder:tt.string,mathMlOptions:tt.object,labelsCharactersLimit:tt.number}}__init(){this.mouseMove=(e,t)=>{const{graphProps:n,onMouseMove:r}=this.props;if(!r)return;const{scale:o,snap:i}=n,a=_e(t,e.node()),s=o.x.invert(a[0]),l=o.y.invert(a[1]);r({x:i.x(s),y:i.y(l)})}}componentDidMount(){const e=Se(this.g);e.on("mousemove",this.mouseMove.bind(this,e)),this.measureTitleHeight(),this.setupVisibilityObserver()}componentWillUnmount(){Se(this.g).on("mousemove",null),this.cleanupVisibilityObserver()}componentDidUpdate(e){e.title!==this.props.title&&this.measureTitleHeight()}__init2(){this.onChangeLabel=(e,t)=>{const{labels:n,onChangeLabels:r,isChart:o}=this.props;r&&(o?r("left"===t?"range":"domain",e):r({...n,[t]:e}))}}__init3(){this.measureTitleHeight=()=>{const e=this.titleRef;if(e){const t=e.clientHeight;this.setState({titleHeight:t,prevTitle:this.props.title}),this.resizeObserver||"undefined"==typeof ResizeObserver||this.setupVisibilityObserver()}}}__init4(){this.handleKeyDown=()=>{setTimeout(()=>{this.measureTitleHeight()},0)}}__init5(){this.setupVisibilityObserver=()=>{"undefined"!=typeof ResizeObserver&&this.titleRef&&(this.resizeObserver=new ResizeObserver(e=>{for(let t of e){const{width:e,height:n}=t.contentRect;if(e>0&&n>0){setTimeout(()=>{this.measureTitleHeight()},10);break}}}),this.resizeObserver.observe(this.titleRef))}}__init6(){this.cleanupVisibilityObserver=()=>{this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)}}render(){const{disabledTitle:e,disabledLabels:t,labels:n,labelsPlaceholders:r,titlePlaceholder:o,graphProps:i,children:a,defineChart:s,onChangeTitle:l,isChart:c,showLabels:u,showPixelGuides:p,showTitle:h,title:d,rootRef:f,mathMlOptions:g={},labelsCharactersLimit:m}=this.props,{size:{width:y=500,height:b=500},domain:v,range:x}=i,w=We(He(it([n,"optionalAccess",e=>e.left])))&&qe(r)?48:70,S=y+w+(We(He(it([n,"optionalAccess",e=>e.right])))&&qe(r)?48:70)+2*(v.padding||0),_=b+80+2*(x.padding||0),k=["bold","italic","underline","superscript","subscript","strikethrough","math"],C=s&&p?b-160:b,E=parseInt(y/100),O=parseInt(C/100),P=parseInt(C%100),{titleHeight:T}=this.state;return Qe.createElement(at,null,p&&Qe.createElement(dt,{style:{marginLeft:c?80:u?30:10}},[...Array(E+1).keys()].map(e=>Qe.createElement(rt,{false:!0,key:`top-guide-${e}`},Qe.createElement(ft,null,Qe.createElement("div",null,100*e,"px"),Qe.createElement("div",null,"|"))))),h&&(e?Qe.createElement("div",{ref:e=>this.titleRef=e,style:{...c&&{width:S},...We(He(d))&&{display:"none"}}},c?Qe.createElement(ht,{className:"disabled",dangerouslySetInnerHTML:{__html:d||""}}):Qe.createElement(pt,{className:"disabled",dangerouslySetInnerHTML:{__html:d||""}})):Qe.createElement("div",{ref:e=>this.titleRef=e},c?Qe.createElement(ht,{className:p?"rightMargin":""},Qe.createElement(ot,{style:c&&{width:S},markup:d||"",onChange:l,placeholder:s&&o||!e&&"Click here to add a title for this graph",toolbarOpts:{noPadding:!0,noBorder:!0},activePlugins:k,disableScrollbar:!0,onKeyDown:this.handleKeyDown})):Qe.createElement(pt,{className:p?"rightMargin":""},Qe.createElement(ot,{style:c&&{width:S},markup:d||"",onChange:l,placeholder:s&&o||!e&&"Click here to add a title for this graph",toolbarOpts:{noPadding:!0,noBorder:!0},activePlugins:k,disableScrollbar:!0,onKeyDown:this.handleKeyDown})))),u&&!c&&Qe.createElement(Ze,{side:"top",text:n.top,disabledLabel:t,placeholder:it([r,"optionalAccess",e=>e.top]),graphHeight:_,graphWidth:S,onChange:e=>this.onChangeLabel(e,"top"),mathMlOptions:g,charactersLimit:m}),Qe.createElement(st,null,u&&Qe.createElement(Ze,{side:"left",text:n.left,disabledLabel:t,placeholder:it([r,"optionalAccess",e=>e.left]),graphHeight:_,graphWidth:S,isChartLeftLabel:c&&!s,isDefineChartLeftLabel:c&&s,onChange:e=>this.onChangeLabel(e,"left"),mathMlOptions:g,charactersLimit:m}),s?Qe.createElement(lt,{width:S,height:_},Qe.createElement(ut,{ref:e=>{this.g=e,f&&f(e)},transform:`translate(${w+(v.padding||0)}, ${40+(x.padding||0)})`},a)):Qe.createElement(ct,{width:S,height:_},Qe.createElement(ut,{ref:e=>{this.g=e,f&&f(e)},transform:`translate(${w+(v.padding||0)}, ${40+(x.padding||0)})`},a)),u&&!c&&Qe.createElement(Ze,{side:"right",text:n.right,disabledLabel:t,placeholder:it([r,"optionalAccess",e=>e.right]),graphHeight:_,graphWidth:S,onChange:e=>this.onChangeLabel(e,"right"),mathMlOptions:g,charactersLimit:m}),p&&Qe.createElement(gt,{style:{paddingTop:P,marginTop:31}},[...Array(O+1).keys()].reverse().map(e=>Qe.createElement(rt,{false:!0,key:`top-guide-${e}`},Qe.createElement(mt,null,"━ ",100*e,"px"))))),u&&Qe.createElement(Ze,{side:"bottom",text:n.bottom,disabledLabel:t,placeholder:it([r,"optionalAccess",e=>e.bottom]),graphHeight:_,graphWidth:S,titleHeight:T,isChartBottomLabel:c&&!s,isDefineChartBottomLabel:c&&s,onChange:e=>this.onChangeLabel(e,"bottom"),mathMlOptions:g,charactersLimit:m}))}}yt.__initStatic();var bt={exports:{}};bt.exports=function(e,t){function n(e,t){return e(t={exports:{}},t.exports),t.exports}function r(e){return function(){return e}}e=e&&e.hasOwnProperty("default")?e.default:e,t=t&&t.hasOwnProperty("default")?t.default:t;var o=function(){};o.thatReturns=r,o.thatReturnsFalse=r(!1),o.thatReturnsTrue=r(!0),o.thatReturnsNull=r(null),o.thatReturnsThis=function(){return this},o.thatReturnsArgument=function(e){return e};var i=o,a=function(e){};a=function(e){if(void 0===e)throw new Error("invariant requires an error message argument")};var s,l=function(e,t,n,r,o,i,s,l){if(a(t),!e){var c;if(void 0===t)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[n,r,o,i,s,l],p=0;(c=new Error(t.replace(/%s/g,function(){return u[p++]}))).name="Invariant Violation"}throw c.framesToPop=1,c}},c=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var o=0,i="Warning: "+e.replace(/%s/g,function(){return n[o++]});"undefined"!=typeof console&&console.error(i);try{throw new Error(i)}catch(e){}};s=function(e,t){if(void 0===t)throw new Error("`warning(condition, format, ...args)` requires a warning message argument");if(0!==t.indexOf("Failed Composite propType: ")&&!e){for(var n=arguments.length,r=Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];c.apply(void 0,[t].concat(r))}};var u=s,p=Object.getOwnPropertySymbols,h=Object.prototype.hasOwnProperty,d=Object.prototype.propertyIsEnumerable;var f=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;var r=Object.getOwnPropertyNames(t).map(function(e){return t[e]});if("0123456789"!==r.join(""))return!1;var o={};return"abcdefghijklmnopqrst".split("").forEach(function(e){o[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},o)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,r,o=function(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),i=1;i<arguments.length;i++){for(var a in n=Object(arguments[i]))h.call(n,a)&&(o[a]=n[a]);if(p){r=p(n);for(var s=0;s<r.length;s++)d.call(n,r[s])&&(o[r[s]]=n[r[s]])}}return o},g="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",m=l,y=u,b=g,v={};var x=function(e,t,n,r,o){for(var i in e)if(e.hasOwnProperty(i)){var a;try{m("function"==typeof e[i],"%s: %s type `%s` is invalid; it must be a function, usually from the `prop-types` package, but received `%s`.",r||"React class",n,i,typeof e[i]),a=e[i](t,i,r,n,null,b)}catch(e){a=e}if(y(!a||a instanceof Error,"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",r||"React class",n,i,typeof a),a instanceof Error&&!(a.message in v)){v[a.message]=!0;var s=o?o():"";y(!1,"Failed %s type: %s%s",n,a.message,null!=s?s:"")}}},w=function(e,t){var n="function"==typeof Symbol&&Symbol.iterator;function r(e){var t=e&&(n&&e[n]||e["@@iterator"]);if("function"==typeof t)return t}var o="<<anonymous>>",a={array:h("array"),bool:h("boolean"),func:h("function"),number:h("number"),object:h("object"),string:h("string"),symbol:h("symbol"),any:p(i.thatReturnsNull),arrayOf:function(e){return p(function(t,n,r,o,i){if("function"!=typeof e)return new c("Property `"+i+"` of component `"+r+"` has invalid PropType notation inside arrayOf.");var a=t[n];if(!Array.isArray(a))return new c("Invalid "+o+" `"+i+"` of type `"+m(a)+"` supplied to `"+r+"`, expected an array.");for(var s=0;s<a.length;s++){var l=e(a,s,r,o,i+"["+s+"]",g);if(l instanceof Error)return l}return null})},element:p(function(t,n,r,o,i){var a=t[n];return e(a)?null:new c("Invalid "+o+" `"+i+"` of type `"+m(a)+"` supplied to `"+r+"`, expected a single ReactElement.")}),instanceOf:function(e){return p(function(t,n,r,i,a){if(!(t[n]instanceof e)){var s=e.name||o;return new c("Invalid "+i+" `"+a+"` of type `"+function(e){return e.constructor&&e.constructor.name?e.constructor.name:o}(t[n])+"` supplied to `"+r+"`, expected instance of `"+s+"`.")}return null})},node:p(function(e,t,n,r,o){return d(e[t])?null:new c("Invalid "+r+" `"+o+"` supplied to `"+n+"`, expected a ReactNode.")}),objectOf:function(e){return p(function(t,n,r,o,i){if("function"!=typeof e)return new c("Property `"+i+"` of component `"+r+"` has invalid PropType notation inside objectOf.");var a=t[n],s=m(a);if("object"!==s)return new c("Invalid "+o+" `"+i+"` of type `"+s+"` supplied to `"+r+"`, expected an object.");for(var l in a)if(a.hasOwnProperty(l)){var u=e(a,l,r,o,i+"."+l,g);if(u instanceof Error)return u}return null})},oneOf:function(e){if(!Array.isArray(e))return u(!1,"Invalid argument supplied to oneOf, expected an instance of array."),i.thatReturnsNull;return p(function(t,n,r,o,i){for(var a=t[n],l=0;l<e.length;l++)if(s(a,e[l]))return null;return new c("Invalid "+o+" `"+i+"` of value `"+a+"` supplied to `"+r+"`, expected one of "+JSON.stringify(e)+".")})},oneOfType:function(e){if(!Array.isArray(e))return u(!1,"Invalid argument supplied to oneOfType, expected an instance of array."),i.thatReturnsNull;for(var t=0;t<e.length;t++){var n=e[t];if("function"!=typeof n)return u(!1,"Invalid argument supplied to oneOfType. Expected an array of check functions, but received %s at index %s.",b(n),t),i.thatReturnsNull}return p(function(t,n,r,o,i){for(var a=0;a<e.length;a++)if(null==(0,e[a])(t,n,r,o,i,g))return null;return new c("Invalid "+o+" `"+i+"` supplied to `"+r+"`.")})},shape:function(e){return p(function(t,n,r,o,i){var a=t[n],s=m(a);if("object"!==s)return new c("Invalid "+o+" `"+i+"` of type `"+s+"` supplied to `"+r+"`, expected `object`.");for(var l in e){var u=e[l];if(u){var p=u(a,l,r,o,i+"."+l,g);if(p)return p}}return null})},exact:function(e){return p(function(t,n,r,o,i){var a=t[n],s=m(a);if("object"!==s)return new c("Invalid "+o+" `"+i+"` of type `"+s+"` supplied to `"+r+"`, expected `object`.");var l=f({},t[n],e);for(var u in l){var p=e[u];if(!p)return new c("Invalid "+o+" `"+i+"` key `"+u+"` supplied to `"+r+"`.\nBad object: "+JSON.stringify(t[n],null," ")+"\nValid keys: "+JSON.stringify(Object.keys(e),null," "));var h=p(a,u,r,o,i+"."+u,g);if(h)return h}return null})}};function s(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function c(e){this.message=e,this.stack=""}function p(e){var n={},r=0;function i(i,a,s,p,h,d,f){if(p=p||o,d=d||s,f!==g)if(t)l(!1,"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");else if("undefined"!=typeof console){var m=p+":"+s;!n[m]&&r<3&&(u(!1,"You are manually calling a React.PropTypes validation function for the `%s` prop on `%s`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details.",d,p),n[m]=!0,r++)}return null==a[s]?i?null===a[s]?new c("The "+h+" `"+d+"` is marked as required in `"+p+"`, but its value is `null`."):new c("The "+h+" `"+d+"` is marked as required in `"+p+"`, but its value is `undefined`."):null:e(a,s,p,h,d)}var a=i.bind(null,!1);return a.isRequired=i.bind(null,!0),a}function h(e){return p(function(t,n,r,o,i,a){var s=t[n];return m(s)!==e?new c("Invalid "+o+" `"+i+"` of type `"+y(s)+"` supplied to `"+r+"`, expected `"+e+"`."):null})}function d(t){switch(typeof t){case"number":case"string":case"undefined":return!0;case"boolean":return!t;case"object":if(Array.isArray(t))return t.every(d);if(null===t||e(t))return!0;var n=r(t);if(!n)return!1;var o,i=n.call(t);if(n!==t.entries){for(;!(o=i.next()).done;)if(!d(o.value))return!1}else for(;!(o=i.next()).done;){var a=o.value;if(a&&!d(a[1]))return!1}return!0;default:return!1}}function m(e){var t=typeof e;return Array.isArray(e)?"array":e instanceof RegExp?"object":function(e,t){return"symbol"===e||"Symbol"===t["@@toStringTag"]||"function"==typeof Symbol&&t instanceof Symbol}(t,e)?"symbol":t}function y(e){if(null==e)return""+e;var t=m(e);if("object"===t){if(e instanceof Date)return"date";if(e instanceof RegExp)return"regexp"}return t}function b(e){var t=y(e);switch(t){case"array":case"object":return"an "+t;case"boolean":case"date":case"regexp":return"a "+t;default:return t}}return c.prototype=Error.prototype,a.checkPropTypes=x,a.PropTypes=a,a},S=n(function(e){var t="function"==typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103;e.exports=w(function(e){return"object"==typeof e&&null!==e&&e.$$typeof===t},!0)}),_=n(function(e){!function(){var t={}.hasOwnProperty;function n(){for(var e=[],r=0;r<arguments.length;r++){var o=arguments[r];if(o){var i=typeof o;if("string"===i||"number"===i)e.push(o);else if(Array.isArray(o))e.push(n.apply(null,o));else if("object"===i)for(var a in o)t.call(o,a)&&o[a]&&e.push(a)}}return e.join(" ")}e.exports?e.exports=n:window.classNames=n}()});function k(e,t){for(var n=0,r=e.length;n<r;n++)if(t.apply(t,[e[n],n,e]))return e[n]}function C(e){return"function"==typeof e||"[object Function]"===Object.prototype.toString.call(e)}function E(e){return"number"==typeof e&&!isNaN(e)}function O(e){return parseInt(e,10)}function P(e,t,n){if(e[t])return new Error("Invalid prop "+t+" passed to "+n+" - do not set this, set it on the child.")}var T=["Moz","Webkit","O","ms"];function A(e,t){return t?""+t+function(e){for(var t="",n=!0,r=0;r<e.length;r++)n?(t+=e[r].toUpperCase(),n=!1):"-"===e[r]?n=!0:t+=e[r];return t}(e):e}var L=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"transform";if("undefined"==typeof window||void 0===window.document)return"";var t=window.document.documentElement.style;if(e in t)return"";for(var n=0;n<T.length;n++)if(A(e,T[n])in t)return T[n];return""}(),N=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},M=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),R=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e},D=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},j=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)},$=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t},I=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=e[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(o)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},F="";function V(e,t){return F||(F=k(["matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector"],function(t){return C(e[t])})),!!C(e[F])&&e[F](t)}function B(e,t,n){var r=e;do{if(V(r,t))return!0;if(r===n)return!1;r=r.parentNode}while(r);return!1}function z(e,t,n){e&&(e.attachEvent?e.attachEvent("on"+t,n):e.addEventListener?e.addEventListener(t,n,!0):e["on"+t]=n)}function H(e,t,n){e&&(e.detachEvent?e.detachEvent("on"+t,n):e.removeEventListener?e.removeEventListener(t,n,!0):e["on"+t]=null)}function q(e){var t=e.clientHeight,n=e.ownerDocument.defaultView.getComputedStyle(e);return(t+=O(n.borderTopWidth))+O(n.borderBottomWidth)}function W(e){var t=e.clientWidth,n=e.ownerDocument.defaultView.getComputedStyle(e);return(t+=O(n.borderLeftWidth))+O(n.borderRightWidth)}function U(e){var t=e.clientHeight,n=e.ownerDocument.defaultView.getComputedStyle(e);return(t-=O(n.paddingTop))-O(n.paddingBottom)}function G(e){var t=e.clientWidth,n=e.ownerDocument.defaultView.getComputedStyle(e);return(t-=O(n.paddingLeft))-O(n.paddingRight)}function Y(e,t,n){var r="translate("+e.x+n+","+e.y+n+")";return t&&(r="translate("+("string"==typeof t.x?t.x:t.x+n)+", "+("string"==typeof t.y?t.y:t.y+n)+")"+r),r}function K(e){if(e){var t=e.getElementById("react-draggable-style-el");t||((t=e.createElement("style")).type="text/css",t.id="react-draggable-style-el",t.innerHTML=".react-draggable-transparent-selection *::-moz-selection {all: inherit;}\n",t.innerHTML+=".react-draggable-transparent-selection *::selection {all: inherit;}\n",e.getElementsByTagName("head")[0].appendChild(t)),e.body&&function(e,t){e.classList?e.classList.add(t):e.className.match(new RegExp("(?:^|\\s)"+t+"(?!\\S)"))||(e.className+=" "+t)}(e.body,"react-draggable-transparent-selection")}}function X(e){try{e&&e.body&&function(e,t){e.classList?e.classList.remove(t):e.className=e.className.replace(new RegExp("(?:^|\\s)"+t+"(?!\\S)","g"),"")}(e.body,"react-draggable-transparent-selection"),e.selection?e.selection.empty():window.getSelection().removeAllRanges()}catch(e){}}function J(){return D({touchAction:"none"},arguments.length>0&&void 0!==arguments[0]?arguments[0]:{})}function Z(e){return"both"===e.props.axis||"x"===e.props.axis}function Q(e){return"both"===e.props.axis||"y"===e.props.axis}function ee(e,t,n){var r="number"==typeof t?function(e,t){return e.targetTouches&&k(e.targetTouches,function(e){return t===e.identifier})||e.changedTouches&&k(e.changedTouches,function(e){return t===e.identifier})}(e,t):null;if("number"==typeof t&&!r)return null;var o=re(n);return function(e,t){var n=t===t.ownerDocument.body?{left:0,top:0}:t.getBoundingClientRect();return{x:e.clientX+t.scrollLeft-n.left,y:e.clientY+t.scrollTop-n.top}}(r||e,n.props.offsetParent||o.offsetParent||o.ownerDocument.body)}function te(e,t,n){var r=e.state,o=!E(r.lastX),i=re(e);return o?{node:i,deltaX:0,deltaY:0,lastX:t,lastY:n,x:t,y:n}:{node:i,deltaX:t-r.lastX,deltaY:n-r.lastY,lastX:r.lastX,lastY:r.lastY,x:t,y:n}}function ne(e,t){var n=e.props.scale;return{node:t.node,x:e.state.x+t.deltaX/n,y:e.state.y+t.deltaY/n,deltaX:t.deltaX/n,deltaY:t.deltaY/n,lastX:e.state.x,lastY:e.state.y}}function re(t){var n=e.findDOMNode(t);if(!n)throw new Error("<DraggableCore>: Unmounted during event!");return n}var oe={start:"touchstart",move:"touchmove",stop:"touchend"},ie={start:"mousedown",move:"mousemove",stop:"mouseup"},ae=ie,se=function(n){function r(){var t,n,o;N(this,r);for(var i=arguments.length,a=Array(i),s=0;s<i;s++)a[s]=arguments[s];return n=o=$(this,(t=r.__proto__||Object.getPrototypeOf(r)).call.apply(t,[this].concat(a))),o.state={dragging:!1,lastX:NaN,lastY:NaN,touchIdentifier:null},o.handleDragStart=function(t){if(o.props.onMouseDown(t),!o.props.allowAnyClick&&"number"==typeof t.button&&0!==t.button)return!1;var n=e.findDOMNode(o);if(!n||!n.ownerDocument||!n.ownerDocument.body)throw new Error("<DraggableCore> not mounted on DragStart!");var r=n.ownerDocument;if(!(o.props.disabled||!(t.target instanceof r.defaultView.Node)||o.props.handle&&!B(t.target,o.props.handle,n)||o.props.cancel&&B(t.target,o.props.cancel,n))){var i=function(e){return e.targetTouches&&e.targetTouches[0]?e.targetTouches[0].identifier:e.changedTouches&&e.changedTouches[0]?e.changedTouches[0].identifier:void 0}(t);o.setState({touchIdentifier:i});var a=ee(t,i,o);if(null!=a){var s=a.x,l=a.y,c=te(o,s,l);o.props.onStart,!1!==o.props.onStart(t,c)&&(o.props.enableUserSelectHack&&K(r),o.setState({dragging:!0,lastX:s,lastY:l}),z(r,ae.move,o.handleDrag),z(r,ae.stop,o.handleDragStop))}}},o.handleDrag=function(e){"touchmove"===e.type&&e.preventDefault();var t=ee(e,o.state.touchIdentifier,o);if(null!=t){var n=t.x,r=t.y;if(Array.isArray(o.props.grid)){var i=n-o.state.lastX,a=r-o.state.lastY,s=function(e,t,n){return[Math.round(t/e[0])*e[0],Math.round(n/e[1])*e[1]]}(o.props.grid,i,a),l=I(s,2);if(i=l[0],a=l[1],!i&&!a)return;n=o.state.lastX+i,r=o.state.lastY+a}var c=te(o,n,r);if(!1!==o.props.onDrag(e,c))o.setState({lastX:n,lastY:r});else try{o.handleDragStop(new MouseEvent("mouseup"))}catch(e){var u=document.createEvent("MouseEvents");u.initMouseEvent("mouseup",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),o.handleDragStop(u)}}},o.handleDragStop=function(t){if(o.state.dragging){var n=ee(t,o.state.touchIdentifier,o);if(null!=n){var r=n.x,i=n.y,a=te(o,r,i),s=e.findDOMNode(o);s&&o.props.enableUserSelectHack&&X(s.ownerDocument),o.setState({dragging:!1,lastX:NaN,lastY:NaN}),o.props.onStop(t,a),s&&(H(s.ownerDocument,ae.move,o.handleDrag),H(s.ownerDocument,ae.stop,o.handleDragStop))}}},o.onMouseDown=function(e){return ae=ie,o.handleDragStart(e)},o.onMouseUp=function(e){return ae=ie,o.handleDragStop(e)},o.onTouchStart=function(e){return ae=oe,o.handleDragStart(e)},o.onTouchEnd=function(e){return ae=oe,o.handleDragStop(e)},$(o,n)}return j(r,n),M(r,[{key:"componentWillUnmount",value:function(){var t=e.findDOMNode(this);if(t){var n=t.ownerDocument;H(n,ie.move,this.handleDrag),H(n,oe.move,this.handleDrag),H(n,ie.stop,this.handleDragStop),H(n,oe.stop,this.handleDragStop),this.props.enableUserSelectHack&&X(n)}}},{key:"render",value:function(){return t.cloneElement(t.Children.only(this.props.children),{style:J(this.props.children.props.style),onMouseDown:this.onMouseDown,onTouchStart:this.onTouchStart,onMouseUp:this.onMouseUp,onTouchEnd:this.onTouchEnd})}}]),r}(t.Component);se.displayName="DraggableCore",se.propTypes={allowAnyClick:S.bool,disabled:S.bool,enableUserSelectHack:S.bool,offsetParent:function(e,t){if(e[t]&&1!==e[t].nodeType)throw new Error("Draggable's offsetParent must be a DOM Node.")},grid:S.arrayOf(S.number),scale:S.number,handle:S.string,cancel:S.string,onStart:S.func,onDrag:S.func,onStop:S.func,onMouseDown:S.func,className:P,style:P,transform:P},se.defaultProps={allowAnyClick:!1,cancel:null,disabled:!1,enableUserSelectHack:!0,offsetParent:null,handle:null,grid:null,transform:null,onStart:function(){},onDrag:function(){},onStop:function(){},onMouseDown:function(){}};var le=function(n){function r(e){N(this,r);var t=$(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e));return t.onDragStart=function(e,n){if(!1===t.props.onStart(e,ne(t,n)))return!1;t.setState({dragging:!0,dragged:!0})},t.onDrag=function(e,n){if(!t.state.dragging)return!1;var r=ne(t,n),o={x:r.x,y:r.y};if(t.props.bounds){var i=o.x,a=o.y;o.x+=t.state.slackX,o.y+=t.state.slackY;var s=function(e,t,n){if(!e.props.bounds)return[t,n];var r=e.props.bounds;r="string"==typeof r?r:function(e){return{left:e.left,top:e.top,right:e.right,bottom:e.bottom}}(r);var o=re(e);if("string"==typeof r){var i,a=o.ownerDocument,s=a.defaultView;if(!((i="parent"===r?o.parentNode:a.querySelector(r))instanceof s.HTMLElement))throw new Error('Bounds selector "'+r+'" could not find an element.');var l=s.getComputedStyle(o),c=s.getComputedStyle(i);r={left:-o.offsetLeft+O(c.paddingLeft)+O(l.marginLeft),top:-o.offsetTop+O(c.paddingTop)+O(l.marginTop),right:G(i)-W(o)-o.offsetLeft+O(c.paddingRight)-O(l.marginRight),bottom:U(i)-q(o)-o.offsetTop+O(c.paddingBottom)-O(l.marginBottom)}}return E(r.right)&&(t=Math.min(t,r.right)),E(r.bottom)&&(n=Math.min(n,r.bottom)),E(r.left)&&(t=Math.max(t,r.left)),E(r.top)&&(n=Math.max(n,r.top)),[t,n]}(t,o.x,o.y),l=I(s,2),c=l[0],u=l[1];o.x=c,o.y=u,o.slackX=t.state.slackX+(i-o.x),o.slackY=t.state.slackY+(a-o.y),r.x=o.x,r.y=o.y,r.deltaX=o.x-t.state.x,r.deltaY=o.y-t.state.y}if(!1===t.props.onDrag(e,r))return!1;t.setState(o)},t.onDragStop=function(e,n){if(!t.state.dragging)return!1;if(!1===t.props.onStop(e,ne(t,n)))return!1;var r={dragging:!1,slackX:0,slackY:0};if(Boolean(t.props.position)){var o=t.props.position,i=o.x,a=o.y;r.x=i,r.y=a}t.setState(r)},t.state={dragging:!1,dragged:!1,x:e.position?e.position.x:e.defaultPosition.x,y:e.position?e.position.y:e.defaultPosition.y,slackX:0,slackY:0,isElementSVG:!1},!e.position||e.onDrag||e.onStop||console.warn("A `position` was applied to this <Draggable>, without drag handlers. This will make this component effectively undraggable. Please attach `onDrag` or `onStop` handlers so you can adjust the `position` of this element."),t}return j(r,n),M(r,[{key:"componentDidMount",value:function(){void 0!==window.SVGElement&&e.findDOMNode(this)instanceof window.SVGElement&&this.setState({isElementSVG:!0})}},{key:"componentWillReceiveProps",value:function(e){!e.position||this.props.position&&e.position.x===this.props.position.x&&e.position.y===this.props.position.y||this.setState({x:e.position.x,y:e.position.y})}},{key:"componentWillUnmount",value:function(){this.setState({dragging:!1})}},{key:"render",value:function(){var e,n={},r=null,o=!Boolean(this.props.position)||this.state.dragging,i=this.props.position||this.props.defaultPosition,a={x:Z(this)&&o?this.state.x:i.x,y:Q(this)&&o?this.state.y:i.y};this.state.isElementSVG?r=function(e,t){return Y(e,t,"")}(a,this.props.positionOffset):n=function(e,t){var n=Y(e,t,"px");return R({},A("transform",L),n)}(a,this.props.positionOffset);var s=this.props,l=s.defaultClassName,c=s.defaultClassNameDragging,u=s.defaultClassNameDragged,p=t.Children.only(this.props.children),h=_(p.props.className||"",l,(R(e={},c,this.state.dragging),R(e,u,this.state.dragged),e));return t.createElement(se,D({},this.props,{onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop}),t.cloneElement(p,{className:h,style:D({},p.props.style,n),transform:r}))}}]),r}(t.Component);return le.displayName="Draggable",le.propTypes=D({},se.propTypes,{axis:S.oneOf(["both","x","y","none"]),bounds:S.oneOfType([S.shape({left:S.number,right:S.number,top:S.number,bottom:S.number}),S.string,S.oneOf([!1])]),defaultClassName:S.string,defaultClassNameDragging:S.string,defaultClassNameDragged:S.string,defaultPosition:S.shape({x:S.number,y:S.number}),positionOffset:S.shape({x:S.oneOfType([S.number,S.string]),y:S.oneOfType([S.number,S.string])}),position:S.shape({x:S.number,y:S.number}),className:P,style:P,transform:P}),le.defaultProps=D({},se.defaultProps,{axis:"both",bounds:!1,defaultClassName:"react-draggable",defaultClassNameDragging:"react-draggable-dragging",defaultClassNameDragged:"react-draggable-dragged",defaultPosition:{x:0,y:0},position:null,scale:1}),le.default=le,le.DraggableCore=se,le}(e,r);const vt=r,xt=t,wt=a,{isFunction:St}=n;var _t;const kt=wt("pie-lib:plot:grid-draggable"),Ct=(e,t,n)=>r=>{const o=r+e(0),i=e.invert(o);return 1e3*t(n+i).toFixed(4)/1e3},Et=e=>t=>(Re(!!e&&St(e.fromDelta)&&St(e.bounds)&&St(e.anchorPoint),"You must supply an object with: { anchorPoint: Function, fromDelta: Function, bounds: Function }"),_t=class extends vt.Component{static __initStatic(){this.propTypes={disabled:xt.bool,onDragStart:xt.func,onDrag:xt.func,onDragStop:xt.func,onClick:xt.func,onMove:xt.func,graphProps:Me.isRequired}}constructor(e){super(e),_t.prototype.__init.call(this),_t.prototype.__init2.call(this),_t.prototype.__init3.call(this),_t.prototype.__init4.call(this),_t.prototype.__init5.call(this),_t.prototype.__init6.call(this),_t.prototype.__init7.call(this),_t.prototype.__init8.call(this),_t.prototype.__init9.call(this),_t.prototype.__init10.call(this),_t.prototype.__init11.call(this),this.state={startX:null,startY:null}}__init(){this.grid=()=>{const{graphProps:e}=this.props,{scale:t,domain:n,range:r}=e;return{x:t.x(n.step)-t.x(0),y:t.y(r.step)-t.y(0)}}}__init2(){this.onStart=e=>{const{onDragStart:t}=this.props;document.activeElement&&document.activeElement.blur(),this.setState({startX:e.clientX,startY:e.clientY}),t&&t()}}__init3(){this.position=()=>{const{x:t,y:n}=e.anchorPoint(this.props),{graphProps:r}=this.props,{scale:o,snap:i}=r;return{anchorPoint:{x:t,y:n},x:Ct(o.x,i.x,t),y:Ct(o.y,i.y,n)}}}__init4(){this.tiny=(e,t)=>{const n=e.toUpperCase(),r=t[`client${n}`],o=this.state[`start${n}`],i=Math.abs(r-o),a=i<Math.abs(this.grid()[e])/10;return kt("[tiny] key: ",e,"delta: ",i,"out: ",a),a}}__init5(){this.getScaledBounds=()=>{const t=e.bounds(this.props,this.props.graphProps);kt("bounds: ",t);const n=this.grid(),r={left:t.left*n.x,right:t.right*n.x,top:t.top*n.y,bottom:t.bottom*n.y};return kt("[getScaledBounds]: ",r),r}}__init6(){this.getClientPoint=(e,t)=>{if(!e||!t)return null;const n=e.ownerSVGElement||e;if(n&&n.createSVGPoint){let r=n.createSVGPoint();if(t.touches&&t.touches.length>0){const e=t.touches[0];r.x=e.clientX,r.y=e.clientY}else r.x=t.clientX,r.y=t.clientY;return e.getScreenCTM?(r=r.matrixTransform(e.getScreenCTM().inverse()),[r.x,r.y]):null}const r=e.getBoundingClientRect();return r?[t.clientX-r.left-e.clientLeft,t.clientY-r.top-e.clientTop]:null}}__init7(){this.skipDragOutsideOfBounds=(e,t,n)=>{const r=n.getRootNode(),o=this.getClientPoint(r,t);if(null===o)return!0;const[i,a]=o,{scale:s,domain:l,range:c}=n;let u=s.x.invert(i),p=s.y.invert(a);const h=e.deltaX>0&&u<l.min||e.deltaX<0&&u>l.max,d=e.deltaY>0&&p>c.max||e.deltaY<0&&p<c.min;return h||d}}__init8(){this.onDrag=(e,t)=>{const{onDrag:n,graphProps:r}=this.props;if(!n)return;const o=this.getScaledBounds();if(t.deltaX<0&&t.deltaX<o.left)return;if(t.deltaX>0&&t.deltaX>o.right)return;if(t.deltaY<0&&t.deltaY<o.top)return;if(t.deltaY>0&&t.deltaY>o.bottom)return;if(this.skipDragOutsideOfBounds(t,e,r))return;const i=this.applyDelta({x:t.deltaX,y:t.deltaY});void 0===i&&null===i||n(i)}}__init9(){this.getDelta=e=>{const t=this.position(),n={x:t.x(e.x),y:t.y(e.y)};return r=t.anchorPoint,ze(n).sub(ze(r));var r}}__init10(){this.applyDelta=t=>{const n=this.getDelta(t);return kt("[applyDelta] delta:",n),e.fromDelta(this.props,n)}}__init11(){this.onStop=(e,t)=>{kt("[onStop] dd:",t);const{onDragStop:n,onClick:r}=this.props;if(n&&n(),kt("[onStop] lastX/Y: ",t.lastX,t.lastY),this.tiny("x",e)&&this.tiny("y",e)&&r){kt("call onClick"),this.setState({startX:null});const{graphProps:t}=this.props,{scale:n,snap:o}=t,[i,a]=_e(e,e.target);let s=n.x.invert(i),l=n.y.invert(a);return s=o.x(s),l=o.y(l),r({x:s,y:l}),!1}return this.setState({startX:null,startY:null}),!1}}render(){const{disabled:n,...r}=this.props,o=this.grid(),i=!!this.state&&!!this.state.startX;return vt.createElement(bt.exports.DraggableCore,{disabled:n,onMouseDown:e=>e.nativeEvent.preventDefault(),onStart:this.onStart,onDrag:this.onDrag,onStop:this.onStop,axis:e.axis||"both",grid:[o.x,o.y]},vt.createElement(t,{...r,disabled:n,isDragging:i}))}},_t.__initStatic(),_t),Ot=a("pie-lib:plot:trig"),Pt=e=>e*(180/Math.PI),Tt=(e,t)=>{const n=t.y-e.y,r=t.x-e.x;Ot(e,t,"vd: ",n,"hd: ",r);const o=Math.atan2(n,r);return o<0?o+2*Math.PI:o},At=(e,t)=>Math.abs(e/Math.sin(t)),Lt=(e,t)=>(Ot("[getOpposingSide] hyp: ",e,"angle:",t),Math.abs(e*Math.sin(t))),Nt=(e,t,n)=>{let r=Ot.enabled?Ot.bind(Ot,`diffEdge: [${t.x},${t.y} -> ${n.x},${n.y}]`):()=>{};const o=Tt(t,n);r("x angle",Pt(o));const i=Math.abs(o-Math.PI/180*90);r("y angle",Pt(i));const a=Math.abs(t.x-e.x),s=At(a,i),l=Math.abs(t.y-e.y),c=At(l,o);r("x: side",a,"h:",s),r("y: side",l,"h:",c);const u=(p=s,h=c,Number.isFinite(p)&&Number.isFinite(h)?0===p&&h>0?"y":0===h&&p>0||p<h?"x":"y":isNaN(p)&&!isNaN(h)?"y":!isNaN(p)&&isNaN(h)?"x":p===1/0?"y":h===1/0?"x":void console.warn("hypotenuse - which is shorter? x:",p,"y:",h));var p,h;if("x"!==u&&"y"!==u)throw new Error("Cant decide which hypotenuse to use");const d="x"===u?new De(a,Lt(s,o)):new De(Lt(c,i),l);r("point:",d);const f=new De(n.x<t.x?-1:1,n.y<t.y?-1:1);r("multiplier:",f);const g=d.multByPoint(f);r("out:",g);const m=g.add(new De(t.x,t.y));return r("normalized:",m),m};function Mt(e,t){return null==e||null==t?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function Rt(e,t){return null==e||null==t?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function Dt(e){let t,n,r;function o(e,r,o=0,i=e.length){if(o<i){if(0!==t(r,r))return i;do{const t=o+i>>>1;n(e[t],r)<0?o=t+1:i=t}while(o<i)}return o}return 2!==e.length?(t=Mt,n=(t,n)=>Mt(e(t),n),r=(t,n)=>e(t)-n):(t=e===Mt||e===Rt?e:jt,n=e,r=e),{left:o,center:function(e,t,n=0,i=e.length){const a=o(e,t,n,i-1);return a>n&&r(e[a-1],t)>-r(e[a],t)?a-1:a},right:function(e,r,o=0,i=e.length){if(o<i){if(0!==t(r,r))return i;do{const t=o+i>>>1;n(e[t],r)<=0?o=t+1:i=t}while(o<i)}return o}}}function jt(){return 0}const $t=Dt(Mt).right;Dt(function(e){return null===e?NaN:+e}).center;var It=$t;const Ft=Math.sqrt(50),Vt=Math.sqrt(10),Bt=Math.sqrt(2);function zt(e,t,n){const r=(t-e)/Math.max(0,n),o=Math.floor(Math.log10(r)),i=r/Math.pow(10,o),a=i>=Ft?10:i>=Vt?5:i>=Bt?2:1;let s,l,c;return o<0?(c=Math.pow(10,-o)/a,s=Math.round(e*c),l=Math.round(t*c),s/c<e&&++s,l/c>t&&--l,c=-c):(c=Math.pow(10,o)*a,s=Math.round(e/c),l=Math.round(t/c),s*c<e&&++s,l*c>t&&--l),l<s&&.5<=n&&n<2?zt(e,t,2*n):[s,l,c]}function Ht(e,t,n){return zt(e=+e,t=+t,n=+n)[2]}function qt(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e)}return this}function Wt(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function Ut(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function Gt(){}var Yt=.7,Kt=1/Yt,Xt="\\s*([+-]?\\d+)\\s*",Jt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Zt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Qt=/^#([0-9a-f]{3,8})$/,en=new RegExp(`^rgb\\(${Xt},${Xt},${Xt}\\)$`),tn=new RegExp(`^rgb\\(${Zt},${Zt},${Zt}\\)$`),nn=new RegExp(`^rgba\\(${Xt},${Xt},${Xt},${Jt}\\)$`),rn=new RegExp(`^rgba\\(${Zt},${Zt},${Zt},${Jt}\\)$`),on=new RegExp(`^hsl\\(${Jt},${Zt},${Zt}\\)$`),an=new RegExp(`^hsla\\(${Jt},${Zt},${Zt},${Jt}\\)$`),sn={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function ln(){return this.rgb().formatHex()}function cn(){return this.rgb().formatRgb()}function un(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=Qt.exec(e))?(n=t[1].length,t=parseInt(t[1],16),6===n?pn(t):3===n?new fn(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===n?hn(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===n?hn(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=en.exec(e))?new fn(t[1],t[2],t[3],1):(t=tn.exec(e))?new fn(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=nn.exec(e))?hn(t[1],t[2],t[3],t[4]):(t=rn.exec(e))?hn(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=on.exec(e))?xn(t[1],t[2]/100,t[3]/100,1):(t=an.exec(e))?xn(t[1],t[2]/100,t[3]/100,t[4]):sn.hasOwnProperty(e)?pn(sn[e]):"transparent"===e?new fn(NaN,NaN,NaN,0):null}function pn(e){return new fn(e>>16&255,e>>8&255,255&e,1)}function hn(e,t,n,r){return r<=0&&(e=t=n=NaN),new fn(e,t,n,r)}function dn(e,t,n,r){return 1===arguments.length?((o=e)instanceof Gt||(o=un(o)),o?new fn((o=o.rgb()).r,o.g,o.b,o.opacity):new fn):new fn(e,t,n,null==r?1:r);var o}function fn(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}function gn(){return`#${vn(this.r)}${vn(this.g)}${vn(this.b)}`}function mn(){const e=yn(this.opacity);return`${1===e?"rgb(":"rgba("}${bn(this.r)}, ${bn(this.g)}, ${bn(this.b)}${1===e?")":`, ${e})`}`}function yn(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function bn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function vn(e){return((e=bn(e))<16?"0":"")+e.toString(16)}function xn(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new Sn(e,t,n,r)}function wn(e){if(e instanceof Sn)return new Sn(e.h,e.s,e.l,e.opacity);if(e instanceof Gt||(e=un(e)),!e)return new Sn;if(e instanceof Sn)return e;var t=(e=e.rgb()).r/255,n=e.g/255,r=e.b/255,o=Math.min(t,n,r),i=Math.max(t,n,r),a=NaN,s=i-o,l=(i+o)/2;return s?(a=t===i?(n-r)/s+6*(n<r):n===i?(r-t)/s+2:(t-n)/s+4,s/=l<.5?i+o:2-i-o,a*=60):s=l>0&&l<1?0:a,new Sn(a,s,l,e.opacity)}function Sn(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}function _n(e){return(e=(e||0)%360)<0?e+360:e}function kn(e){return Math.max(0,Math.min(1,e||0))}function Cn(e,t,n){return 255*(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)}Wt(Gt,un,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:ln,formatHex:ln,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return wn(this).formatHsl()},formatRgb:cn,toString:cn}),Wt(fn,dn,Ut(Gt,{brighter(e){return e=null==e?Kt:Math.pow(Kt,e),new fn(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?Yt:Math.pow(Yt,e),new fn(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new fn(bn(this.r),bn(this.g),bn(this.b),yn(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:gn,formatHex:gn,formatHex8:function(){return`#${vn(this.r)}${vn(this.g)}${vn(this.b)}${vn(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:mn,toString:mn})),Wt(Sn,function(e,t,n,r){return 1===arguments.length?wn(e):new Sn(e,t,n,null==r?1:r)},Ut(Gt,{brighter(e){return e=null==e?Kt:Math.pow(Kt,e),new Sn(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?Yt:Math.pow(Yt,e),new Sn(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,o=2*n-r;return new fn(Cn(e>=240?e-240:e+120,o,r),Cn(e,o,r),Cn(e<120?e+240:e-120,o,r),this.opacity)},clamp(){return new Sn(_n(this.h),kn(this.s),kn(this.l),yn(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 e=yn(this.opacity);return`${1===e?"hsl(":"hsla("}${_n(this.h)}, ${100*kn(this.s)}%, ${100*kn(this.l)}%${1===e?")":`, ${e})`}`}}));var En=e=>()=>e;function On(e,t){var n=t-e;return n?function(e,t){return function(n){return e+n*t}}(e,n):En(isNaN(e)?t:e)}var Pn=function e(t){var n=function(e){return 1===(e=+e)?On:function(t,n){return n-t?function(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}(t,n,e):En(isNaN(t)?n:t)}}(t);function r(e,t){var r=n((e=dn(e)).r,(t=dn(t)).r),o=n(e.g,t.g),i=n(e.b,t.b),a=On(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=o(t),e.b=i(t),e.opacity=a(t),e+""}}return r.gamma=e,r}(1);function Tn(e,t){t||(t=[]);var n,r=e?Math.min(t.length,e.length):0,o=t.slice();return function(i){for(n=0;n<r;++n)o[n]=e[n]*(1-i)+t[n]*i;return o}}function An(e,t){var n,r=t?t.length:0,o=e?Math.min(r,e.length):0,i=new Array(o),a=new Array(r);for(n=0;n<o;++n)i[n]=$n(e[n],t[n]);for(;n<r;++n)a[n]=t[n];return function(e){for(n=0;n<o;++n)a[n]=i[n](e);return a}}function Ln(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function Nn(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function Mn(e,t){var n,r={},o={};for(n in null!==e&&"object"==typeof e||(e={}),null!==t&&"object"==typeof t||(t={}),t)n in e?r[n]=$n(e[n],t[n]):o[n]=t[n];return function(e){for(n in r)o[n]=r[n](e);return o}}var Rn=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Dn=new RegExp(Rn.source,"g");function jn(e,t){var n,r,o,i=Rn.lastIndex=Dn.lastIndex=0,a=-1,s=[],l=[];for(e+="",t+="";(n=Rn.exec(e))&&(r=Dn.exec(t));)(o=r.index)>i&&(o=t.slice(i,o),s[a]?s[a]+=o:s[++a]=o),(n=n[0])===(r=r[0])?s[a]?s[a]+=r:s[++a]=r:(s[++a]=null,l.push({i:a,x:Nn(n,r)})),i=Dn.lastIndex;return i<t.length&&(o=t.slice(i),s[a]?s[a]+=o:s[++a]=o),s.length<2?l[0]?function(e){return function(t){return e(t)+""}}(l[0].x):function(e){return function(){return e}}(t):(t=l.length,function(e){for(var n,r=0;r<t;++r)s[(n=l[r]).i]=n.x(e);return s.join("")})}function $n(e,t){var n,r=typeof t;return null==t||"boolean"===r?En(t):("number"===r?Nn:"string"===r?(n=un(t))?(t=n,Pn):jn:t instanceof un?Pn:t instanceof Date?Ln:function(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}(t)?Tn:Array.isArray(t)?An:"function"!=typeof t.valueOf&&"function"!=typeof t.toString||isNaN(t)?Mn:Nn)(e,t)}function In(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}function Fn(e){return+e}var Vn=[0,1];function Bn(e){return e}function zn(e,t){return(t-=e=+e)?function(n){return(n-e)/t}:function(e){return function(){return e}}(isNaN(t)?NaN:.5)}function Hn(e,t,n){var r=e[0],o=e[1],i=t[0],a=t[1];return o<r?(r=zn(o,r),i=n(a,i)):(r=zn(r,o),i=n(i,a)),function(e){return i(r(e))}}function qn(e,t,n){var r=Math.min(e.length,t.length)-1,o=new Array(r),i=new Array(r),a=-1;for(e[r]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++a<r;)o[a]=zn(e[a],e[a+1]),i[a]=n(t[a],t[a+1]);return function(t){var n=It(e,t,1,r)-1;return i[n](o[n](t))}}function Wn(e,t){if((n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"))<0)return null;var n,r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function Un(e){return(e=Wn(Math.abs(e)))?e[1]:NaN}var Gn,Yn=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Kn(e){if(!(t=Yn.exec(e)))throw new Error("invalid format: "+e);var t;return new Xn({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function Xn(e){this.fill=void 0===e.fill?" ":e.fill+"",this.align=void 0===e.align?">":e.align+"",this.sign=void 0===e.sign?"-":e.sign+"",this.symbol=void 0===e.symbol?"":e.symbol+"",this.zero=!!e.zero,this.width=void 0===e.width?void 0:+e.width,this.comma=!!e.comma,this.precision=void 0===e.precision?void 0:+e.precision,this.trim=!!e.trim,this.type=void 0===e.type?"":e.type+""}function Jn(e,t){var n=Wn(e,t);if(!n)return e+"";var r=n[0],o=n[1];return o<0?"0."+new Array(-o).join("0")+r:r.length>o+1?r.slice(0,o+1)+"."+r.slice(o+1):r+new Array(o-r.length+2).join("0")}Kn.prototype=Xn.prototype,Xn.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};var Zn={"%":(e,t)=>(100*e).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:function(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)},e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Jn(100*e,t),r:Jn,s:function(e,t){var n=Wn(e,t);if(!n)return e+"";var r=n[0],o=n[1],i=o-(Gn=3*Math.max(-8,Math.min(8,Math.floor(o/3))))+1,a=r.length;return i===a?r:i>a?r+new Array(i-a+1).join("0"):i>0?r.slice(0,i)+"."+r.slice(i):"0."+new Array(1-i).join("0")+Wn(e,Math.max(0,t+i-1))[0]},X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Qn(e){return e}var er,tr,nr,rr=Array.prototype.map,or=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function ir(e){var t=e.domain;return e.ticks=function(e){var n=t();return function(e,t,n){if(!((n=+n)>0))return[];if((e=+e)===(t=+t))return[e];const r=t<e,[o,i,a]=r?zt(t,e,n):zt(e,t,n);if(!(i>=o))return[];const s=i-o+1,l=new Array(s);if(r)if(a<0)for(let e=0;e<s;++e)l[e]=(i-e)/-a;else for(let e=0;e<s;++e)l[e]=(i-e)*a;else if(a<0)for(let e=0;e<s;++e)l[e]=(o+e)/-a;else for(let e=0;e<s;++e)l[e]=(o+e)*a;return l}(n[0],n[n.length-1],null==e?10:e)},e.tickFormat=function(e,n){var r=t();return function(e,t,n,r){var o,i=function(e,t,n){n=+n;const r=(t=+t)<(e=+e),o=r?Ht(t,e,n):Ht(e,t,n);return(r?-1:1)*(o<0?1/-o:o)}(e,t,n);switch((r=Kn(null==r?",f":r)).type){case"s":var a=Math.max(Math.abs(e),Math.abs(t));return null!=r.precision||isNaN(o=function(e,t){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(Un(t)/3)))-Un(Math.abs(e)))}(i,a))||(r.precision=o),nr(r,a);case"":case"e":case"g":case"p":case"r":null!=r.precision||isNaN(o=function(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Un(t)-Un(e))+1}(i,Math.max(Math.abs(e),Math.abs(t))))||(r.precision=o-("e"===r.type));break;case"f":case"%":null!=r.precision||isNaN(o=function(e){return Math.max(0,-Un(Math.abs(e)))}(i))||(r.precision=o-2*("%"===r.type))}return tr(r)}(r[0],r[r.length-1],null==e?10:e,n)},e.nice=function(n){null==n&&(n=10);var r,o,i=t(),a=0,s=i.length-1,l=i[a],c=i[s],u=10;for(c<l&&(o=l,l=c,c=o,o=a,a=s,s=o);u-- >0;){if((o=Ht(l,c,n))===r)return i[a]=l,i[s]=c,t(i);if(o>0)l=Math.floor(l/o)*o,c=Math.ceil(c/o)*o;else{if(!(o<0))break;l=Math.ceil(l*o)/o,c=Math.floor(c*o)/o}r=o}return e},e}function ar(){var e=function(){var e,t,n,r,o,i,a=Vn,s=Vn,l=$n,c=Bn;function u(){var e=Math.min(a.length,s.length);return c!==Bn&&(c=function(e,t){var n;return e>t&&(n=e,e=t,t=n),function(n){return Math.max(e,Math.min(t,n))}}(a[0],a[e-1])),r=e>2?qn:Hn,o=i=null,p}function p(t){return null==t||isNaN(t=+t)?n:(o||(o=r(a.map(e),s,l)))(e(c(t)))}return p.invert=function(n){return c(t((i||(i=r(s,a.map(e),Nn)))(n)))},p.domain=function(e){return arguments.length?(a=Array.from(e,Fn),u()):a.slice()},p.range=function(e){return arguments.length?(s=Array.from(e),u()):s.slice()},p.rangeRound=function(e){return s=Array.from(e),l=In,u()},p.clamp=function(e){return arguments.length?(c=!!e||Bn,u()):c!==Bn},p.interpolate=function(e){return arguments.length?(l=e,u()):l},p.unknown=function(e){return arguments.length?(n=e,p):n},function(n,r){return e=n,t=r,u()}}()(Bn,Bn);return e.copy=function(){return t=e,ar().domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp()).unknown(t.unknown());var t},qt.apply(e,arguments),ir(e)}er=function(e){var t,n,r=void 0===e.grouping||void 0===e.thousands?Qn:(t=rr.call(e.grouping,Number),n=e.thousands+"",function(e,r){for(var o=e.length,i=[],a=0,s=t[0],l=0;o>0&&s>0&&(l+s+1>r&&(s=Math.max(1,r-l)),i.push(e.substring(o-=s,o+s)),!((l+=s+1)>r));)s=t[a=(a+1)%t.length];return i.reverse().join(n)}),o=void 0===e.currency?"":e.currency[0]+"",i=void 0===e.currency?"":e.currency[1]+"",a=void 0===e.decimal?".":e.decimal+"",s=void 0===e.numerals?Qn:function(e){return function(t){return t.replace(/[0-9]/g,function(t){return e[+t]})}}(rr.call(e.numerals,String)),l=void 0===e.percent?"%":e.percent+"",c=void 0===e.minus?"−":e.minus+"",u=void 0===e.nan?"NaN":e.nan+"";function p(e){var t=(e=Kn(e)).fill,n=e.align,p=e.sign,h=e.symbol,d=e.zero,f=e.width,g=e.comma,m=e.precision,y=e.trim,b=e.type;"n"===b?(g=!0,b="g"):Zn[b]||(void 0===m&&(m=12),y=!0,b="g"),(d||"0"===t&&"="===n)&&(d=!0,t="0",n="=");var v="$"===h?o:"#"===h&&/[boxX]/.test(b)?"0"+b.toLowerCase():"",x="$"===h?i:/[%p]/.test(b)?l:"",w=Zn[b],S=/[defgprs%]/.test(b);function _(e){var o,i,l,h=v,_=x;if("c"===b)_=w(e)+_,e="";else{var k=(e=+e)<0||1/e<0;if(e=isNaN(e)?u:w(Math.abs(e),m),y&&(e=function(e){e:for(var t,n=e.length,r=1,o=-1;r<n;++r)switch(e[r]){case".":o=t=r;break;case"0":0===o&&(o=r),t=r;break;default:if(!+e[r])break e;o>0&&(o=0)}return o>0?e.slice(0,o)+e.slice(t+1):e}(e)),k&&0===+e&&"+"!==p&&(k=!1),h=(k?"("===p?p:c:"-"===p||"("===p?"":p)+h,_=("s"===b?or[8+Gn/3]:"")+_+(k&&"("===p?")":""),S)for(o=-1,i=e.length;++o<i;)if(48>(l=e.charCodeAt(o))||l>57){_=(46===l?a+e.slice(o+1):e.slice(o))+_,e=e.slice(0,o);break}}g&&!d&&(e=r(e,1/0));var C=h.length+e.length+_.length,E=C<f?new Array(f-C+1).join(t):"";switch(g&&d&&(e=r(E+e,E.length?f-_.length:1/0),E=""),n){case"<":e=h+e+_+E;break;case"=":e=h+E+e+_;break;case"^":e=E.slice(0,C=E.length>>1)+h+e+_+E.slice(C);break;default:e=E+h+e+_}return s(e)}return m=void 0===m?6:/[gprs]/.test(b)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m)),_.toString=function(){return e+""},_}return{format:p,formatPrefix:function(e,t){var n=p(((e=Kn(e)).type="f",e)),r=3*Math.max(-8,Math.min(8,Math.floor(Un(t)/3))),o=Math.pow(10,-r),i=or[8+r/3];return function(e){return n(o*e)+i}}}}({thousands:",",grouping:[3],currency:["$",""]}),tr=er.format,nr=er.formatPrefix;const sr=({min:e,max:t,step:n})=>({step:n,min:parseInt(e/n)*n,max:parseInt(t/n)*n}),lr=t,cr=r,ur=s;var pr=["top","left","transform","className","children","innerRef"];function hr(){return hr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},hr.apply(this,arguments)}function dr(e){var t=e.top,n=void 0===t?0:t,r=e.left,o=void 0===r?0:r,i=e.transform,a=e.className,s=e.children,l=e.innerRef,c=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,pr);return cr.createElement("g",hr({ref:l,className:ur("visx-group",a),transform:i||"translate("+o+", "+n+")"},c),s)}function fr(e){if(("function"==typeof e||"object"==typeof e&&e)&&"valueOf"in e){var t=e.valueOf();if("number"==typeof t)return t}return e}function gr(e,t){var n=e;return"ticks"in n?n.ticks(t):n.domain().filter(function(e,n,r){return null==t||r.length<=t||n%Math.round((r.length-1)/t)===0})}function mr(e){return null==e?void 0:e.toString()}dr.propTypes={top:lr.number,left:lr.number,transform:lr.string,className:lr.string,children:lr.node,innerRef:lr.oneOfType([lr.string,lr.func,lr.object])};const yr=r,br=s;var vr=["from","to","fill","className","innerRef"];function xr(){return xr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},xr.apply(this,arguments)}function wr(e){var t=e.from,n=void 0===t?{x:0,y:0}:t,r=e.to,o=void 0===r?{x:1,y:1}:r,i=e.fill,a=void 0===i?"transparent":i,s=e.className,l=e.innerRef,c=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,vr),u=n.x===o.x||n.y===o.y;return yr.createElement("line",xr({ref:l,className:br("visx-line",s),x1:n.x,y1:n.y,x2:o.x,y2:o.y,fill:a,shapeRendering:u?"crispEdges":"auto"},c))}var Sr=_r;function _r(e,t,n){e instanceof RegExp&&(e=kr(e,n)),t instanceof RegExp&&(t=kr(t,n));var r=Cr(e,t,n);return r&&{start:r[0],end:r[1],pre:n.slice(0,r[0]),body:n.slice(r[0]+e.length,r[1]),post:n.slice(r[1]+t.length)}}function kr(e,t){var n=t.match(e);return n?n[0]:null}function Cr(e,t,n){var r,o,i,a,s,l=n.indexOf(e),c=n.indexOf(t,l+1),u=l;if(l>=0&&c>0){for(r=[],i=n.length;u>=0&&!s;)u==l?(r.push(u),l=n.indexOf(e,u+1)):1==r.length?s=[r.pop(),c]:((o=r.pop())<i&&(i=o,a=c),c=n.indexOf(t,u+1)),u=l<c&&l>=0?l:c;r.length&&(s=[i,a])}return s}_r.range=Cr;var Er=Or;function Or(e,t,n){e instanceof RegExp&&(e=Pr(e,n)),t instanceof RegExp&&(t=Pr(t,n));var r=Tr(e,t,n);return r&&{start:r[0],end:r[1],pre:n.slice(0,r[0]),body:n.slice(r[0]+e.length,r[1]),post:n.slice(r[1]+t.length)}}function Pr(e,t){var n=t.match(e);return n?n[0]:null}function Tr(e,t,n){var r,o,i,a,s,l=n.indexOf(e),c=n.indexOf(t,l+1),u=l;if(l>=0&&c>0){if(e===t)return[l,c];for(r=[],i=n.length;u>=0&&!s;)u==l?(r.push(u),l=n.indexOf(e,u+1)):1==r.length?s=[r.pop(),c]:((o=r.pop())<i&&(i=o,a=c),c=n.indexOf(t,u+1)),u=l<c&&l>=0?l:c;r.length&&(s=[i,a])}return s}Or.range=Tr;var Ar=Er,Lr=function e(t,n,r){var o=t;return function(e,t){var n=[],r="string"==typeof t?new RegExp("\\b("+t+")\\("):t;do{var o=r.exec(e);if(!o)return n;if(void 0===o[1])throw new Error("Missing the first couple of parenthesis to get the function identifier in "+t);var i=o[1],a=o.index,s=Ar("(",")",e.substring(a));if(!s||s.start!==o[0].length-1)throw new SyntaxError(i+"(): missing closing ')' in the value '"+e+"'");n.push({matches:s,functionIdentifier:i}),e=s.post}while(r.test(e));return n}(t,n).reduce(function(t,i){return t.replace(i.functionIdentifier+"("+i.matches.body+")",function(t,n,r,o,i){return r(e(t,i,r),n,o)}(i.matches.body,i.functionIdentifier,r,o,n))},t)};var Nr=function(e){this.value=e};Nr.math={isDegree:!0,acos:function(e){return Nr.math.isDegree?180/Math.PI*Math.acos(e):Math.acos(e)},add:function(e,t){return e+t},asin:function(e){return Nr.math.isDegree?180/Math.PI*Math.asin(e):Math.asin(e)},atan:function(e){return Nr.math.isDegree?180/Math.PI*Math.atan(e):Math.atan(e)},acosh:function(e){return Math.log(e+Math.sqrt(e*e-1))},asinh:function(e){return Math.log(e+Math.sqrt(e*e+1))},atanh:function(e){return Math.log((1+e)/(1-e))},C:function(e,t){var n=1,r=e-t,o=t;o<r&&(o=r,r=t);for(var i=o+1;i<=e;i++)n*=i;return n/Nr.math.fact(r)},changeSign:function(e){return-e},cos:function(e){return Nr.math.isDegree&&(e=Nr.math.toRadian(e)),Math.cos(e)},cosh:function(e){return(Math.pow(Math.E,e)+Math.pow(Math.E,-1*e))/2},div:function(e,t){return e/t},fact:function(e){if(e%1!=0)return"NaN";for(var t=1,n=2;n<=e;n++)t*=n;return t},inverse:function(e){return 1/e},log:function(e){return Math.log(e)/Math.log(10)},mod:function(e,t){return e%t},mul:function(e,t){return e*t},P:function(e,t){for(var n=1,r=Math.floor(e)-Math.floor(t)+1;r<=Math.floor(e);r++)n*=r;return n},Pi:function(e,t,n){for(var r=1,o=e;o<=t;o++)r*=Number(n.postfixEval({n:o}));return r},pow10x:function(e){for(var t=1;e--;)t*=10;return t},sigma:function(e,t,n){for(var r=0,o=e;o<=t;o++)r+=Number(n.postfixEval({n:o}));return r},sin:function(e){return Nr.math.isDegree&&(e=Nr.math.toRadian(e)),Math.sin(e)},sinh:function(e){return(Math.pow(Math.E,e)-Math.pow(Math.E,-1*e))/2},sub:function(e,t){return e-t},tan:function(e){return Nr.math.isDegree&&(e=Nr.math.toRadian(e)),Math.tan(e)},tanh:function(e){return Nr.sinha(e)/Nr.cosha(e)},toRadian:function(e){return e*Math.PI/180},and:function(e,t){return e&t}},Nr.Exception=function(e){this.message=e};var Mr=Nr;function Rr(e,t){for(var n=0;n<e.length;n++)e[n]+=t;return e}for(var Dr=[{token:"sin",show:"sin",type:0,value:Mr.math.sin},{token:"cos",show:"cos",type:0,value:Mr.math.cos},{token:"tan",show:"tan",type:0,value:Mr.math.tan},{token:"pi",show:"π",type:3,value:"PI"},{token:"(",show:"(",type:4,value:"("},{token:")",show:")",type:5,value:")"},{token:"P",show:"P",type:10,value:Mr.math.P},{token:"C",show:"C",type:10,value:Mr.math.C},{token:" ",show:" ",type:14,value:" ".anchor},{token:"asin",show:"asin",type:0,value:Mr.math.asin},{token:"acos",show:"acos",type:0,value:Mr.math.acos},{token:"atan",show:"atan",type:0,value:Mr.math.atan},{token:"7",show:"7",type:1,value:"7"},{token:"8",show:"8",type:1,value:"8"},{token:"9",show:"9",type:1,value:"9"},{token:"int",show:"Int",type:0,value:Math.floor},{token:"cosh",show:"cosh",type:0,value:Mr.math.cosh},{token:"acosh",show:"acosh",type:0,value:Mr.math.acosh},{token:"ln",show:" ln",type:0,value:Math.log},{token:"^",show:"^",type:10,value:Math.pow},{token:"root",show:"root",type:0,value:Math.sqrt},{token:"4",show:"4",type:1,value:"4"},{token:"5",show:"5",type:1,value:"5"},{token:"6",show:"6",type:1,value:"6"},{token:"/",show:"÷",type:2,value:Mr.math.div},{token:"!",show:"!",type:7,value:Mr.math.fact},{token:"tanh",show:"tanh",type:0,value:Mr.math.tanh},{token:"atanh",show:"atanh",type:0,value:Mr.math.atanh},{token:"Mod",show:" Mod ",type:2,value:Mr.math.mod},{token:"1",show:"1",type:1,value:"1"},{token:"2",show:"2",type:1,value:"2"},{token:"3",show:"3",type:1,value:"3"},{token:"*",show:"×",type:2,value:Mr.math.mul},{token:"sinh",show:"sinh",type:0,value:Mr.math.sinh},{token:"asinh",show:"asinh",type:0,value:Mr.math.asinh},{token:"e",show:"e",type:3,value:"E"},{token:"log",show:" log",type:0,value:Mr.math.log},{token:"0",show:"0",type:1,value:"0"},{token:".",show:".",type:6,value:"."},{token:"+",show:"+",type:9,value:Mr.math.add},{token:"-",show:"-",type:9,value:Mr.math.sub},{token:",",show:",",type:11,value:","},{token:"Sigma",show:"Σ",type:12,value:Mr.math.sigma},{token:"n",show:"n",type:13,value:"n"},{token:"Pi",show:"Π",type:12,value:Mr.math.Pi},{token:"pow",show:"pow",type:8,value:Math.pow,numberOfArguments:2},{token:"&",show:"&",type:9,value:Mr.math.and}],jr={0:11,1:0,2:3,3:0,4:0,5:0,6:0,7:11,8:11,9:1,10:10,11:0,12:11,13:0,14:-1,15:11},$r=0;$r<Dr.length;$r++)Dr[$r].precedence=jr[Dr[$r].type];var Ir={0:!0,1:!0,3:!0,4:!0,6:!0,8:!0,9:!0,12:!0,13:!0,14:!0,15:!0},Fr={0:!0,1:!0,2:!0,3:!0,4:!0,5:!0,6:!0,7:!0,8:!0,9:!0,10:!0,11:!0,12:!0,13:!0,15:!0},Vr={0:!0,3:!0,4:!0,8:!0,12:!0,13:!0,15:!0},Br={},zr={0:!0,1:!0,3:!0,4:!0,6:!0,8:!0,12:!0,13:!0,15:!0},Hr={1:!0},qr=[[],["1","2","3","7","8","9","4","5","6","+","-","*","/","(",")","^","!","P","C","e","0",".",",","n"," ","&"],["pi","ln","Pi"],["sin","cos","tan","Del","int","Mod","log","pow"],["asin","acos","atan","cosh","root","tanh","sinh"],["acosh","atanh","asinh","Sigma"]];function Wr(e,t,n,r){for(var o=0;o<r;o++)if(e[n+o]!==t[o])return!1;return!0}function Ur(e,t){for(var n=0;n<t.length;n++)if(t[n].token===e)return n;return-1}Mr.tokenTypes={FUNCTION_WITH_ONE_ARG:0,NUMBER:1,BINARY_OPERATOR_HIGH_PRECENDENCE:2,CONSTANT:3,OPENING_PARENTHESIS:4,CLOSING_PARENTHESIS:5,DECIMAL:6,POSTFIX_FUNCTION_WITH_ONE_ARG:7,FUNCTION_WITH_N_ARGS:8,BINARY_OPERATOR_LOW_PRECENDENCE:9,BINARY_OPERATOR_PERMUTATION:10,COMMA:11,EVALUATED_FUNCTION:12,EVALUATED_FUNCTION_PARAMETER:13,SPACE:14},Mr.addToken=function(e){for(var t=0;t<e.length;t++){var n=e[t].token.length,r=-1;e[t].type===Mr.tokenTypes.FUNCTION_WITH_N_ARGS&&void 0===e[t].numberOfArguments&&(e[t].numberOfArguments=2),qr[n]=qr[n]||[];for(var o=0;o<qr[n].length;o++)if(e[t].token===qr[n][o]){r=Ur(qr[n][o],Dr);break}-1===r?(Dr.push(e[t]),e[t].precedence=jr[e[t].type],qr.length<=e[t].token.length&&(qr[e[t].token.length]=[]),qr[e[t].token.length].push(e[t].token)):(Dr[r]=e[t],e[t].precedence=jr[e[t].type])}};var Gr={value:Mr.math.changeSign,type:0,pre:21,show:"-"},Yr={value:")",show:")",type:5,pre:0},Kr={value:"(",type:4,pre:0,show:"("};Mr.lex=function(e,t){var n,r=[Kr],o=[],i=e,a=Ir,s=0,l=Br,c="";void 0!==t&&Mr.addToken(t);var u={},p=function(e){for(var t,n,r,o=[],i=e.length,a=0;a<i;a++)if(!(a<i-1&&" "===e[a]&&" "===e[a+1])){for(t="",n=e.length-a>qr.length-2?qr.length-1:e.length-a;n>0;n--)if(void 0!==qr[n])for(r=0;r<qr[n].length;r++)Wr(e,qr[n][r],a,n)&&(t=qr[n][r],r=qr[n].length,n=0);if(a+=t.length-1,""===t)throw new Mr.Exception("Can't understand after "+e.slice(a));o.push(Dr[Ur(t,Dr)])}return o}(i);for(n=0;n<p.length;n++){var h=p[n];if(14!==h.type){var d,f=h.token,g=h.type,m=h.value,y=h.precedence,b=h.show,v=r[r.length-1];for(d=o.length;d--&&0===o[d];)if(-1!==[0,2,3,4,5,9,11,12,13].indexOf(g)){if(!0!==a[g])throw new Mr.Exception(f+" is not allowed after "+c);r.push(Yr),a=Fr,l=zr,o.pop()}if(!0!==a[g])throw new Mr.Exception(f+" is not allowed after "+c);if(!0===l[g]&&(g=2,m=Mr.math.mul,b="×",y=3,n-=1),u={value:m,type:g,pre:y,show:b,numberOfArguments:h.numberOfArguments},0===g)a=Ir,l=Br,Rr(o,2),r.push(u),4!==p[n+1].type&&(r.push(Kr),o.push(2));else if(1===g)1===v.type?(v.value+=m,Rr(o,1)):r.push(u),a=Fr,l=Vr;else if(2===g)a=Ir,l=Br,Rr(o,2),r.push(u);else if(3===g)r.push(u),a=Fr,l=zr;else if(4===g)Rr(o,1),s++,a=Ir,l=Br,r.push(u);else if(5===g){if(!s)throw new Mr.Exception("Closing parenthesis are more than opening one, wait What!!!");s--,a=Fr,l=zr,r.push(u),Rr(o,1)}else if(6===g){if(v.hasDec)throw new Mr.Exception("Two decimals are not allowed in one number");1!==v.type&&(v={value:0,type:1,pre:0},r.push(v)),a=Hr,Rr(o,1),l=Br,v.value+=m,v.hasDec=!0}else 7===g&&(a=Fr,l=zr,Rr(o,1),r.push(u));8===g?(a=Ir,l=Br,Rr(o,h.numberOfArguments+2),r.push(u),4!==p[n+1].type&&(r.push(Kr),o.push(h.numberOfArguments+2))):9===g?(9===v.type?v.value===Mr.math.add?(v.value=m,v.show=b,Rr(o,1)):v.value===Mr.math.sub&&"-"===b&&(v.value=Mr.math.add,v.show="+",Rr(o,1)):5!==v.type&&7!==v.type&&1!==v.type&&3!==v.type&&13!==v.type?"-"===f&&(a=Ir,l=Br,Rr(o,2).push(2),r.push(Gr),r.push(Kr)):(r.push(u),Rr(o,2)),a=Ir,l=Br):10===g?(a=Ir,l=Br,Rr(o,2),r.push(u)):11===g?(a=Ir,l=Br,r.push(u)):12===g?(a=Ir,l=Br,Rr(o,6),r.push(u),4!==p[n+1].type&&(r.push(Kr),o.push(6))):13===g&&(a=Fr,l=zr,r.push(u)),Rr(o,-1),c=f}else if(n>0&&n<p.length-1&&1===p[n+1].type&&(1===p[n-1].type||6===p[n-1].type))throw new Mr.Exception("Unexpected Space")}for(d=o.length;d--;)r.push(Yr);if(!0!==a[5])throw new Mr.Exception("complete the expression");for(;s--;)r.push(Yr);return r.push(Yr),new Mr(r)};var Xr=Mr;Xr.prototype.toPostfix=function(){for(var e,t,n,r,o,i=[],a=[{value:"(",type:4,pre:0}],s=this.value,l=1;l<s.length;l++)if(1===s[l].type||3===s[l].type||13===s[l].type)1===s[l].type&&(s[l].value=Number(s[l].value)),i.push(s[l]);else if(4===s[l].type)a.push(s[l]);else if(5===s[l].type)for(;4!==(t=a.pop()).type;)i.push(t);else if(11===s[l].type){for(;4!==(t=a.pop()).type;)i.push(t);a.push(t)}else{r=(e=s[l]).pre,n=(o=a[a.length-1]).pre;var c="Math.pow"==o.value&&"Math.pow"==e.value;if(r>n)a.push(e);else{for(;n>=r&&!c||c&&r<n;)t=a.pop(),o=a[a.length-1],i.push(t),n=o.pre,c="Math.pow"==e.value&&"Math.pow"==o.value;a.push(e)}}return new Xr(i)};var Jr=Xr;Jr.prototype.postfixEval=function(e){(e=e||{}).PI=Math.PI,e.E=Math.E;for(var t,n,r,o=[],i=this.value,a=void 0!==e.n,s=0;s<i.length;s++)if(1===i[s].type)o.push({value:i[s].value,type:1});else if(3===i[s].type)o.push({value:e[i[s].value],type:1});else if(0===i[s].type)void 0===o[o.length-1].type?o[o.length-1].value.push(i[s]):o[o.length-1].value=i[s].value(o[o.length-1].value);else if(7===i[s].type)void 0===o[o.length-1].type?o[o.length-1].value.push(i[s]):o[o.length-1].value=i[s].value(o[o.length-1].value);else if(8===i[s].type){for(var l=[],c=0;c<i[s].numberOfArguments;c++)l.push(o.pop().value);o.push({type:1,value:i[s].value.apply(i[s],l.reverse())})}else 10===i[s].type?(t=o.pop(),void 0===(n=o.pop()).type?(n.value=n.concat(t),n.value.push(i[s]),o.push(n)):void 0===t.type?(t.unshift(n),t.push(i[s]),o.push(t)):o.push({type:1,value:i[s].value(n.value,t.value)})):2===i[s].type||9===i[s].type?(t=o.pop(),void 0===(n=o.pop()).type?((n=n.concat(t)).push(i[s]),o.push(n)):void 0===t.type?(t.unshift(n),t.push(i[s]),o.push(t)):o.push({type:1,value:i[s].value(n.value,t.value)})):12===i[s].type?(void 0!==(t=o.pop()).type&&(t=[t]),n=o.pop(),r=o.pop(),o.push({type:1,value:i[s].value(r.value,n.value,new Jr(t))})):13===i[s].type&&(a?o.push({value:e[i[s].value],type:3}):o.push([i[s]]));if(o.length>1)throw new Jr.Exception("Uncaught Syntax error");return o[0].value>1e15?"Infinity":parseFloat(o[0].value.toFixed(15))},Jr.eval=function(e,t,n){return void 0===t?this.lex(e).toPostfix().postfixEval():void 0===n?void 0!==t.length?this.lex(e,t).toPostfix().postfixEval():this.lex(e).toPostfix().postfixEval(t):this.lex(e,t).toPostfix().postfixEval(n)};var Zr=Jr;Zr.prototype.formulaEval=function(){for(var e,t,n,r=[],o=this.value,i=0;i<o.length;i++)1===o[i].type||3===o[i].type?r.push({value:3===o[i].type?o[i].show:o[i].value,type:1}):13===o[i].type?r.push({value:o[i].show,type:1}):0===o[i].type?r[r.length-1]={value:o[i].show+("-"!=o[i].show?"(":"")+r[r.length-1].value+("-"!=o[i].show?")":""),type:0}:7===o[i].type?r[r.length-1]={value:(1!=r[r.length-1].type?"(":"")+r[r.length-1].value+(1!=r[r.length-1].type?")":"")+o[i].show,type:7}:10===o[i].type?(e=r.pop(),t=r.pop(),"P"===o[i].show||"C"===o[i].show?r.push({value:"<sup>"+t.value+"</sup>"+o[i].show+"<sub>"+e.value+"</sub>",type:10}):r.push({value:(1!=t.type?"(":"")+t.value+(1!=t.type?")":"")+"<sup>"+e.value+"</sup>",type:1})):2===o[i].type||9===o[i].type?(e=r.pop(),t=r.pop(),r.push({value:(1!=t.type?"(":"")+t.value+(1!=t.type?")":"")+o[i].show+(1!=e.type?"(":"")+e.value+(1!=e.type?")":""),type:o[i].type})):12===o[i].type&&(e=r.pop(),t=r.pop(),n=r.pop(),r.push({value:o[i].show+"("+n.value+","+t.value+","+e.value+")",type:12}));return r[0].value};var Qr,eo=Sr,to=Lr,no=Zr,ro=/(\+|\-|\*|\\|[^a-z]|)(\s*)(\()/g,oo=function(e,t){return Qr=0,t=Math.pow(10,void 0===t?5:t),e=e.replace(/\n+/g," "),to(e,/((?:\-[a-z]+\-)?calc)\(/,function e(n,r,o){if(Qr++>100)throw Qr=0,new Error("Call stack overflow for "+o);if(""===n)throw new Error(r+"(): '"+o+"' must contain a non-whitespace string");n=function(t,n){for(var r,o="",i=t=t.replace(/((?:\-[a-z]+\-)?calc)/g,"");r=ro.exec(i);){r[0].index>0&&(o+=i.substring(0,r[0].index));var a=eo("(",")",i.substring([0].index));if(""===a.body)throw new Error("'"+t+"' must contain a non-whitespace string");var s=e(a.body,"",n);o+=a.pre+s,i=a.post}return o+i}(n,o);var i=function(e){for(var t=[],n=[],r=/[\.0-9]([%a-z]+)/gi,o=r.exec(e);o;)o&&o[1]&&(-1===n.indexOf(o[1].toLowerCase())&&(t.push(o[1]),n.push(o[1].toLowerCase())),o=r.exec(e));return t}(n);if(i.length>1||n.indexOf("var(")>-1)return r+"("+n+")";var a=i[0]||"";"%"===a&&(n=n.replace(/\b[0-9\.]+%/g,function(e){return.01*parseFloat(e.slice(0,-1))}));var s,l=n.replace(new RegExp(a,"gi"),"");try{s=no.eval(l)}catch(e){return r+"("+n+")"}return"%"===a&&(s*=100),(r.length||"%"===a)&&(s=Math.round(s*t)/t),s+a})};const{memoize:io}=n;var ao="__react_svg_text_measurement_id",so=io(function(e,t){try{var n=document.getElementById(ao);if(!n){var r=document.createElementNS("http://www.w3.org/2000/svg","svg");r.setAttribute("aria-hidden","true"),r.style.width="0",r.style.height="0",r.style.position="absolute",r.style.top="-100%",r.style.left="-100%",(n=document.createElementNS("http://www.w3.org/2000/svg","text")).setAttribute("id",ao),r.appendChild(n),document.body.appendChild(r)}return Object.assign(n.style,t),n.textContent=e,n.getComputedTextLength()}catch(e){return null}},function(e,t){return e+"_"+JSON.stringify(t)});const{useMemo:lo}=r;var co=["verticalAnchor","scaleToFit","angle","width","lineHeight","capHeight","children","style"];function uo(e){return"number"==typeof e}function po(e){return"number"==typeof e&&Number.isFinite(e)||"string"==typeof e}const ho=r;var fo=["dx","dy","textAnchor","innerRef","innerTextRef","verticalAnchor","angle","lineHeight","scaleToFit","capHeight","width"];function go(){return go=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},go.apply(this,arguments)}var mo={overflow:"visible"};function yo(e){var t=e.dx,n=void 0===t?0:t,r=e.dy,o=void 0===r?0:r,i=e.textAnchor,a=void 0===i?"start":i,s=e.innerRef,l=e.innerTextRef;e.verticalAnchor,e.angle;var c=e.lineHeight,u=void 0===c?"1em":c;e.scaleToFit,e.capHeight,e.width;var p=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,fo),h=p.x,d=void 0===h?0:h,f=p.fontSize,g=function(e){var t=e.verticalAnchor,n=void 0===t?"end":t,r=e.scaleToFit,o=void 0!==r&&r,i=e.angle,a=e.width,s=e.lineHeight,l=void 0===s?"1em":s,c=e.capHeight,u=void 0===c?"0.71em":c,p=e.children,h=e.style,d=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,co),f=d.x,g=void 0===f?0:f,m=d.y,y=void 0===m?0:m,b=!po(g)||!po(y),v=lo(function(){return{wordsWithWidth:(null==p?[]:p.toString().split(/(?:(?!\u00A0+)\s+)/)).map(function(e){return{word:e,wordWidth:so(e,h)||0}}),spaceWidth:so(" ",h)||0}},[p,h]),x=v.wordsWithWidth,w=v.spaceWidth,S=lo(function(){return b?[]:a||o?x.reduce(function(e,t){var n=t.word,r=t.wordWidth,i=e[e.length-1];if(i&&(null==a||o||(i.width||0)+r+w<a))i.words.push(n),i.width=i.width||0,i.width+=r+w;else{var s={words:[n],width:r};e.push(s)}return e},[]):[{words:null==p?[]:p.toString().split(/(?:(?!\u00A0+)\s+)/)}]},[b,a,o,p,x,w]),_=lo(function(){return b?"":oo("start"===n?"calc("+u+")":"middle"===n?"calc("+(S.length-1)/2+" * -"+l+" + ("+u+" / 2))":"calc("+(S.length-1)+" * -"+l+")")},[b,n,u,S.length,l]),k=lo(function(){var e=[];if(b)return"";if(uo(g)&&uo(y)&&uo(a)&&o&&S.length>0){var t=S[0].width||1,n="shrink-only"===o?Math.min(a/t,1):a/t,r=n,s=g-n*g,l=y-r*y;e.push("matrix("+n+", 0, 0, "+r+", "+s+", "+l+")")}return i&&e.push("rotate("+i+", "+g+", "+y+")"),e.length>0?e.join(" "):""},[b,g,y,a,o,S,i]);return{wordsByLines:S,startDy:_,transform:k}}(e),m=g.wordsByLines,y=g.startDy,b=g.transform;return ho.createElement("svg",{ref:s,x:n,y:o,fontSize:f,style:mo},m.length>0?ho.createElement("text",go({ref:l,transform:b},p,{textAnchor:a}),m.map(function(e,t){return ho.createElement("tspan",{key:t,x:d,dy:0===t?y:u},e.words.join(" "))})):null)}var bo="top",vo="left",xo="bottom";const wo=r,So=s;function _o(){return _o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},_o.apply(this,arguments)}function ko(e){var t=e.hideTicks,n=e.horizontal,r=e.orientation,o=e.tickClassName,i=e.tickComponent,a=e.tickLabelProps,s=e.tickStroke,l=void 0===s?"#222":s,c=e.tickTransform,u=e.ticks,p=e.strokeWidth,h=e.tickLineProps;return u.map(function(e){var s,u=e.value,d=e.index,f=e.from,g=e.to,m=e.formattedValue,y=null!=(s=a[d])?s:{},b=Math.max(10,"number"==typeof y.fontSize&&y.fontSize||0),v=g.y+(n&&r!==bo?b:0);return wo.createElement(dr,{key:"visx-tick-"+u+"-"+d,className:So("visx-axis-tick",o),transform:c},!t&&wo.createElement(wr,_o({from:f,to:g,stroke:l,strokeWidth:p,strokeLinecap:"square"},h)),i?i(_o({},y,{x:g.x,y:v,formattedValue:m})):wo.createElement(yo,_o({x:g.x,y:v},y),m))})}const Co=r,Eo=s;function Oo(){return Oo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Oo.apply(this,arguments)}var Po={textAnchor:"middle",fontFamily:"Arial",fontSize:10,fill:"#222"};function To(e){var t=e.axisFromPoint,n=e.axisLineClassName,r=e.axisToPoint,o=e.hideAxisLine,i=e.hideTicks,a=e.horizontal,s=e.label,l=void 0===s?"":s,c=e.labelClassName,u=e.labelOffset,p=void 0===u?14:u,h=e.labelProps,d=e.orientation,f=void 0===d?xo:d,g=e.scale,m=e.stroke,y=void 0===m?"#222":m,b=e.strokeDasharray,v=e.strokeWidth,x=void 0===v?1:v,w=e.tickClassName,S=e.tickComponent,_=e.tickLineProps,k=e.tickLabelProps,C=e.tickLength,E=void 0===C?8:C,O=e.tickStroke,P=void 0===O?"#222":O,T=e.tickTransform,A=e.ticks,L=e.ticksComponent,N=void 0===L?ko:L,M=Oo({},Po,h),R=Oo({},Po,"object"==typeof k?k:null),D=A.map(function(e){var t=e.value,n=e.index;return"function"==typeof k?k(t,n,A):R}),j=Math.max.apply(Math,[10].concat(D.map(function(e){return"number"==typeof e.fontSize?e.fontSize:0})));return Co.createElement(Co.Fragment,null,N({hideTicks:i,horizontal:a,orientation:f,scale:g,tickClassName:w,tickComponent:S,tickLabelProps:D,tickStroke:P,tickTransform:T,ticks:A,strokeWidth:x,tickLineProps:_}),!o&&Co.createElement(wr,{className:Eo("visx-axis-line",n),from:t,to:r,stroke:y,strokeWidth:x,strokeDasharray:b}),l&&Co.createElement(yo,Oo({className:Eo("visx-axis-label",c)},function(e){var t,n,r,o=e.labelOffset,i=e.labelProps,a=e.orientation,s=e.range,l=e.tickLabelFontSize,c=e.tickLength,u=a===vo||a===bo?-1:1;if(a===bo||a===xo){var p=a===xo&&"number"==typeof i.fontSize?i.fontSize:0;t=(Number(s[0])+Number(s[s.length-1]))/2,n=u*(c+o+l+p)}else t=u*((Number(s[0])+Number(s[s.length-1]))/2),n=-(c+o),r="rotate("+90*u+")";return{x:t,y:n,transform:r}}({labelOffset:p,labelProps:M,orientation:f,range:g.range(),tickLabelFontSize:j,tickLength:E}),M),l))}var Ao=function(){function e(e){var t=e.x,n=void 0===t?0:t,r=e.y,o=void 0===r?0:r;this.x=0,this.y=0,this.x=n,this.y=o}var t=e.prototype;return t.value=function(){return{x:this.x,y:this.y}},t.toArray=function(){return[this.x,this.y]},e}();function Lo(e,t){var n=e.x,r=e.y;return new Ao(t?{x:n,y:r}:{x:r,y:n})}function No(){return No=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},No.apply(this,arguments)}const Mo=r,Ro=s;var Do=["children","axisClassName","hideAxisLine","hideTicks","hideZero","innerRef","left","numTicks","orientation","rangePadding","scale","tickFormat","tickLength","tickValues","top"];function jo(){return jo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jo.apply(this,arguments)}function $o(e){var t,n=e.children,r=void 0===n?To:n,o=e.axisClassName,i=e.hideAxisLine,a=void 0!==i&&i,s=e.hideTicks,l=void 0!==s&&s,c=e.hideZero,u=void 0!==c&&c,p=e.innerRef,h=e.left,d=void 0===h?0:h,f=e.numTicks,g=void 0===f?10:f,m=e.orientation,y=void 0===m?xo:m,b=e.rangePadding,v=void 0===b?0:b,x=e.scale,w=e.tickFormat,S=e.tickLength,_=void 0===S?8:S,k=e.tickValues,C=e.top,E=void 0===C?0:C,O=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,Do),P=null!=w?w:function(e){return"tickFormat"in e?e.tickFormat():mr}(x),T=y===vo,A=y===bo,L=A||y===xo,N=function(e,t){void 0===t&&(t="center");var n=e;if("start"!==t&&"bandwidth"in n){var r=n.bandwidth();return"center"===t&&(r/=2),n.round()&&(r=Math.round(r)),function(e){var t=n(e);return"number"==typeof t?t+r:t}}return e}(x),M=T||A?-1:1,R=x.range(),D=(void 0===(t=v)&&(t=0),"number"==typeof t?{start:t,end:t}:No({start:0,end:0},t)),j=Lo({x:Number(R[0])+.5-D.start,y:0},L),$=Lo({x:Number(R[R.length-1])+.5+D.end,y:0},L),I=(null!=k?k:gr(x,g)).filter(function(e){return!u||0!==e&&"0"!==e}).map(function(e,t){return{value:e,index:t}}),F=I.map(function(e){var t=e.value,n=e.index,r=fr(N(t));return{value:t,index:n,from:Lo({x:r,y:0},L),to:Lo({x:r,y:_*M},L),formattedValue:P(t,n,I)}});return Mo.createElement(dr,{className:Ro("visx-axis",o),innerRef:p,top:E,left:d},r(jo({},O,{axisFromPoint:j,axisToPoint:$,hideAxisLine:a,hideTicks:l,hideZero:u,horizontal:L,numTicks:g,orientation:y,rangePadding:v,scale:x,tickFormat:P,tickLength:_,tickPosition:N,tickSign:M,ticks:F})))}const Io=r,Fo=t,{styled:Vo}=i,Bo=Vo("path")(({theme:e})=>({fill:`var(--arrow-color, ${e.palette.common.black})`}));class zo extends Io.Component{render(){const{x:e,y:t,className:n,scale:r}=this.props;let o=this.props.direction||"left";const i=r.x(e),a=r.y(t);let s="";const l=(e,t,n)=>`translate(${e}, ${t}) rotate(${n})`;return"left"===o&&(s=l(i-15,a,0)),"right"===o&&(s=l(i+15,a,180)),"up"===o&&(s=l(i,a-15,90)),"down"===o&&(s=l(i,a+15,270)),Io.createElement(Bo,{d:"m 0,0 8,-5 0,10 -8,-5",transform:s,className:n})}}zo.propTypes={y:Fo.number,x:Fo.number,direction:Fo.oneOf(["left","right","up","down"]),className:Fo.string,scale:Le.isRequired},zo.defaultProps={y:0,x:0,direction:"left"};const{head:Ho}=n,{tail:qo}=n,{isEqual:Wo}=n,{isEmpty:Uo}=n,{cloneDeep:Go}=n,Yo=Be,Ko=ze,Xo=()=>0,Jo=e=>{const t=[];let n=0;for(;n>=e.min&&t.indexOf(n)<0;)t.push(n),n=Math.round(1e4*(n-e.step))/1e4;for(n=Math.round(1e4*e.step)/1e4;n<=e.max&&t.indexOf(n)<0;)t.push(n),n=Math.round(1e4*(n+e.step))/1e4;return t?t.filter(t=>t>=e.min&&t<=e.max):[]},Zo=e=>e?10*e:0,Qo=e=>{const t=Go(e);return t.sort((e,t)=>t.x-e.x),{a:t[0],b:t[1]}},ei=(e,t)=>({x:(e.x+t.x)/2,y:(e.y+t.y)/2}),ti=e=>parseFloat(e.toFixed(4)),ni=(e,t)=>e&&t&&Wo({x:ti(e.x),y:ti(e.y)},{x:ti(t.x),y:ti(t.y)}),ri=(e,t)=>{const{min:n,max:r,step:o}=e;return t/((r-n)/o)},oi=e=>{const{domain:t,range:n,size:{width:r,height:o}}=e;return ri(t,r)<14||ri(n,o)<14},ii=e=>(e||[]).sort((e,t)=>e.x-t.x||e.y-t.y),ai=(e,t,n)=>(e.x-t.x)*(n.y-t.y)===(n.x-t.x)*(e.y-t.y),si=(e,t,n)=>{const{type:r,building:o}=e;if(o)return!1;const i=(t||[]).filter(e=>e.type===r&&!e.building),a=i.findIndex(e=>Wo(e,n));-1!==a&&i.splice(a,1);const s=i.find(t=>{if("line"===r){const{from:i,to:a}=e;return ni(i,t.from)&&ni(a,t.to)||ni(i,t.to)&&ni(a,t.from)||"line"===r&&(o=e,ai((n=t).from,o.from,o.to)&&ai(n.to,o.from,o.to))}if("polygon"===r)return Wo(ii(Go(e.points)),ii(Go(t.points)));var n,o});return!!s},li=r,ci=t,{styled:ui}=i,{color:pi}=o,{Readable:hi}=o,di={includeArrows:ci.object,graphProps:ci.object},fi={includeArrows:{left:!0,right:!0,up:!0,down:!0}},gi=ui("g")(()=>({"& .visx-axis-line":{stroke:"#8a92c0",strokeWidth:4},"& .visx-axis-tick":{fill:pi.defaults.BLACK,"& > line":{stroke:"#8a92c0"}}})),mi=ui("div")(({theme:e})=>({fontSize:e.typography.fontSize})),yi=ui("div")(({theme:e})=>({padding:0,margin:0,textAlign:"center","* > *":{margin:0,padding:0},fontSize:e.typography.fontSize})),bi=ui(zo)({fill:"#8a92c0"}),vi={fontFamily:"Roboto",fontSize:"14px",cursor:"inherit"},xi=e=>(e||[]).find(e=>e<0);class wi extends li.Component{static __initStatic(){this.propTypes={...di,graphProps:Me.isRequired}}static __initStatic2(){this.defaultProps=fi}render(){const{includeArrows:e,graphProps:t,columnTicksValues:n,skipValues:r,distanceFromOriginToFirstNegativeY:o,dy:i}=this.props,{scale:a,domain:s,size:l,range:c}=t||{},u=null==(p=s.axisLabel)||Uo(p)?1:p.split(" ").length;var p;const h=(e=>(e||"").replace(/<[^>]+>/g,"").split(" ").sort((e,t)=>t.length-e.length)[0].length)(s.axisLabel),d=Zo(h)+2;return li.createElement(gi,null,li.createElement($o,{scale:a.x,top:a.y(0),left:0,label:s.label,rangePadding:8,tickFormat:e=>e,tickLabelProps:e=>{const t=r&&r[0]===e?o+4:i;return{...vi,textAnchor:"middle",y:t,dx:0===e?-10:0,dy:0===e?-7:0}},tickValues:n,hideZero:!(s.labelStep||c.labelStep)&&s.min<=0}),e&&e.left&&li.createElement(bi,{direction:"left",x:s.min,y:0,scale:a}),e&&e.right&&li.createElement(bi,{direction:"right",x:s.max,y:0,scale:a}),s.axisLabel&&li.createElement("foreignObject",{x:l.width+17,y:a.y(0)-9,width:d,height:20*u},li.createElement(mi,{dangerouslySetInnerHTML:{__html:s.axisLabel}})))}}wi.__initStatic(),wi.__initStatic2();const Si=wi;class _i extends li.Component{static __initStatic3(){this.propTypes={...di,graphProps:Me.isRequired}}static __initStatic4(){this.defaultProps=fi}render(){const{includeArrows:e,graphProps:t,skipValues:n,rowTickValues:r}=this.props,{scale:o,range:i,size:a}=t||{},s=i.axisLabel?Zo(i.axisLabel.length):0;return li.createElement(gi,null,li.createElement($o,{orientation:"left",scale:o.y,top:0,height:a.height,left:o.x(0),label:i.label,labelProps:{"data-pie-readable":!1},rangePadding:8,tickLength:10,tickFormat:e=>n&&n.indexOf(e)>=0?"":e,tickLabelProps:e=>{let t=e.toLocaleString().replace(/[.-]/g,"").length||1;return{...vi,dy:4,dx:-10-9*t,"data-pie-readable":!1}},hideZero:!0,tickTextAnchor:"bottom",tickValues:r}),e&&e.down&&li.createElement(bi,{direction:"down",x:0,y:i.min,scale:o}),e&&e.up&&li.createElement(bi,{direction:"up",x:0,y:i.max,scale:o}),i.axisLabel&&li.createElement("foreignObject",{x:o.x(0)-s/2,y:-33,width:s,height:"20"},li.createElement(hi,{false:!0},li.createElement(yi,{dangerouslySetInnerHTML:{__html:i.axisLabel}}))))}}_i.__initStatic3(),_i.__initStatic4();const ki=_i;class Ci extends li.Component{constructor(...e){super(...e),Ci.prototype.__init.call(this),Ci.prototype.__init2.call(this)}static __initStatic5(){this.propTypes={...di,graphProps:Me.isRequired}}static __initStatic6(){this.defaultProps=fi}__init(){this.xValues=()=>{const{graphProps:e}=this.props,{scale:t,domain:n}=e||{};if(!n||!t)return;const r=Jo({...n,step:n.labelStep}),o=xi(r);return{columnTicksValues:r,firstNegativeX:o,distanceFromOriginToFirstNegativeX:Math.abs(t.y(0)-t.y(o))}}}__init2(){this.yValues=()=>{const{graphProps:e}=this.props,{scale:t,range:n}=e||{};if(!n||!t)return;const r=Jo({...n,step:n.labelStep}),o=xi(r);return{rowTickValues:r,firstNegativeY:o,distanceFromOriginToFirstNegativeY:Math.abs(t.x(0)-t.x(o))}}}render(){const{graphProps:e}=this.props,{domain:t,range:n}=e||{},{columnTicksValues:r,firstNegativeX:o,distanceFromOriginToFirstNegativeX:i}=this.xValues(),{rowTickValues:a,firstNegativeY:s,distanceFromOriginToFirstNegativeY:l}=this.yValues(),c=((e,t,n,r)=>{let o=[];return e===t&&n-6<r&&r<n+6&&n-6<25&&25<n+6&&o.push(e),o})(o,s,i,l);return li.createElement(gi,null,n.min<=0?li.createElement(Si,{...this.props,skipValues:c,columnTicksValues:r,distanceFromOriginToFirstNegativeY:l,dy:25}):null,t.min<=0?li.createElement(ki,{...this.props,skipValues:c,rowTickValues:a,distanceFromOriginToFirstNegativeX:i}):null)}}Ci.__initStatic5(),Ci.__initStatic6();const Ei=s;var Oi=function(e){var t=e.from,n=void 0===t?{x:0,y:0}:t,r=e.to,o=void 0===r?{x:1,y:1}:r,i=e.fill,a=void 0===i?"transparent":i,s=e.className,l=e.innerRef,c=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,Ai),u=n.x===o.x||n.y===o.y;return Pi.default.createElement("line",Ni({ref:l,className:(0,Ti.default)("visx-line",s),x1:n.x,y1:n.y,x2:o.x,y2:o.y,fill:a,shapeRendering:u?"crispEdges":"auto"},c))},Pi=Li(r),Ti=Li(Ei),Ai=["from","to","fill","className","innerRef"];function Li(e){return e&&e.__esModule?e:{default:e}}function Ni(){return Ni=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ni.apply(this,arguments)}function Mi(e){return"bandwidth"in e?e.bandwidth():0}const Ri=t,Di=r,ji=s;var $i=["top","left","scale","width","stroke","strokeWidth","strokeDasharray","className","children","numTicks","lineStyle","offset","tickValues"];function Ii(){return Ii=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ii.apply(this,arguments)}function Fi(e){var t=e.top,n=void 0===t?0:t,r=e.left,o=void 0===r?0:r,i=e.scale,a=e.width,s=e.stroke,l=void 0===s?"#eaf0f6":s,c=e.strokeWidth,u=void 0===c?1:c,p=e.strokeDasharray,h=e.className,d=e.children,f=e.numTicks,g=void 0===f?10:f,m=e.lineStyle,y=e.offset,b=e.tickValues,v=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,$i),x=null!=b?b:gr(i,g),w=(null!=y?y:0)+Mi(i)/2,S=x.map(function(e,t){var n,r=(null!=(n=fr(i(e)))?n:0)+w;return{index:t,from:new Ao({x:0,y:r}),to:new Ao({x:a,y:r})}});return Di.createElement(dr,{className:ji("visx-rows",h),top:n,left:o},d?d({lines:S}):S.map(function(e){var t=e.from,n=e.to,r=e.index;return Di.createElement(Oi,Ii({key:"row-line-"+r,from:t,to:n,stroke:l,strokeWidth:u,strokeDasharray:p,style:m},v))}))}Fi.propTypes={tickValues:Ri.array,width:Ri.number.isRequired};const Vi=t,Bi=r,zi=s;var Hi=["top","left","scale","height","stroke","strokeWidth","strokeDasharray","className","numTicks","lineStyle","offset","tickValues","children"];function qi(){return qi=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},qi.apply(this,arguments)}function Wi(e){var t=e.top,n=void 0===t?0:t,r=e.left,o=void 0===r?0:r,i=e.scale,a=e.height,s=e.stroke,l=void 0===s?"#eaf0f6":s,c=e.strokeWidth,u=void 0===c?1:c,p=e.strokeDasharray,h=e.className,d=e.numTicks,f=void 0===d?10:d,g=e.lineStyle,m=e.offset,y=e.tickValues,b=e.children,v=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,Hi),x=null!=y?y:gr(i,f),w=(null!=m?m:0)+Mi(i)/2,S=x.map(function(e,t){var n,r=(null!=(n=fr(i(e)))?n:0)+w;return{index:t,from:new Ao({x:r,y:0}),to:new Ao({x:r,y:a})}});return Bi.createElement(dr,{className:zi("visx-columns",h),top:n,left:o},b?b({lines:S}):S.map(function(e){var t=e.from,n=e.to,r=e.index;return Bi.createElement(Oi,qi({key:"column-line-"+r,from:t,to:n,stroke:l,strokeWidth:u,strokeDasharray:p,style:g},v))}))}Wi.propTypes={tickValues:Vi.array,height:Vi.number.isRequired};const Ui=t,Gi=r,Yi=s;var Ki=["top","left","xScale","yScale","width","height","className","stroke","strokeWidth","strokeDasharray","numTicksRows","numTicksColumns","rowLineStyle","columnLineStyle","xOffset","yOffset","rowTickValues","columnTickValues"];function Xi(){return Xi=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Xi.apply(this,arguments)}function Ji(e){var t=e.top,n=e.left,r=e.xScale,o=e.yScale,i=e.width,a=e.height,s=e.className,l=e.stroke,c=e.strokeWidth,u=e.strokeDasharray,p=e.numTicksRows,h=e.numTicksColumns,d=e.rowLineStyle,f=e.columnLineStyle,g=e.xOffset,m=e.yOffset,y=e.rowTickValues,b=e.columnTickValues,v=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,Ki);return Gi.createElement(dr,{className:Yi("visx-grid",s),top:t,left:n},Gi.createElement(Fi,Xi({className:s,scale:o,width:i,stroke:l,strokeWidth:c,strokeDasharray:u,numTicks:p,lineStyle:d,offset:m,tickValues:y},v)),Gi.createElement(Wi,Xi({className:s,scale:r,height:a,stroke:l,strokeWidth:c,strokeDasharray:u,numTicks:h,lineStyle:f,offset:g,tickValues:b},v)))}Ji.propTypes={rowTickValues:Ui.array,columnTickValues:Ui.array};const Zi=r,Qi=t;class ea extends Zi.Component{constructor(...e){super(...e),ea.prototype.__init.call(this)}static __initStatic(){this.propTypes={disabled:Qi.bool,disabledAdditionalGrid:Qi.bool,graphProps:Me.isRequired}}__init(){this.getAdditionalGridProps=(e,t)=>{const{graphProps:{scale:n,size:{width:r,height:o},domain:i,range:a}}=this.props,s=Jo({...a,step:a.labelStep}).filter(t=>e.includes(t)),l=Jo({...i,step:i.labelStep}).filter(e=>t.includes(e)),c=s.length&&Math.min(...s).toString().replace(/[.-]/g,"").length||1,u=s.length&&Math.max(...s).toString().replace(/[.-]/g,"").length||1,p=9*Math.max(c,u)+22,h=n.x(0),d=n.y(0),f=`${h-p} ${p} ${r}`,g=`${d} 28 ${o}`,m=i.labelStep>0&&a.labelStep>0&&s&&l&&s.length>1&&l.length>1&&(s.length!==e.length||l.length!==t.length),y=l.filter(e=>e>=0||h-n.x(e)>p);return{rowTickLabelValues:s.filter(e=>e>=0||n.y(e)-d>28),columnTickLabelValues:y,rowStrokeDasharray:f,columnStrokeDasharray:g,displayAdditionalGrid:m}}}render(){const{graphProps:e}=this.props,{scale:t,size:{height:n,width:r},domain:o,range:i}=e,a=Jo(i),s=Jo(o),{rowTickLabelValues:l,columnTickLabelValues:c,rowStrokeDasharray:u,columnStrokeDasharray:p,displayAdditionalGrid:h}=this.getAdditionalGridProps(a,s),d=2*o.labelStep===o.step||2*i.labelStep===i.step?"#9FA8DA":"#7985CB";return Zi.createElement(Zi.Fragment,null,Zi.createElement(Ji,{innerRef:e=>this.grid=e,xScale:t.x,yScale:t.y,width:r,height:n,stroke:"#D3D3D3",rowTickValues:a,columnTickValues:s}),h&&Zi.createElement(Zi.Fragment,null,Zi.createElement(Fi,{scale:t.y,width:r,tickValues:l,stroke:d,strokeDasharray:u}),Zi.createElement(Wi,{scale:t.x,height:n,tickValues:c,stroke:d,strokeDasharray:p})))}}ea.__initStatic();const ta=r,na=t,{styled:ra}=i,{color:oa}=o,{Readable:ia}=o,aa=s,sa=h,la={left:-90,top:0,bottom:0,right:90},ca="Label",ua={label:`${ca}-label`,axisLabel:`${ca}-axisLabel`,disabledAxisLabel:`${ca}-disabledAxisLabel`,bottomLabel:`${ca}-bottomLabel`},pa=ra("div")(({theme:e})=>({[`& .${ua.label}`]:{fill:oa.defaults.SECONDARY},[`& .${ua.axisLabel}`]:{fontSize:e.typography.fontSize-2,textAlign:"center",padding:"0 4px"},[`& .${ua.disabledAxisLabel}`]:{pointerEvents:"none"},[`& .${ua.bottomLabel}`]:{marginTop:"44px"}}));class ha extends ta.Component{static __initStatic(){this.propTypes={text:na.string,side:na.string,disabledLabel:na.bool,placeholder:na.string,graphProps:Me.isRequired,onChange:na.func,mathMlOptions:na.object}}static __initStatic2(){this.defaultProps={onChange:()=>{}}}render(){const{disabledLabel:e,placeholder:t,text:n,side:r,graphProps:o,onChange:i,mathMlOptions:a={}}=this.props,{size:s,domain:l,range:c}=o,u=(s.height||500)+2*(c.padding||0),p=(s.width||500)+2*(l.padding||0),h=((e,t,n)=>{const r=(e,t,n)=>`translate(${e}, ${t}), rotate(${n})`;return"left"===e?r(-20,n/2,la[e]):"right"===e?r(t+30,n/2,la[e]):"top"===e?r(t/2,-20,la[e]):"bottom"===e?r(t/2,n+30,la[e]):void 0})(r,p,u),d="left"===r||"right"===r?u:p,f=(e=>{switch(e){case"left":case"top":return-36;case"right":return-46;default:return-26}})(r),g="bottom"===r?58:54;return ta.createElement(pa,null,ta.createElement("foreignObject",{x:-d/2,y:f,width:d,height:g,transform:h,textAnchor:"middle"},ta.createElement(ia,null,ta.createElement(sa,{className:aa({[ua.bottomLabel]:"bottom"===r,[ua.disabledAxisLabel]:e},ua.axisLabel),markup:n||"",onChange:i,placeholder:!e&&t,toolbarOpts:{position:"bottom"===r?"top":"bottom",noPadding:!0,noBorder:!0},activePlugins:["bold","italic","underline","strikethrough","math"],mathMlOptions:a}))))}}ha.__initStatic(),ha.__initStatic2();const da={left:na.string,top:na.string,bottom:na.string,right:na.string};class fa extends ta.Component{constructor(...e){super(...e),fa.prototype.__init.call(this)}static __initStatic3(){this.propTypes={disabledLabels:na.bool,placeholders:na.object,value:na.shape(da),graphProps:na.object,onChange:na.func,mathMlOptions:na.object}}__init(){this.onChangeLabel=(e,t)=>{const{value:n,onChange:r}=this.props;r({...n,[t]:e})}}render(){const{disabledLabels:e,placeholders:t={},value:n={},graphProps:r,mathMlOptions:o={}}=this.props;return ta.createElement(ta.Fragment,null,["left","top","bottom","right"].map(i=>ta.createElement(ha,{key:i,side:i,text:n[i],disabledLabel:e,placeholder:t[i],graphProps:r,onChange:e=>this.onChangeLabel(e,i),mathMlOptions:o})))}}fa.__initStatic3();const ga=r,ma=t;class ya extends ga.Component{constructor(...e){super(...e),ya.prototype.__init.call(this),ya.prototype.__init2.call(this)}static __initStatic(){this.propTypes={width:ma.number.isRequired,height:ma.number.isRequired,onClick:ma.func.isRequired,graphProps:Me.isRequired}}static __initStatic2(){this.defaultProps={}}componentDidMount(){const e=Se(this.rect);e.on("click",t=>this.onRectClick(e,t))}shouldComponentUpdate(e){return t=this.props.graphProps,n=e.graphProps,!($e(t.domain,n.domain)&&$e(t.range,n.range)&&this.props.width===e.width&&this.props.height===e.height);var t,n}__init(){this.getRectPadding=()=>{const{graphProps:e}=this.props;return oi(e)?6:10}}__init2(){this.onRectClick=(e,t)=>{const{onClick:n,graphProps:r}=this.props,{scale:o}=r,i=this.getRectPadding(),a=_e(t,e.node()),s=o.x.invert(a[0]-i),l=o.y.invert(a[1]-i),c=Jo(r.range),u=Jo(r.domain),p=(e,t)=>e.length&&e.reduce((e,n)=>Math.abs(n-t)<=Math.abs(e-t)?n:e);let h={};u.indexOf(s)>=0&&c.indexOf(l)>=0?(h.x=s,h.y=l):(h.x=p(u,s),h.y=p(c,l)),n(h)}}render(){const{width:e,height:t}=this.props,n=this.getRectPadding();return ga.createElement("rect",{ref:e=>this.rect=e,transform:`translate(-${n}, -${n})`,fill:"red",fillOpacity:"0.0",width:e+2*n,height:t+2*n})}}ya.__initStatic(),ya.__initStatic2();const ba=r,va=t,{isEqual:xa}=n,{cloneDeep:wa}=n,Sa=a("pie-lib:graphing-solution-set:graph"),_a={axesSettings:va.shape(di),backgroundMarks:va.array,className:va.string,collapsibleToolbar:va.bool,collapsibleToolbarTitle:va.string,disabledLabels:va.bool,disabledTitle:va.bool,domain:Ee,labels:va.shape(da),labelModeEnabled:va.bool,coordinatesOnHover:va.bool,marks:va.array,onChangeLabels:va.func,onChangeMarks:va.func,onChangeTitle:va.func,range:Ee,size:va.shape({width:va.number.isRequired,height:va.number.isRequired}),showLabels:va.bool,showPixelGuides:va.bool,showTitle:va.bool,title:va.string,tools:va.array};class ka extends ba.Component{constructor(e){super(e),ka.prototype.__init.call(this),ka.prototype.__init2.call(this),ka.prototype.__init3.call(this),ka.prototype.__init4.call(this),ka.prototype.__init5.call(this),ka.prototype.__init6.call(this),ka.prototype.__init7.call(this),this.maskUid=this.generateMaskId()}static __initStatic(){this.propTypes={..._a,currentTool:va.object}}static __initStatic2(){this.defaultProps={onChangeMarks:()=>{},disabledLabels:!1,disabledTitle:!1}}__init(){this.state={}}generateMaskId(){return"graph-"+(1e4*Math.random()).toFixed()}__init2(){this.componentDidMount=()=>this.setState({labelNode:this.labelNode})}__init3(){this.changeMark=(e,t)=>{const{onChangeMarks:n,marks:r,gssLineData:o}=this.props;if("solutionSet"===function(e){let t,n=e[0],r=1;for(;r<e.length;){const o=e[r],i=e[r+1];if(r+=2,("optionalAccess"===o||"optionalCall"===o)&&null==n)return;"access"===o||"optionalAccess"===o?(t=n,n=i(n)):"call"!==o&&"optionalCall"!==o||(n=i((...e)=>n.call(t,...e)),t=void 0)}return n}([o,"optionalAccess",e=>e.selectedTool]))return;let i=wa(r);const a=i.findIndex(t=>xa(t,e));a>=0&&!si(t,r,e)&&(i.splice(a,1,t),n(i))}}__init4(){this.completeMark=e=>{const{currentTool:t,marks:n}=this.props,r=n.filter(e=>e.building)[0];if(!r||!t)return;const o=t.complete(r,e);this.updateMarks(r,o)}}__init5(){this.updateMarks=(e,t,n=!1)=>{const{onChangeMarks:r,marks:o}=this.props;let i=wa(o);if(!t||!t.building&&si(t,o))return;const a=i.findIndex(t=>xa(t,e));a>=0?(i.splice(a,1,t),r(i)):n&&r([...i,t])}}__init6(){this.getComponent=e=>{if(!e)return null;const t=(this.props.tools||[]).find(t=>t.type===e.type);return t&&t.Component||null}}__init7(){this.onBgClick=e=>{const{x:t,y:n}=e||{},{labelModeEnabled:r,currentTool:o,marks:i,gssLineData:a,onSolutionSetSelected:s}=this.props;if(a){if("solutionSet"===a.selectedTool)return void s(e);if(1===a.numberOfLines&&"lineA"===a.selectedTool&&1===i.length&&!i[0].building)return;if(2===a.numberOfLines&&"lineA"===a.selectedTool&&2===i.length)return;if(2===a.numberOfLines&&"lineA"===a.selectedTool&&1===i.length&&!i[0].building)return;if(2===a.numberOfLines&&"lineB"===a.selectedTool&&2===i.length&&!i[1].building)return}if(r||!o||[null,void 0].includes(t)||[null,void 0].includes(n))return;Sa("[onBgClick] x,y: ",t,n);const l=i.filter(e=>e.building)[0];let c;c=l&&o&&l.type===o.type?o.addPoint({x:t,y:n},{...l}):o.addPoint({x:t,y:n},void 0),this.updateMarks(l,c,!0)}}render(){const{axesSettings:e,currentTool:t,coordinatesOnHover:n,size:r,disabledLabels:o,disabledTitle:i,domain:a,backgroundMarks:s,range:l,title:c,labels:u,labelModeEnabled:p,labelsPlaceholders:h,showLabels:d,showPixelGuides:f,showTitle:g,titlePlaceholder:m,onChangeLabels:y,onChangeTitle:b,mathMlOptions:v={},gssLineData:x,disabled:w}=this.props;let{marks:S}=this.props;const _=((e,t,n,r)=>{Re(e.min<e.max,"domain: min must be less than max"),Re(t.min<t.max,"range: min must be less than max");const o=sr(e),i=sr(t);return{scale:{x:ar().domain([e.min,e.max]).range([0,n.width]),y:ar().domain([t.max,t.min]).range([0,n.height])},snap:{x:Ve.bind(null,o.min,o.max,o.step),y:Ve.bind(null,i.min,i.max,i.step)},domain:e,range:t,size:n,getRootNode:r}})(a,l,r,()=>this.rootNode),k=(e=>({x:-23,y:-23,width:e.width+46,height:e.height+46}))(r);let C={graphProps:_,labelModeEnabled:p,gssLineData:x};S=(({marks:e,currentTool:t})=>{const n=e.filter(e=>e.building)[0];let r=wa(e);if(n&&t&&n.type!==t.type){const e=r.findIndex(e=>xa(e,n));e>=0&&r.splice(e,1)}return r})({marks:S||[],currentTool:t});let E=S.filter(e=>"polygon"===e.type);x&&"solutionSet"===x.selectedTool&&x.sections.forEach(e=>{if(0===E.length||!((e,t)=>{if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++){const r=e[n],o=t[n];if(Object.keys(r).length!==Object.keys(o).length)return!1;for(const e in r)if(r[e]!==o[e])return!1}return!0})(e,E[0].points)){let t={type:"polygon",building:!1,closed:!0,points:e,isSolution:!1};w||S.push(t)}});let O=[];return O.push(...S.filter(e=>"polygon"===e.type)),O.push(...S.filter(e=>"line"===e.type)),ba.createElement(yt,{rootRef:e=>this.rootNode=e,disabledTitle:i,disabledLabels:o,labels:u,labelsPlaceholders:h||{},showPixelGuides:f,showLabels:d,showTitle:g,title:c,titlePlaceholder:m,onChangeTitle:b,onChangeLabels:y,mathMlOptions:v,...C},ba.createElement("g",{transform:a&&a.padding&&a.range?`translate(${a.padding}, ${l.padding})`:void 0},ba.createElement(ea,{...C}),ba.createElement(Ci,{...e,...C}),ba.createElement(ya,{...r,onClick:this.onBgClick,...C}),ba.createElement("mask",{id:`${this.maskUid}`},ba.createElement("rect",{...k,fill:"white"})," "),ba.createElement("g",{id:"marks",mask:`url('#${this.maskUid}')`},(s||[]).map((e,t)=>{const n=this.getComponent(e),r=e.type;return ba.createElement(n,{key:`${r}-${t}-bg`,mark:{...e,disabled:!0,isBackground:!0},labelNode:this.state.labelNode,onClick:this.onBgClick,...C})}),O.map((e,r)=>{const o=this.getComponent(e),i=e.type;return ba.createElement(o,{key:`${i}-${r}`,mark:e,coordinatesOnHover:n,onChange:this.changeMark,onComplete:this.completeMark,onClick:this.onBgClick,onDragStart:this.startDrag,onDragStop:this.stopDrag,labelNode:this.state.labelNode,isToolActive:t&&i===t.type,...C})}),ba.createElement("foreignObject",{ref:e=>this.labelNode=e,x:"0",y:"0",...r,style:{pointerEvents:"none",fontSize:"14px"}}))))}}function Ca(e,t){return Ca=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Ca(e,t)}function Ea(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Ca(e,t)}ka.__initStatic(),ka.__initStatic2();var Oa=r.createContext(null);const Pa=r,{Component:Ta}=r,Aa=t;var La=function(e){function t(t){var n;n=e.call(this,t)||this;var r=t.store;return n.state={storeState:r.getState(),store:r},n}Ea(t,e);var n=t.prototype;return n.componentDidMount=function(){this._isMounted=!0,this.subscribe()},n.componentWillUnmount=function(){this.unsubscribe&&this.unsubscribe(),this._isMounted=!1},n.componentDidUpdate=function(e){this.props.store!==e.store&&(this.unsubscribe&&this.unsubscribe(),this.subscribe())},n.subscribe=function(){var e=this,t=this.props.store;this.unsubscribe=t.subscribe(function(){var n=t.getState();e._isMounted&&e.setState(function(e){return e.storeState===n?null:{storeState:n}})});var n=t.getState();n!==this.state.storeState&&this.setState({storeState:n})},n.render=function(){var e=this.props.context||Oa;return Pa.createElement(e.Provider,{value:this.state},this.props.children)},t}(Ta);function Na(){return Na=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Na.apply(null,arguments)}function Ma(e,t){if(null==e)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(-1!==t.indexOf(r))continue;n[r]=e[r]}return n}La.propTypes={store:Aa.shape({subscribe:Aa.func.isRequired,dispatch:Aa.func.isRequired,getState:Aa.func.isRequired}),context:Aa.object,children:Aa.any};var Ra={exports:{}},Da={},ja="function"==typeof Symbol&&Symbol.for,$a=ja?Symbol.for("react.element"):60103,Ia=ja?Symbol.for("react.portal"):60106,Fa=ja?Symbol.for("react.fragment"):60107,Va=ja?Symbol.for("react.strict_mode"):60108,Ba=ja?Symbol.for("react.profiler"):60114,za=ja?Symbol.for("react.provider"):60109,Ha=ja?Symbol.for("react.context"):60110,qa=ja?Symbol.for("react.async_mode"):60111,Wa=ja?Symbol.for("react.concurrent_mode"):60111,Ua=ja?Symbol.for("react.forward_ref"):60112,Ga=ja?Symbol.for("react.suspense"):60113,Ya=ja?Symbol.for("react.suspense_list"):60120,Ka=ja?Symbol.for("react.memo"):60115,Xa=ja?Symbol.for("react.lazy"):60116,Ja=ja?Symbol.for("react.block"):60121,Za=ja?Symbol.for("react.fundamental"):60117,Qa=ja?Symbol.for("react.responder"):60118,es=ja?Symbol.for("react.scope"):60119;function ts(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case $a:switch(e=e.type){case qa:case Wa:case Fa:case Ba:case Va:case Ga:return e;default:switch(e=e&&e.$$typeof){case Ha:case Ua:case Xa:case Ka:case za:return e;default:return t}}case Ia:return t}}}function ns(e){return ts(e)===Wa}Da.AsyncMode=qa,Da.ConcurrentMode=Wa,Da.ContextConsumer=Ha,Da.ContextProvider=za,Da.Element=$a,Da.ForwardRef=Ua,Da.Fragment=Fa,Da.Lazy=Xa,Da.Memo=Ka,Da.Portal=Ia,Da.Profiler=Ba,Da.StrictMode=Va,Da.Suspense=Ga,Da.isAsyncMode=function(e){return ns(e)||ts(e)===qa},Da.isConcurrentMode=ns,Da.isContextConsumer=function(e){return ts(e)===Ha},Da.isContextProvider=function(e){return ts(e)===za},Da.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===$a},Da.isForwardRef=function(e){return ts(e)===Ua},Da.isFragment=function(e){return ts(e)===Fa},Da.isLazy=function(e){return ts(e)===Xa},Da.isMemo=function(e){return ts(e)===Ka},Da.isPortal=function(e){return ts(e)===Ia},Da.isProfiler=function(e){return ts(e)===Ba},Da.isStrictMode=function(e){return ts(e)===Va},Da.isSuspense=function(e){return ts(e)===Ga},Da.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===Fa||e===Wa||e===Ba||e===Va||e===Ga||e===Ya||"object"==typeof e&&null!==e&&(e.$$typeof===Xa||e.$$typeof===Ka||e.$$typeof===za||e.$$typeof===Ha||e.$$typeof===Ua||e.$$typeof===Za||e.$$typeof===Qa||e.$$typeof===es||e.$$typeof===Ja)},Da.typeOf=ts,Ra.exports=Da;var rs=Ra.exports,os={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},is={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},as={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},ss={};function ls(e){return rs.isMemo(e)?as:ss[e.$$typeof]||os}ss[rs.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},ss[rs.Memo]=as;var cs=Object.defineProperty,us=Object.getOwnPropertyNames,ps=Object.getOwnPropertySymbols,hs=Object.getOwnPropertyDescriptor,ds=Object.getPrototypeOf,fs=Object.prototype,gs=function e(t,n,r){if("string"!=typeof n){if(fs){var o=ds(n);o&&o!==fs&&e(t,o,r)}var i=us(n);ps&&(i=i.concat(ps(n)));for(var a=ls(t),s=ls(n),l=0;l<i.length;++l){var c=i[l];if(!(is[c]||r&&r[c]||s&&s[c]||a&&a[c])){var u=hs(n,c);try{cs(t,c,u)}catch(e){}}}}return t},ms={exports:{}},ys={},bs="function"==typeof Symbol&&Symbol.for,vs=bs?Symbol.for("react.element"):60103,xs=bs?Symbol.for("react.portal"):60106,ws=bs?Symbol.for("react.fragment"):60107,Ss=bs?Symbol.for("react.strict_mode"):60108,_s=bs?Symbol.for("react.profiler"):60114,ks=bs?Symbol.for("react.provider"):60109,Cs=bs?Symbol.for("react.context"):60110,Es=bs?Symbol.for("react.async_mode"):60111,Os=bs?Symbol.for("react.concurrent_mode"):60111,Ps=bs?Symbol.for("react.forward_ref"):60112,Ts=bs?Symbol.for("react.suspense"):60113,As=bs?Symbol.for("react.suspense_list"):60120,Ls=bs?Symbol.for("react.memo"):60115,Ns=bs?Symbol.for("react.lazy"):60116,Ms=bs?Symbol.for("react.block"):60121,Rs=bs?Symbol.for("react.fundamental"):60117,Ds=bs?Symbol.for("react.responder"):60118,js=bs?Symbol.for("react.scope"):60119;function $s(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case vs:switch(e=e.type){case Es:case Os:case ws:case _s:case Ss:case Ts:return e;default:switch(e=e&&e.$$typeof){case Cs:case Ps:case Ns:case Ls:case ks:return e;default:return t}}case xs:return t}}}function Is(e){return $s(e)===Os}ys.AsyncMode=Es,ys.ConcurrentMode=Os,ys.ContextConsumer=Cs,ys.ContextProvider=ks,ys.Element=vs,ys.ForwardRef=Ps,ys.Fragment=ws,ys.Lazy=Ns,ys.Memo=Ls,ys.Portal=xs,ys.Profiler=_s,ys.StrictMode=Ss,ys.Suspense=Ts,ys.isAsyncMode=function(e){return Is(e)||$s(e)===Es},ys.isConcurrentMode=Is,ys.isContextConsumer=function(e){return $s(e)===Cs},ys.isContextProvider=function(e){return $s(e)===ks},ys.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===vs},ys.isForwardRef=function(e){return $s(e)===Ps},ys.isFragment=function(e){return $s(e)===ws},ys.isLazy=function(e){return $s(e)===Ns},ys.isMemo=function(e){return $s(e)===Ls},ys.isPortal=function(e){return $s(e)===xs},ys.isProfiler=function(e){return $s(e)===_s},ys.isStrictMode=function(e){return $s(e)===Ss},ys.isSuspense=function(e){return $s(e)===Ts},ys.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===ws||e===Os||e===_s||e===Ss||e===Ts||e===As||"object"==typeof e&&null!==e&&(e.$$typeof===Ns||e.$$typeof===Ls||e.$$typeof===ks||e.$$typeof===Cs||e.$$typeof===Ps||e.$$typeof===Rs||e.$$typeof===Ds||e.$$typeof===js||e.$$typeof===Ms)},ys.typeOf=$s,ms.exports=ys;const Fs=r,{Component:Vs}=r,{PureComponent:Bs}=r;var zs=Object.prototype.hasOwnProperty;function Hs(e,t){return e===t?0!==e||0!==t||1/e==1/t:e!=e&&t!=t}function qs(e,t){if(Hs(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(var o=0;o<n.length;o++)if(!zs.call(t,n[o])||!Hs(e[n[o]],t[n[o]]))return!1;return!0}function Ws(e){return Ws="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ws(e)}function Us(e,t,n){return(t=function(e){var t=function(e){if("object"!=Ws(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Ws(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ws(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Gs(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Ys(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Gs(Object(n),!0).forEach(function(t){Us(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Gs(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function Ks(e){return"Minified Redux error #"+e+"; visit https://redux.js.org/Errors?code="+e+" for the full message or use the non-minified dev environment for full errors. "}var Xs="function"==typeof Symbol&&Symbol.observable||"@@observable",Js=function(){return Math.random().toString(36).substring(7).split("").join(".")},Zs={INIT:"@@redux/INIT"+Js(),REPLACE:"@@redux/REPLACE"+Js(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+Js()}};function Qs(e,t,n){var r;if("function"==typeof t&&"function"==typeof n||"function"==typeof n&&"function"==typeof arguments[3])throw new Error(Ks(0));if("function"==typeof t&&void 0===n&&(n=t,t=void 0),void 0!==n){if("function"!=typeof n)throw new Error(Ks(1));return n(Qs)(e,t)}if("function"!=typeof e)throw new Error(Ks(2));var o=e,i=t,a=[],s=a,l=!1;function c(){s===a&&(s=a.slice())}function u(){if(l)throw new Error(Ks(3));return i}function p(e){if("function"!=typeof e)throw new Error(Ks(4));if(l)throw new Error(Ks(5));var t=!0;return c(),s.push(e),function(){if(t){if(l)throw new Error(Ks(6));t=!1,c();var n=s.indexOf(e);s.splice(n,1),a=null}}}function h(e){if(!function(e){if("object"!=typeof e||null===e)return!1;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}(e))throw new Error(Ks(7));if(void 0===e.type)throw new Error(Ks(8));if(l)throw new Error(Ks(9));try{l=!0,i=o(i,e)}finally{l=!1}for(var t=a=s,n=0;n<t.length;n++)(0,t[n])();return e}return h({type:Zs.INIT}),(r={dispatch:h,subscribe:p,getState:u,replaceReducer:function(e){if("function"!=typeof e)throw new Error(Ks(10));o=e,h({type:Zs.REPLACE})}})[Xs]=function(){var e,t=p;return(e={subscribe:function(e){if("object"!=typeof e||null===e)throw new Error(Ks(11));function n(){e.next&&e.next(u())}return n(),{unsubscribe:t(n)}}})[Xs]=function(){return this},e},r}function el(e,t){return function(){return t(e.apply(this,arguments))}}function tl(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return 0===t.length?function(e){return e}:1===t.length?t[0]:t.reduce(function(e,t){return function(){return e(t.apply(void 0,arguments))}})}function nl(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){return function(){var n=e.apply(void 0,arguments),r=function(){throw new Error(Ks(15))},o={getState:n.getState,dispatch:function(){return r.apply(void 0,arguments)}},i=t.map(function(e){return e(o)});return r=tl.apply(void 0,i)(n.dispatch),Ys(Ys({},n),{},{dispatch:r})}}}function rl(e){return function(t,n){var r=e(t,n);function o(){return r}return o.dependsOnOwnProps=!1,o}}function ol(e){return null!==e.dependsOnOwnProps&&void 0!==e.dependsOnOwnProps?Boolean(e.dependsOnOwnProps):1!==e.length}function il(e,t){return function(t,n){n.displayName;var r=function(e,t){return r.dependsOnOwnProps?r.mapToProps(e,t):r.mapToProps(e)};return r.dependsOnOwnProps=!0,r.mapToProps=function(t,n){r.mapToProps=e,r.dependsOnOwnProps=ol(e);var o=r(t,n);return"function"==typeof o&&(r.mapToProps=o,r.dependsOnOwnProps=ol(o),o=r(t,n)),o},r}}var al=[function(e){return"function"==typeof e?il(e):void 0},function(e){return e?void 0:rl(function(e){return{dispatch:e}})},function(e){return e&&"object"==typeof e?rl(function(t){return function(e,t){if("function"==typeof e)return el(e,t);if("object"!=typeof e||null===e)throw new Error(Ks(16));var n={};for(var r in e){var o=e[r];"function"==typeof o&&(n[r]=el(o,t))}return n}(e,t)}):void 0}],sl=[function(e){return"function"==typeof e?il(e):void 0},function(e){return e?void 0:rl(function(){return{}})}];function ll(e,t,n){return Na({},n,e,t)}var cl=[function(e){return"function"==typeof e?function(e){return function(t,n){n.displayName;var r,o=n.pure,i=n.areMergedPropsEqual,a=!1;return function(t,n,s){var l=e(t,n,s);return a?o&&i(l,r)||(r=l):(a=!0,r=l),r}}}(e):void 0},function(e){return e?void 0:function(){return ll}}];function ul(e,t,n,r){return function(o,i){return n(e(o,i),t(r,i),i)}}function pl(e,t,n,r,o){var i,a,s,l,c,u=o.areStatesEqual,p=o.areOwnPropsEqual,h=o.areStatePropsEqual,d=!1;function f(o,d){var f,g,m=!p(d,a),y=!u(o,i);return i=o,a=d,m&&y?(s=e(i,a),t.dependsOnOwnProps&&(l=t(r,a)),c=n(s,l,a)):m?(e.dependsOnOwnProps&&(s=e(i,a)),t.dependsOnOwnProps&&(l=t(r,a)),c=n(s,l,a)):y?(f=e(i,a),g=!h(f,s),s=f,g&&(c=n(s,l,a)),c):c}return function(o,u){return d?f(o,u):(s=e(i=o,a=u),l=t(r,a),c=n(s,l,a),d=!0,c)}}function hl(e,t,n){for(var r=t.length-1;r>=0;r--){var o=t[r](e);if(o)return o}return function(t,r){throw new Error("Invalid value of type "+typeof e+" for "+n+" argument when connecting component "+r.wrappedComponentName+".")}}function dl(e,t){return e===t}var fl,gl,ml,yl,bl,vl,xl,wl,Sl,_l,kl,Cl=(gl=(fl={}).connectHOC,ml=void 0===gl?function(e,t){void 0===t&&(t={});var n=t,r=n.getDisplayName,o=void 0===r?function(e){return"ConnectAdvanced("+e+")"}:r,i=n.methodName,a=void 0===i?"connectAdvanced":i,s=n.renderCountProp,l=void 0===s?void 0:s,c=n.shouldHandleStateChanges,u=void 0===c||c,p=n.storeKey,h=void 0===p?"store":p,d=n.withRef,f=void 0!==d&&d,g=n.forwardRef,m=void 0!==g&&g,y=n.context,b=void 0===y?Oa:y,v=Ma(n,["getDisplayName","methodName","renderCountProp","shouldHandleStateChanges","storeKey","withRef","forwardRef","context"]);Re(void 0===l,"renderCountProp is removed. render counting is built into the latest React dev tools profiling extension"),Re(!f,"withRef is removed. To access the wrapped instance, use a ref on the connected component");var x="To use a custom Redux store for specific components, create a custom React context with React.createContext(), and pass the context object to React Redux's Provider and specific components like: <Provider context={MyContext}><ConnectedComponent context={MyContext} /></Provider>. You may also pass a {context : MyContext} option to connect";Re("store"===h,"storeKey has been removed and does not do anything. "+x);var w=b;return function(t){var n=t.displayName||t.name||"Component",r=o(n),i=Na({},v,{getDisplayName:o,methodName:a,renderCountProp:l,shouldHandleStateChanges:u,storeKey:h,displayName:r,wrappedComponentName:n,WrappedComponent:t}),s=v.pure,c=Vs;s&&(c=Bs);var p=function(n){function o(t){var r,o,i,a,l,c,u,p,d,f,g;return r=n.call(this,t)||this,Re(m?!t.wrapperProps[h]:!t[h],"Passing redux store in props has been removed and does not do anything. "+x),r.selectDerivedProps=function(t,n,r,p){if(s&&o===n&&i===t)return a;r===l&&c===p||(l=r,c=p,u=e(r.dispatch,p)),o=n,i=t;var h=u(t,n);return a=h},r.selectChildElement=function(e,t,n){return t===p&&n===d&&g===e||(p=t,d=n,g=e,f=Fs.createElement(e,Na({},t,{ref:n}))),f},r.indirectRenderWrappedComponent=r.indirectRenderWrappedComponent.bind(function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(r)),r}Ea(o,n);var a=o.prototype;return a.indirectRenderWrappedComponent=function(e){return this.renderWrappedComponent(e)},a.renderWrappedComponent=function(e){Re(e,'Could not find "store" in the context of "'+r+'". Either wrap the root component in a <Provider>, or pass a custom React context provider to <Provider> and the corresponding React context consumer to '+r+" in connect options.");var n,o=e.storeState,a=e.store,s=this.props;m&&(s=this.props.wrapperProps,n=this.props.forwardedRef);var l=this.selectDerivedProps(o,s,a,i);return this.selectChildElement(t,l,n)},a.render=function(){var e=this.props.context&&this.props.context.Consumer&&ms.exports.isContextConsumer(Fs.createElement(this.props.context.Consumer,null))?this.props.context:w;return Fs.createElement(e.Consumer,null,this.indirectRenderWrappedComponent)},o}(c);if(p.WrappedComponent=t,p.displayName=r,m){var d=Fs.forwardRef(function(e,t){return Fs.createElement(p,{wrapperProps:e,forwardedRef:t})});return d.displayName=r,d.WrappedComponent=t,gs(d,t)}return gs(p,t)}}:gl,bl=void 0===(yl=fl.mapStateToPropsFactories)?sl:yl,xl=void 0===(vl=fl.mapDispatchToPropsFactories)?al:vl,Sl=void 0===(wl=fl.mergePropsFactories)?cl:wl,kl=void 0===(_l=fl.selectorFactory)?function(e,t){var n=t.initMapStateToProps,r=t.initMapDispatchToProps,o=t.initMergeProps,i=Ma(t,["initMapStateToProps","initMapDispatchToProps","initMergeProps"]),a=n(e,i),s=r(e,i),l=o(e,i);return(i.pure?pl:ul)(a,s,l,e,i)}:_l,function(e,t,n,r){void 0===r&&(r={});var o=r,i=o.pure,a=void 0===i||i,s=o.areStatesEqual,l=void 0===s?dl:s,c=o.areOwnPropsEqual,u=void 0===c?qs:c,p=o.areStatePropsEqual,h=void 0===p?qs:p,d=o.areMergedPropsEqual,f=void 0===d?qs:d,g=Ma(o,["pure","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","areMergedPropsEqual"]),m=hl(e,bl,"mapStateToProps"),y=hl(t,xl,"mapDispatchToProps"),b=hl(n,Sl,"mergeProps");return ml(kl,Na({methodName:"connect",getDisplayName:function(e){return"Connect("+e+")"},shouldHandleStateChanges:Boolean(e),initMapStateToProps:m,initMapDispatchToProps:y,initMergeProps:b,pure:a,areStatesEqual:l,areOwnPropsEqual:u,areStatePropsEqual:h,areMergedPropsEqual:f},g))});const El=(e=[],t)=>{if("CHANGE_MARKS"===t.type){if(Array.isArray(t.marks))return t.marks;throw new Error("marks must be an array")}return e},Ol="@@redux-undo/UNDO",Pl="@@redux-undo/REDO",Tl="@@redux-undo/JUMP_TO_FUTURE",Al="@@redux-undo/JUMP_TO_PAST",Ll="@@redux-undo/JUMP",Nl="@@redux-undo/CLEAR_HISTORY",Ml=()=>({type:Ol}),Rl=()=>({type:Pl});function Dl(e,t=[]){return Array.isArray(e)?e:"string"==typeof e?[e]:t}function jl(e,t,n,r=null){return{past:e,present:t,future:n,group:r,_latestUnfiltered:t,index:e.length,limit:e.length+n.length+1}}let $l,Il;function Fl(e,t,n){return[`%c${e}`,`color: ${t}; font-weight: bold`,n]}function Vl(e){$l&&(console.group?Il.next=Fl("next history","#4CAF50",e):Il.next=["next history",e],function(){const{header:e,prev:t,next:n,action:r,msgs:o}=Il;console.group?(console.groupCollapsed(...e),console.log(...t),console.log(...r),console.log(...n),console.log(...o),console.groupEnd()):(console.log(...e),console.log(...t),console.log(...r),console.log(...n),console.log(...o))}())}function Bl(...e){$l&&(Il.msgs=Il.msgs.concat([...e,"\n"]))}function zl(e,t){const n=jl([],e,[]);return t&&(n._latestUnfiltered=null),n}function Hl(e,t){if(t<0||t>=e.future.length)return e;const{past:n,future:r,_latestUnfiltered:o}=e;return jl([...n,o,...r.slice(0,t)],r[t],r.slice(t+1))}function ql(e,t){if(t<0||t>=e.past.length)return e;const{past:n,future:r,_latestUnfiltered:o}=e,i=n.slice(0,t),a=[...n.slice(t+1),o,...r];return jl(i,n[t],a)}function Wl(e,t){return t>0?Hl(e,t-1):t<0?ql(e,e.past.length+t):e}function Ul(e,t={}){!function(e){$l=e}(t.debug);const n={limit:void 0,filter:()=>!0,groupBy:()=>null,undoType:Ol,redoType:Pl,jumpToPastType:Al,jumpToFutureType:Tl,jumpType:Ll,neverSkipReducer:!1,ignoreInitialState:!1,syncFilter:!1,...t,initTypes:Dl(t.initTypes,["@@redux-undo/INIT"]),clearHistoryType:Dl(t.clearHistoryType,[Nl])},r=n.neverSkipReducer?(t,n,...r)=>({...t,present:e(t.present,n,...r)}):e=>e;let o;return(t=o,i={},...a)=>{!function(e,t){Il={header:[],prev:[],action:[],next:[],msgs:[]},$l&&(console.group?(Il.header=["%credux-undo","font-style: italic","action",e.type],Il.action=Fl("action","#03A9F4",e),Il.prev=Fl("prev history","#9E9E9E",t)):(Il.header=["redux-undo action",e.type],Il.action=["action",e],Il.prev=["prev history",t]))}(i,t);let s,l=t;if(!o){if(Bl("history is uninitialized"),void 0===t)return l=zl(e(t,{type:"@@redux-undo/CREATE_HISTORY"},...a),n.ignoreInitialState),Bl("do not set initialState on probe actions"),Vl(l),l;!function(e){return typeof e.present<"u"&&typeof e.future<"u"&&typeof e.past<"u"&&Array.isArray(e.future)&&Array.isArray(e.past)}(t)?(l=o=zl(t,n.ignoreInitialState),Bl("initialHistory initialized: initialState is not a history",o)):(l=o=n.ignoreInitialState?t:jl(t.past,t.present,t.future),Bl("initialHistory initialized: initialState is a history",o))}switch(i.type){case void 0:return l;case n.undoType:return s=Wl(l,-1),Bl("perform undo"),Vl(s),r(s,i,...a);case n.redoType:return s=Wl(l,1),Bl("perform redo"),Vl(s),r(s,i,...a);case n.jumpToPastType:return s=ql(l,i.index),Bl(`perform jumpToPast to ${i.index}`),Vl(s),r(s,i,...a);case n.jumpToFutureType:return s=Hl(l,i.index),Bl(`perform jumpToFuture to ${i.index}`),Vl(s),r(s,i,...a);case n.jumpType:return s=Wl(l,i.index),Bl(`perform jump to ${i.index}`),Vl(s),r(s,i,...a);case function(e,t){return t.indexOf(e)>-1?e:!e}(i.type,n.clearHistoryType):return s=zl(l.present,n.ignoreInitialState),Bl("perform clearHistory"),Vl(s),r(s,i,...a);default:if(s=e(l.present,i,...a),n.initTypes.some(e=>e===i.type))return Bl("reset history due to init action"),Vl(o),o;if(l._latestUnfiltered===s)return l;if("function"==typeof n.filter&&!n.filter(i,s,l)){const e=jl(l.past,s,l.future,l.group);return n.syncFilter||(e._latestUnfiltered=l._latestUnfiltered),Bl("filter ignored action, not storing it in past"),Vl(e),e}const t=n.groupBy(i,s,l);if(null!=t&&t===l.group){const e=jl(l.past,s,l.future,l.group);return Bl("groupBy grouped the action with the previous action"),Vl(e),e}return l=function(e,t,n,r){const o=e.past.length+1;Bl("inserting",t),Bl("new free: ",n-o);const{past:i,_latestUnfiltered:a}=e,s=n&&n<=o,l=i.slice(s?1:0);return jl(null!=a?[...l,a]:l,t,[],r)}(l,s,n.limit,t),Bl("inserted new state into history"),Vl(l),l}}}const Gl=e=>({type:"CHANGE_MARKS",marks:e}),Yl=r,Kl=t,{Typography:Xl}=l,{Button:Jl}=l,{Radio:Zl}=l,{styled:Ql}=i;class ec extends Yl.Component{constructor(...e){super(...e),ec.prototype.__init.call(this),ec.prototype.__init2.call(this)}static __initStatic(){this.propTypes={gssLineData:Kl.object,disabled:Kl.bool,onChange:Kl.func}}__init(){this.onChangeRadioValue=e=>{let{gssLineData:t,onChange:n}=this.props,r=t.selectedTool;t.selectedTool=e.target.value,n(t,r)}}__init2(){this.lineTypeChange=(e,t)=>{let{gssLineData:n,onChange:r}=this.props,o=n.selectedTool;n[`line${e}`].lineType=t,r(n,o)}}render(){const{gssLineData:e,disabled:t}=this.props;return Yl.createElement(tc,null,Yl.createElement("div",{className:"selectLineRadioGroup"},Yl.createElement("div",{className:"radioFieldOuter"},Yl.createElement("div",{className:"radioFieldInner"},Yl.createElement(Zl,{name:"select-line-radio-buttons",onChange:this.onChangeRadioValue,value:"lineA",disabled:!!t,checked:"lineA"===e.selectedTool,className:"lineTypeRadio"}),Yl.createElement(Xl,{className:"lineNameFont"},"Line A")),Yl.createElement("div",{className:"radioFieldButtons"},Yl.createElement(Jl,{size:"small",variant:"contained",color:"Solid"===e.lineA.lineType?"primary":"inherit",disabled:!!t,onClick:()=>this.lineTypeChange("A","Solid"),className:"Solid"===e.lineA.lineType?t?"lineTypeButtonLeftSelectedDisabled":"lineTypeButtonLeftSelected":t?"lineTypeButtonLeftUnSelectedDisabled":"lineTypeButtonLeftUnSelected"},"Solid"===e.lineA.lineType&&"✔"," Solid"),Yl.createElement(Jl,{size:"small",variant:"contained",color:"Dashed"===e.lineA.lineType?"primary":"inherit",disabled:!!t,onClick:()=>this.lineTypeChange("A","Dashed"),className:"Dashed"===e.lineA.lineType?t?"lineTypeButtonRightSelectedDisabled":"lineTypeButtonRightSelected":t?"lineTypeButtonRightUnSelectedDisabled":"lineTypeButtonRightUnSelected"},"Dashed"===e.lineA.lineType&&"✔"," Dashed"))),2===e.numberOfLines&&Yl.createElement("div",{className:"radioFieldOuter"},Yl.createElement("div",{className:"radioFieldInner"},Yl.createElement(Zl,{name:"select-line-radio-buttons",onChange:this.onChangeRadioValue,value:"lineB",disabled:!!t,checked:"lineB"===e.selectedTool,className:"lineTypeRadio"}),Yl.createElement(Xl,{className:"lineNameFont"},"Line B")),Yl.createElement("div",{className:"radioFieldButtons"},Yl.createElement(Jl,{size:"small",variant:"contained",color:"Solid"===e.lineB.lineType?"primary":"inherit",disabled:!!t,onClick:()=>this.lineTypeChange("B","Solid"),className:"Solid"===e.lineB.lineType?t?"lineTypeButtonLeftSelectedDisabled":"lineTypeButtonLeftSelected":t?"lineTypeButtonLeftUnSelectedDisabled":"lineTypeButtonLeftUnSelected"},"Solid"===e.lineB.lineType&&"✔"," Solid"),Yl.createElement(Jl,{size:"small",variant:"contained",color:"Dashed"===e.lineB.lineType?"primary":"inherit",disabled:!!t,onClick:()=>this.lineTypeChange("B","Dashed"),className:"Dashed"===e.lineB.lineType?t?"lineTypeButtonRightSelectedDisabled":"lineTypeButtonRightSelected":t?"lineTypeButtonRightUnSelectedDisabled":"lineTypeButtonRightUnSelected"},"Dashed"===e.lineB.lineType&&"✔"," Dashed"))),Yl.createElement("div",{className:"radioFieldOuter"},Yl.createElement("div",{className:"radioFieldInner"},Yl.createElement(Zl,{name:"select-line-radio-buttons",onChange:this.onChangeRadioValue,value:"solutionSet",disabled:!!t,checked:"solutionSet"===e.selectedTool,className:"lineTypeRadio"}),Yl.createElement(Xl,{className:"lineNameFont"},"Solution Set")))))}}ec.__initStatic();const tc=Ql("div")(()=>({"& .selectLineRadioGroup":{display:"flex",flexWrap:"wrap",flexDirection:"row"},"& .radioFieldOuter":{display:"flex",flexWrap:"wrap",flexDirection:"column"},"& .radioFieldInner":{display:"flex",flexWrap:"wrap",flexDirection:"row",alignItems:"center"},"& .radioFieldButtons":{display:"flex",flexWrap:"wrap",flexDirection:"row",padding:"0 .9rem"},"& .lineNameFont":{fontWeight:"bold",padding:"0 5px 0 0"},"& .lineTypeRadio":{color:"#000000 !important"},"& .lineTypeButtonLeftSelected":{textTransform:"none",border:"1px solid #3E4EB1",backgroundColor:"#3E4EB1 !important",color:"#FFFFFF !important",borderRadius:"4px 0 0 4px"},"& .lineTypeButtonLeftUnSelected":{textTransform:"none",border:"1px solid #3E4EB1",backgroundColor:"#FFFFFF !important",color:"#3E4EB1 !important",borderRadius:"4px 0 0 4px"},"& .lineTypeButtonRightSelected":{textTransform:"none",border:"1px solid #3E4EB1",backgroundColor:"#3E4EB1 !important",color:"#FFFFFF !important",borderRadius:"0 4px 4px 0"},"& .lineTypeButtonRightUnSelected":{textTransform:"none",border:"1px solid #3E4EB1",backgroundColor:"#FFFFFF !important",color:"#3E4EB1 !important",borderRadius:"0 4px 4px 0"},"& .lineTypeButtonLeftSelectedDisabled, & .lineTypeButtonRightSelectedDisabled":{backgroundColor:"#3E4EB1 !important",color:"#FFFFFF !important",cursor:"default",pointerEvents:"none"},"& .lineTypeButtonLeftUnSelectedDisabled, & .lineTypeButtonRightUnSelectedDisabled":{backgroundColor:"#FFFFFF !important",color:"#3E4EB1 !important",cursor:"default",pointerEvents:"none"}}));function nc(e,t){return null!=e?e:t()}function rc(e){let t,n=e[0],r=1;for(;r<e.length;){const o=e[r],i=e[r+1];if(r+=2,("optionalAccess"===o||"optionalCall"===o)&&null==n)return;"access"===o||"optionalAccess"===o?(t=n,n=i(n)):"call"!==o&&"optionalCall"!==o||(n=i((...e)=>n.call(t,...e)),t=void 0)}return n}const oc=e=>"string"==typeof e,ic=()=>{let e,t;const n=new Promise((n,r)=>{e=n,t=r});return n.resolve=e,n.reject=t,n},ac=e=>null==e?"":""+e,sc=/###/g,lc=e=>e&&e.indexOf("###")>-1?e.replace(sc,"."):e,cc=e=>!e||oc(e),uc=(e,t,n)=>{const r=oc(t)?t.split("."):t;let o=0;for(;o<r.length-1;){if(cc(e))return{};const t=lc(r[o]);!e[t]&&n&&(e[t]=new n),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{},++o}return cc(e)?{}:{obj:e,k:lc(r[o])}},pc=(e,t,n)=>{const{obj:r,k:o}=uc(e,t,Object);if(void 0!==r||1===t.length)return void(r[o]=n);let i=t[t.length-1],a=t.slice(0,t.length-1),s=uc(e,a,Object);for(;void 0===s.obj&&a.length;)i=`${a[a.length-1]}.${i}`,a=a.slice(0,a.length-1),s=uc(e,a,Object),rc([s,"optionalAccess",e=>e.obj])&&void 0!==s.obj[`${s.k}.${i}`]&&(s.obj=void 0);s.obj[`${s.k}.${i}`]=n},hc=(e,t)=>{const{obj:n,k:r}=uc(e,t);if(n&&Object.prototype.hasOwnProperty.call(n,r))return n[r]},dc=(e,t,n)=>{for(const r in t)"__proto__"!==r&&"constructor"!==r&&(r in e?oc(e[r])||e[r]instanceof String||oc(t[r])||t[r]instanceof String?n&&(e[r]=t[r]):dc(e[r],t[r],n):e[r]=t[r]);return e},fc=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var gc={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};const mc=e=>oc(e)?e.replace(/[&<>"'\/]/g,e=>gc[e]):e,yc=[" ",",","?","!",";"],bc=new class{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){const t=this.regExpMap.get(e);if(void 0!==t)return t;const n=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,n),this.regExpQueue.push(e),n}}(20),vc=(e,t,n=".")=>{if(!e)return;if(e[t]){if(!Object.prototype.hasOwnProperty.call(e,t))return;return e[t]}const r=t.split(n);let o=e;for(let e=0;e<r.length;){if(!o||"object"!=typeof o)return;let t,i="";for(let a=e;a<r.length;++a)if(a!==e&&(i+=n),i+=r[a],t=o[i],void 0!==t){if(["string","number","boolean"].indexOf(typeof t)>-1&&a<r.length-1)continue;e+=a-e+1;break}o=t}return o},xc=e=>rc([e,"optionalAccess",e=>e.replace,"call",e=>e("_","-")]),wc={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){rc([console,"optionalAccess",t=>t[e],"optionalAccess",e=>e.apply,"optionalCall",e=>e(console,t)])}};class Sc{constructor(e,t={}){this.init(e,t)}init(e,t={}){this.prefix=t.prefix||"i18next:",this.logger=e||wc,this.options=t,this.debug=t.debug}log(...e){return this.forward(e,"log","",!0)}warn(...e){return this.forward(e,"warn","",!0)}error(...e){return this.forward(e,"error","")}deprecate(...e){return this.forward(e,"warn","WARNING DEPRECATED: ",!0)}forward(e,t,n,r){return r&&!this.debug?null:(oc(e[0])&&(e[0]=`${n}${this.prefix} ${e[0]}`),this.logger[t](e))}create(e){return new Sc(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return(e=e||this.options).prefix=e.prefix||this.prefix,new Sc(this.logger,e)}}var _c=new Sc;class kc{constructor(){this.observers={}}on(e,t){return e.split(" ").forEach(e=>{this.observers[e]||(this.observers[e]=new Map);const n=this.observers[e].get(t)||0;this.observers[e].set(t,n+1)}),this}off(e,t){this.observers[e]&&(t?this.observers[e].delete(t):delete this.observers[e])}emit(e,...t){this.observers[e]&&Array.from(this.observers[e].entries()).forEach(([e,n])=>{for(let r=0;r<n;r++)e(...t)}),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach(([n,r])=>{for(let o=0;o<r;o++)n.apply(n,[e,...t])})}}class Cc extends kc{constructor(e,t={ns:["translation"],defaultNS:"translation"}){super(),this.data=e||{},this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),void 0===this.options.ignoreJSONStructure&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}removeNamespaces(e){const t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,n,r={}){const o=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator,i=void 0!==r.ignoreJSONStructure?r.ignoreJSONStructure:this.options.ignoreJSONStructure;let a;e.indexOf(".")>-1?a=e.split("."):(a=[e,t],n&&(Array.isArray(n)?a.push(...n):oc(n)&&o?a.push(...n.split(o)):a.push(n)));const s=hc(this.data,a);return!s&&!t&&!n&&e.indexOf(".")>-1&&(e=a[0],t=a[1],n=a.slice(2).join(".")),!s&&i&&oc(n)?vc(rc([this,"access",e=>e.data,"optionalAccess",t=>t[e],"optionalAccess",e=>e[t]]),n,o):s}addResource(e,t,n,r,o={silent:!1}){const i=void 0!==o.keySeparator?o.keySeparator:this.options.keySeparator;let a=[e,t];n&&(a=a.concat(i?n.split(i):n)),e.indexOf(".")>-1&&(a=e.split("."),r=t,t=a[1]),this.addNamespaces(t),pc(this.data,a,r),o.silent||this.emit("added",e,t,n,r)}addResources(e,t,n,r={silent:!1}){for(const r in n)(oc(n[r])||Array.isArray(n[r]))&&this.addResource(e,t,r,n[r],{silent:!0});r.silent||this.emit("added",e,t,n)}addResourceBundle(e,t,n,r,o,i={silent:!1,skipCopy:!1}){let a=[e,t];e.indexOf(".")>-1&&(a=e.split("."),r=n,n=t,t=a[1]),this.addNamespaces(t);let s=hc(this.data,a)||{};i.skipCopy||(n=JSON.parse(JSON.stringify(n))),r?dc(s,n,o):s={...s,...n},pc(this.data,a,s),i.silent||this.emit("added",e,t,n)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}hasResourceBundle(e,t){return void 0!==this.getResource(e,t)}getResourceBundle(e,t){return t||(t=this.options.defaultNS),this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){const t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find(e=>t[e]&&Object.keys(t[e]).length>0)}toJSON(){return this.data}}var Ec={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,o){return e.forEach(e=>{t=nc(rc([this,"access",e=>e.processors,"access",t=>t[e],"optionalAccess",e=>e.process,"call",e=>e(t,n,r,o)]),()=>t)}),t}};const Oc=Symbol("i18next/PATH_KEY");function Pc(e,t){const{[Oc]:n}=e(function(){const e=[],t=Object.create(null);let n;return t.get=(r,o)=>(rc([n,"optionalAccess",e=>e.revoke,"optionalCall",e=>e()]),o===Oc?e:(e.push(o),n=Proxy.revocable(r,t),n.proxy)),Proxy.revocable(Object.create(null),t).proxy}());return n.join(nc(rc([t,"optionalAccess",e=>e.keySeparator]),()=>"."))}const Tc={},Ac=e=>!oc(e)&&"boolean"!=typeof e&&"number"!=typeof e;class Lc extends kc{constructor(e,t={}){super(),((e,t,n)=>{["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"].forEach(e=>{t[e]&&(n[e]=t[e])})})(0,e,this),this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),this.logger=_c.create("translator")}changeLanguage(e){e&&(this.language=e)}exists(e,t={interpolation:{}}){const n={...t};if(null==e)return!1;const r=this.resolve(e,n);if(void 0===rc([r,"optionalAccess",e=>e.res]))return!1;const o=Ac(r.res);return!1!==n.returnObjects||!o}extractFromKey(e,t){let n=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===n&&(n=":");const r=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator;let o=t.ns||this.options.defaultNS||[];const i=n&&e.indexOf(n)>-1,a=!(this.options.userDefinedKeySeparator||t.keySeparator||this.options.userDefinedNsSeparator||t.nsSeparator||((e,t,n)=>{t=t||"",n=n||"";const r=yc.filter(e=>t.indexOf(e)<0&&n.indexOf(e)<0);if(0===r.length)return!0;const o=bc.getRegExp(`(${r.map(e=>"?"===e?"\\?":e).join("|")})`);let i=!o.test(e);if(!i){const t=e.indexOf(n);t>0&&!o.test(e.substring(0,t))&&(i=!0)}return i})(e,n,r));if(i&&!a){const t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:oc(o)?[o]:o};const i=e.split(n);(n!==r||n===r&&this.options.ns.indexOf(i[0])>-1)&&(o=i.shift()),e=i.join(r)}return{key:e,namespaces:oc(o)?[o]:o}}translate(e,t,n){let r="object"==typeof t?{...t}:t;if("object"!=typeof r&&this.options.overloadTranslationOptionHandler&&(r=this.options.overloadTranslationOptionHandler(arguments)),"object"==typeof r&&(r={...r}),r||(r={}),null==e)return"";"function"==typeof e&&(e=Pc(e,{...this.options,...r})),Array.isArray(e)||(e=[String(e)]);const o=void 0!==r.returnDetails?r.returnDetails:this.options.returnDetails,i=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator,{key:a,namespaces:s}=this.extractFromKey(e[e.length-1],r),l=s[s.length-1];let c=void 0!==r.nsSeparator?r.nsSeparator:this.options.nsSeparator;void 0===c&&(c=":");const u=r.lng||this.language,p=r.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if("cimode"===rc([u,"optionalAccess",e=>e.toLowerCase,"call",e=>e()]))return p?o?{res:`${l}${c}${a}`,usedKey:a,exactUsedKey:a,usedLng:u,usedNS:l,usedParams:this.getUsedParamsDetails(r)}:`${l}${c}${a}`:o?{res:a,usedKey:a,exactUsedKey:a,usedLng:u,usedNS:l,usedParams:this.getUsedParamsDetails(r)}:a;const h=this.resolve(e,r);let d=rc([h,"optionalAccess",e=>e.res]);const f=rc([h,"optionalAccess",e=>e.usedKey])||a,g=rc([h,"optionalAccess",e=>e.exactUsedKey])||a,m=void 0!==r.joinArrays?r.joinArrays:this.options.joinArrays,y=!this.i18nFormat||this.i18nFormat.handleAsObject,b=void 0!==r.count&&!oc(r.count),v=Lc.hasDefaultValue(r),x=b?this.pluralResolver.getSuffix(u,r.count,r):"",w=r.ordinal&&b?this.pluralResolver.getSuffix(u,r.count,{ordinal:!1}):"",S=b&&!r.ordinal&&0===r.count,_=S&&r[`defaultValue${this.options.pluralSeparator}zero`]||r[`defaultValue${x}`]||r[`defaultValue${w}`]||r.defaultValue;let k=d;y&&!d&&v&&(k=_);const C=Ac(k),E=Object.prototype.toString.apply(k);if(!(y&&k&&C&&["[object Number]","[object Function]","[object RegExp]"].indexOf(E)<0)||oc(m)&&Array.isArray(k))if(y&&oc(m)&&Array.isArray(d))d=d.join(m),d&&(d=this.extendTranslation(d,e,r,n));else{let t=!1,o=!1;!this.isValidLookup(d)&&v&&(t=!0,d=_),this.isValidLookup(d)||(o=!0,d=a);const s=(r.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&o?void 0:d,p=v&&_!==d&&this.options.updateMissing;if(o||t||p){if(this.logger.log(p?"updateKey":"missingKey",u,l,a,p?_:d),i){const e=this.resolve(a,{...r,keySeparator:!1});e&&e.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let e=[];const t=this.languageUtils.getFallbackCodes(this.options.fallbackLng,r.lng||this.language);if("fallback"===this.options.saveMissingTo&&t&&t[0])for(let n=0;n<t.length;n++)e.push(t[n]);else"all"===this.options.saveMissingTo?e=this.languageUtils.toResolveHierarchy(r.lng||this.language):e.push(r.lng||this.language);const n=(e,t,n)=>{const o=v&&n!==d?n:s;this.options.missingKeyHandler?this.options.missingKeyHandler(e,l,t,o,p,r):rc([this,"access",e=>e.backendConnector,"optionalAccess",e=>e.saveMissing])&&this.backendConnector.saveMissing(e,l,t,o,p,r),this.emit("missingKey",e,l,t,d)};this.options.saveMissing&&(this.options.saveMissingPlurals&&b?e.forEach(e=>{const t=this.pluralResolver.getSuffixes(e,r);S&&r[`defaultValue${this.options.pluralSeparator}zero`]&&t.indexOf(`${this.options.pluralSeparator}zero`)<0&&t.push(`${this.options.pluralSeparator}zero`),t.forEach(t=>{n([e],a+t,r[`defaultValue${t}`]||_)})}):n(e,a,_))}d=this.extendTranslation(d,e,r,h,n),o&&d===a&&this.options.appendNamespaceToMissingKey&&(d=`${l}${c}${a}`),(o||t)&&this.options.parseMissingKeyHandler&&(d=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}${c}${a}`:a,t?d:void 0,r))}else{if(!r.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(f,k,{...r,ns:s}):`key '${a} (${this.language})' returned an object instead of string.`;return o?(h.res=e,h.usedParams=this.getUsedParamsDetails(r),h):e}if(i){const e=Array.isArray(k),t=e?[]:{},n=e?g:f;for(const e in k)if(Object.prototype.hasOwnProperty.call(k,e)){const o=`${n}${i}${e}`;t[e]=v&&!d?this.translate(o,{...r,defaultValue:Ac(_)?_[e]:void 0,joinArrays:!1,ns:s}):this.translate(o,{...r,joinArrays:!1,ns:s}),t[e]===o&&(t[e]=k[e])}d=t}}return o?(h.res=d,h.usedParams=this.getUsedParamsDetails(r),h):d}extendTranslation(e,t,n,r,o){if(rc([this,"access",e=>e.i18nFormat,"optionalAccess",e=>e.parse]))e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||r.usedLng,r.usedNS,r.usedKey,{resolved:r});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});const i=oc(e)&&(void 0!==rc([n,"optionalAccess",e=>e.interpolation,"optionalAccess",e=>e.skipOnVariables])?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let a;if(i){const t=e.match(this.interpolator.nestingRegexp);a=t&&t.length}let s=n.replace&&!oc(n.replace)?n.replace:n;if(this.options.interpolation.defaultVariables&&(s={...this.options.interpolation.defaultVariables,...s}),e=this.interpolator.interpolate(e,s,n.lng||this.language||r.usedLng,n),i){const t=e.match(this.interpolator.nestingRegexp);a<(t&&t.length)&&(n.nest=!1)}!n.lng&&r&&r.res&&(n.lng=this.language||r.usedLng),!1!==n.nest&&(e=this.interpolator.nest(e,(...e)=>rc([o,"optionalAccess",e=>e[0]])!==e[0]||n.context?this.translate(...e,t):(this.logger.warn(`It seems you are nesting recursively key: ${e[0]} in key: ${t[0]}`),null),n)),n.interpolation&&this.interpolator.reset()}const i=n.postProcess||this.options.postProcess,a=oc(i)?[i]:i;return null!=e&&rc([a,"optionalAccess",e=>e.length])&&!1!==n.applyPostProcessor&&(e=Ec.handle(a,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...r,usedParams:this.getUsedParamsDetails(n)},...n}:n,this)),e}resolve(e,t={}){let n,r,o,i,a;return oc(e)&&(e=[e]),e.forEach(e=>{if(this.isValidLookup(n))return;const s=this.extractFromKey(e,t),l=s.key;r=l;let c=s.namespaces;this.options.fallbackNS&&(c=c.concat(this.options.fallbackNS));const u=void 0!==t.count&&!oc(t.count),p=u&&!t.ordinal&&0===t.count,h=void 0!==t.context&&(oc(t.context)||"number"==typeof t.context)&&""!==t.context,d=t.lngs?t.lngs:this.languageUtils.toResolveHierarchy(t.lng||this.language,t.fallbackLng);c.forEach(e=>{this.isValidLookup(n)||(a=e,Tc[`${d[0]}-${e}`]||!rc([this,"access",e=>e.utils,"optionalAccess",e=>e.hasLoadedNamespace])||rc([this,"access",e=>e.utils,"optionalAccess",e=>e.hasLoadedNamespace,"call",e=>e(a)])||(Tc[`${d[0]}-${e}`]=!0,this.logger.warn(`key "${r}" for languages "${d.join(", ")}" won't get resolved as namespace "${a}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),d.forEach(r=>{if(this.isValidLookup(n))return;i=r;const a=[l];if(rc([this,"access",e=>e.i18nFormat,"optionalAccess",e=>e.addLookupKeys]))this.i18nFormat.addLookupKeys(a,l,r,e,t);else{let e;u&&(e=this.pluralResolver.getSuffix(r,t.count,t));const n=`${this.options.pluralSeparator}zero`,o=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(u&&(t.ordinal&&0===e.indexOf(o)&&a.push(l+e.replace(o,this.options.pluralSeparator)),a.push(l+e),p&&a.push(l+n)),h){const r=`${l}${this.options.contextSeparator||"_"}${t.context}`;a.push(r),u&&(t.ordinal&&0===e.indexOf(o)&&a.push(r+e.replace(o,this.options.pluralSeparator)),a.push(r+e),p&&a.push(r+n))}}let s;for(;s=a.pop();)this.isValidLookup(n)||(o=s,n=this.getResource(r,e,s,t))}))})}),{res:n,usedKey:r,exactUsedKey:o,usedLng:i,usedNS:a}}isValidLookup(e){return!(void 0===e||!this.options.returnNull&&null===e||!this.options.returnEmptyString&&""===e)}getResource(e,t,n,r={}){return rc([this,"access",e=>e.i18nFormat,"optionalAccess",e=>e.getResource])?this.i18nFormat.getResource(e,t,n,r):this.resourceStore.getResource(e,t,n,r)}getUsedParamsDetails(e={}){const t=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],n=e.replace&&!oc(e.replace);let r=n?e.replace:e;if(n&&void 0!==e.count&&(r.count=e.count),this.options.interpolation.defaultVariables&&(r={...this.options.interpolation.defaultVariables,...r}),!n){r={...r};for(const e of t)delete r[e]}return r}static hasDefaultValue(e){for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&"defaultValue"===t.substring(0,12)&&void 0!==e[t])return!0;return!1}}class Nc{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=_c.create("languageUtils")}getScriptPartFromCode(e){if(!(e=xc(e))||e.indexOf("-")<0)return null;const t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}getLanguagePartFromCode(e){if(!(e=xc(e))||e.indexOf("-")<0)return e;const t=e.split("-");return this.formatLanguageCode(t[0])}formatLanguageCode(e){if(oc(e)&&e.indexOf("-")>-1){let t;try{t=Intl.getCanonicalLocales(e)[0]}catch(e){}return t&&this.options.lowerCaseLng&&(t=t.toLowerCase()),t||(this.options.lowerCaseLng?e.toLowerCase():e)}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach(e=>{if(t)return;const n=this.formatLanguageCode(e);this.options.supportedLngs&&!this.isSupportedCode(n)||(t=n)}),!t&&this.options.supportedLngs&&e.forEach(e=>{if(t)return;const n=this.getScriptPartFromCode(e);if(this.isSupportedCode(n))return t=n;const r=this.getLanguagePartFromCode(e);if(this.isSupportedCode(r))return t=r;t=this.options.supportedLngs.find(e=>e===r?e:e.indexOf("-")<0&&r.indexOf("-")<0?void 0:e.indexOf("-")>0&&r.indexOf("-")<0&&e.substring(0,e.indexOf("-"))===r||0===e.indexOf(r)&&r.length>1?e:void 0)}),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t}getFallbackCodes(e,t){if(!e)return[];if("function"==typeof e&&(e=e(t)),oc(e)&&(e=[e]),Array.isArray(e))return e;if(!t)return e.default||[];let n=e[t];return n||(n=e[this.getScriptPartFromCode(t)]),n||(n=e[this.formatLanguageCode(t)]),n||(n=e[this.getLanguagePartFromCode(t)]),n||(n=e.default),n||[]}toResolveHierarchy(e,t){const n=this.getFallbackCodes((!1===t?[]:t)||this.options.fallbackLng||[],e),r=[],o=e=>{e&&(this.isSupportedCode(e)?r.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return oc(e)&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?("languageOnly"!==this.options.load&&o(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&o(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&o(this.getLanguagePartFromCode(e))):oc(e)&&o(this.formatLanguageCode(e)),n.forEach(e=>{r.indexOf(e)<0&&o(this.formatLanguageCode(e))}),r}}const Mc={zero:0,one:1,two:2,few:3,many:4,other:5},Rc={select:e=>1===e?"one":"other",resolvedOptions:()=>({pluralCategories:["one","other"]})};class Dc{constructor(e,t={}){this.languageUtils=e,this.options=t,this.logger=_c.create("pluralResolver"),this.pluralRulesCache={}}clearCache(){this.pluralRulesCache={}}getRule(e,t={}){const n=xc("dev"===e?"en":e),r=t.ordinal?"ordinal":"cardinal",o=JSON.stringify({cleanedCode:n,type:r});if(o in this.pluralRulesCache)return this.pluralRulesCache[o];let i;try{i=new Intl.PluralRules(n,{type:r})}catch(n){if(!Intl)return this.logger.error("No Intl support, please use an Intl polyfill!"),Rc;if(!e.match(/-|_/))return Rc;const r=this.languageUtils.getLanguagePartFromCode(e);i=this.getRule(r,t)}return this.pluralRulesCache[o]=i,i}needsPlural(e,t={}){let n=this.getRule(e,t);return n||(n=this.getRule("dev",t)),rc([n,"optionalAccess",e=>e.resolvedOptions,"call",e=>e(),"access",e=>e.pluralCategories,"access",e=>e.length])>1}getPluralFormsOfKey(e,t,n={}){return this.getSuffixes(e,n).map(e=>`${t}${e}`)}getSuffixes(e,t={}){let n=this.getRule(e,t);return n||(n=this.getRule("dev",t)),n?n.resolvedOptions().pluralCategories.sort((e,t)=>Mc[e]-Mc[t]).map(e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:""}${e}`):[]}getSuffix(e,t,n={}){const r=this.getRule(e,n);return r?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${r.select(t)}`:(this.logger.warn(`no plural rule found for: ${e}`),this.getSuffix("dev",t,n))}}const jc=(e,t,n,r=".",o=!0)=>{let i=((e,t,n)=>{const r=hc(e,n);return void 0!==r?r:hc(t,n)})(e,t,n);return!i&&o&&oc(n)&&(i=vc(e,n,r),void 0===i&&(i=vc(t,n,r))),i},$c=e=>e.replace(/\$/g,"$$$$");class Ic{constructor(e={}){this.logger=_c.create("interpolator"),this.options=e,this.format=rc([e,"optionalAccess",e=>e.interpolation,"optionalAccess",e=>e.format])||(e=>e),this.init(e)}init(e={}){e.interpolation||(e.interpolation={escapeValue:!0});const{escape:t,escapeValue:n,useRawValueToEscape:r,prefix:o,prefixEscaped:i,suffix:a,suffixEscaped:s,formatSeparator:l,unescapeSuffix:c,unescapePrefix:u,nestingPrefix:p,nestingPrefixEscaped:h,nestingSuffix:d,nestingSuffixEscaped:f,nestingOptionsSeparator:g,maxReplaces:m,alwaysFormat:y}=e.interpolation;this.escape=void 0!==t?t:mc,this.escapeValue=void 0===n||n,this.useRawValueToEscape=void 0!==r&&r,this.prefix=o?fc(o):i||"{{",this.suffix=a?fc(a):s||"}}",this.formatSeparator=l||",",this.unescapePrefix=c?"":u||"-",this.unescapeSuffix=this.unescapePrefix?"":c||"",this.nestingPrefix=p?fc(p):h||fc("$t("),this.nestingSuffix=d?fc(d):f||fc(")"),this.nestingOptionsSeparator=g||",",this.maxReplaces=m||1e3,this.alwaysFormat=void 0!==y&&y,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const e=(e,t)=>rc([e,"optionalAccess",e=>e.source])===t?(e.lastIndex=0,e):new RegExp(t,"g");this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}((?:[^()"']+|"[^"]*"|'[^']*'|\\((?:[^()]|"[^"]*"|'[^']*')*\\))*?)${this.nestingSuffix}`)}interpolate(e,t,n,r){let o,i,a;const s=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},l=e=>{if(e.indexOf(this.formatSeparator)<0){const o=jc(t,s,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(o,void 0,n,{...r,...t,interpolationkey:e}):o}const o=e.split(this.formatSeparator),i=o.shift().trim(),a=o.join(this.formatSeparator).trim();return this.format(jc(t,s,i,this.options.keySeparator,this.options.ignoreJSONStructure),a,n,{...r,...t,interpolationkey:i})};this.resetRegExp();const c=rc([r,"optionalAccess",e=>e.missingInterpolationHandler])||this.options.missingInterpolationHandler,u=void 0!==rc([r,"optionalAccess",e=>e.interpolation,"optionalAccess",e=>e.skipOnVariables])?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>$c(e)},{regex:this.regexp,safeValue:e=>this.escapeValue?$c(this.escape(e)):$c(e)}].forEach(t=>{for(a=0;o=t.regex.exec(e);){const n=o[1].trim();if(i=l(n),void 0===i)if("function"==typeof c){const t=c(e,o,r);i=oc(t)?t:""}else if(r&&Object.prototype.hasOwnProperty.call(r,n))i="";else{if(u){i=o[0];continue}this.logger.warn(`missed to pass in variable ${n} for interpolating ${e}`),i=""}else oc(i)||this.useRawValueToEscape||(i=ac(i));const s=t.safeValue(i);if(e=e.replace(o[0],s),u?(t.regex.lastIndex+=i.length,t.regex.lastIndex-=o[0].length):t.regex.lastIndex=0,a++,a>=this.maxReplaces)break}}),e}nest(e,t,n={}){let r,o,i;const a=(e,t)=>{const n=this.nestingOptionsSeparator;if(e.indexOf(n)<0)return e;const r=e.split(new RegExp(`${n}[ ]*{`));let o=`{${r[1]}`;e=r[0],o=this.interpolate(o,i);const a=o.match(/'/g),s=o.match(/"/g);(nc(rc([a,"optionalAccess",e=>e.length]),()=>0)%2==0&&!s||s.length%2!=0)&&(o=o.replace(/'/g,'"'));try{i=JSON.parse(o),t&&(i={...t,...i})}catch(t){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,t),`${e}${n}${o}`}return i.defaultValue&&i.defaultValue.indexOf(this.prefix)>-1&&delete i.defaultValue,e};for(;r=this.nestingRegexp.exec(e);){let s=[];i={...n},i=i.replace&&!oc(i.replace)?i.replace:i,i.applyPostProcessor=!1,delete i.defaultValue;const l=/{.*}/.test(r[1])?r[1].lastIndexOf("}")+1:r[1].indexOf(this.formatSeparator);if(-1!==l&&(s=r[1].slice(l).split(this.formatSeparator).map(e=>e.trim()).filter(Boolean),r[1]=r[1].slice(0,l)),o=t(a.call(this,r[1].trim(),i),i),o&&r[0]===e&&!oc(o))return o;oc(o)||(o=ac(o)),o||(this.logger.warn(`missed to resolve ${r[1]} for nesting ${e}`),o=""),s.length&&(o=s.reduce((e,t)=>this.format(e,t,n.lng,{...n,interpolationkey:r[1].trim()}),o.trim())),e=e.replace(r[0],o),this.regexp.lastIndex=0}return e}}const Fc=e=>{const t={};return(n,r,o)=>{let i=o;o&&o.interpolationkey&&o.formatParams&&o.formatParams[o.interpolationkey]&&o[o.interpolationkey]&&(i={...i,[o.interpolationkey]:void 0});const a=r+JSON.stringify(i);let s=t[a];return s||(s=e(xc(r),o),t[a]=s),s(n)}},Vc=e=>(t,n,r)=>e(xc(n),r)(t);class Bc{constructor(e={}){this.logger=_c.create("formatter"),this.options=e,this.init(e)}init(e,t={interpolation:{}}){this.formatSeparator=t.interpolation.formatSeparator||",";const n=t.cacheInBuiltFormats?Fc:Vc;this.formats={number:n((e,t)=>{const n=new Intl.NumberFormat(e,{...t});return e=>n.format(e)}),currency:n((e,t)=>{const n=new Intl.NumberFormat(e,{...t,style:"currency"});return e=>n.format(e)}),datetime:n((e,t)=>{const n=new Intl.DateTimeFormat(e,{...t});return e=>n.format(e)}),relativetime:n((e,t)=>{const n=new Intl.RelativeTimeFormat(e,{...t});return e=>n.format(e,t.range||"day")}),list:n((e,t)=>{const n=new Intl.ListFormat(e,{...t});return e=>n.format(e)})}}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=Fc(t)}format(e,t,n,r={}){const o=t.split(this.formatSeparator);if(o.length>1&&o[0].indexOf("(")>1&&o[0].indexOf(")")<0&&o.find(e=>e.indexOf(")")>-1)){const e=o.findIndex(e=>e.indexOf(")")>-1);o[0]=[o[0],...o.splice(1,e)].join(this.formatSeparator)}const i=o.reduce((e,t)=>{const{formatName:o,formatOptions:i}=(e=>{let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const r=e.split("(");t=r[0].toLowerCase().trim();const o=r[1].substring(0,r[1].length-1);"currency"===t&&o.indexOf(":")<0?n.currency||(n.currency=o.trim()):"relativetime"===t&&o.indexOf(":")<0?n.range||(n.range=o.trim()):o.split(";").forEach(e=>{if(e){const[t,...r]=e.split(":"),o=r.join(":").trim().replace(/^'+|'+$/g,""),i=t.trim();n[i]||(n[i]=o),"false"===o&&(n[i]=!1),"true"===o&&(n[i]=!0),isNaN(o)||(n[i]=parseInt(o,10))}})}return{formatName:t,formatOptions:n}})(t);if(this.formats[o]){let t=e;try{const a=rc([r,"optionalAccess",e=>e.formatParams,"optionalAccess",e=>e[r.interpolationkey]])||{},s=a.locale||a.lng||r.locale||r.lng||n;t=this.formats[o](e,s,{...i,...r,...a})}catch(e){this.logger.warn(e)}return t}return this.logger.warn(`there was no format function for ${o}`),e},e);return i}}class zc extends kc{constructor(e,t,n,r={}){super(),this.backend=e,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=r,this.logger=_c.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=r.maxParallelReads||10,this.readingCalls=0,this.maxRetries=r.maxRetries>=0?r.maxRetries:5,this.retryTimeout=r.retryTimeout>=1?r.retryTimeout:350,this.state={},this.queue=[],rc([this,"access",e=>e.backend,"optionalAccess",e=>e.init,"optionalCall",e=>e(n,r.backend,r)])}queueLoad(e,t,n,r){const o={},i={},a={},s={};return e.forEach(e=>{let r=!0;t.forEach(t=>{const a=`${e}|${t}`;!n.reload&&this.store.hasResourceBundle(e,t)?this.state[a]=2:this.state[a]<0||(1===this.state[a]?void 0===i[a]&&(i[a]=!0):(this.state[a]=1,r=!1,void 0===i[a]&&(i[a]=!0),void 0===o[a]&&(o[a]=!0),void 0===s[t]&&(s[t]=!0)))}),r||(a[e]=!0)}),(Object.keys(o).length||Object.keys(i).length)&&this.queue.push({pending:i,pendingCount:Object.keys(i).length,loaded:{},errors:[],callback:r}),{toLoad:Object.keys(o),pending:Object.keys(i),toLoadLanguages:Object.keys(a),toLoadNamespaces:Object.keys(s)}}loaded(e,t,n){const r=e.split("|"),o=r[0],i=r[1];t&&this.emit("failedLoading",o,i,t),!t&&n&&this.store.addResourceBundle(o,i,n,void 0,void 0,{skipCopy:!0}),this.state[e]=t?-1:2,t&&n&&(this.state[e]=0);const a={};this.queue.forEach(n=>{((e,t,n)=>{const{obj:r,k:o}=uc(e,t,Object);r[o]=r[o]||[],r[o].push(n)})(n.loaded,[o],i),((e,t)=>{void 0!==e.pending[t]&&(delete e.pending[t],e.pendingCount--)})(n,e),t&&n.errors.push(t),0!==n.pendingCount||n.done||(Object.keys(n.loaded).forEach(e=>{a[e]||(a[e]={});const t=n.loaded[e];t.length&&t.forEach(t=>{void 0===a[e][t]&&(a[e][t]=!0)})}),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())}),this.emit("loaded",a),this.queue=this.queue.filter(e=>!e.done)}read(e,t,n,r=0,o=this.retryTimeout,i){if(!e.length)return i(null,{});if(this.readingCalls>=this.maxParallelReads)return void this.waitingReads.push({lng:e,ns:t,fcName:n,tried:r,wait:o,callback:i});this.readingCalls++;const a=(a,s)=>{if(this.readingCalls--,this.waitingReads.length>0){const e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}a&&s&&r<this.maxRetries?setTimeout(()=>{this.read.call(this,e,t,n,r+1,2*o,i)},o):i(a,s)},s=this.backend[n].bind(this.backend);if(2!==s.length)return s(e,t,a);try{const n=s(e,t);n&&"function"==typeof n.then?n.then(e=>a(null,e)).catch(a):a(null,n)}catch(e){a(e)}}prepareLoading(e,t,n={},r){if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),r&&r();oc(e)&&(e=this.languageUtils.toResolveHierarchy(e)),oc(t)&&(t=[t]);const o=this.queueLoad(e,t,n,r);if(!o.toLoad.length)return o.pending.length||r(),null;o.toLoad.forEach(e=>{this.loadOne(e)})}load(e,t,n){this.prepareLoading(e,t,{},n)}reload(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}loadOne(e,t=""){const n=e.split("|"),r=n[0],o=n[1];this.read(r,o,"read",void 0,void 0,(n,i)=>{n&&this.logger.warn(`${t}loading namespace ${o} for language ${r} failed`,n),!n&&i&&this.logger.log(`${t}loaded namespace ${o} for language ${r}`,i),this.loaded(e,n,i)})}saveMissing(e,t,n,r,o,i={},a=()=>{}){if(!rc([this,"access",e=>e.services,"optionalAccess",e=>e.utils,"optionalAccess",e=>e.hasLoadedNamespace])||rc([this,"access",e=>e.services,"optionalAccess",e=>e.utils,"optionalAccess",e=>e.hasLoadedNamespace,"call",e=>e(t)])){if(null!=n&&""!==n){if(rc([this,"access",e=>e.backend,"optionalAccess",e=>e.create])){const s={...i,isUpdate:o},l=this.backend.create.bind(this.backend);if(l.length<6)try{let o;o=5===l.length?l(e,t,n,r,s):l(e,t,n,r),o&&"function"==typeof o.then?o.then(e=>a(null,e)).catch(a):a(null,o)}catch(e){a(e)}else l(e,t,n,r,a,s)}e&&e[0]&&this.store.addResource(e[0],t,n,r)}}else this.logger.warn(`did not save key "${n}" as the namespace "${t}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")}}const Hc=()=>({debug:!1,initAsync:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if("object"==typeof e[1]&&(t=e[1]),oc(e[1])&&(t.defaultValue=e[1]),oc(e[2])&&(t.tDescription=e[2]),"object"==typeof e[2]||"object"==typeof e[3]){const n=e[3]||e[2];Object.keys(n).forEach(e=>{t[e]=n[e]})}return t},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0},cacheInBuiltFormats:!0}),qc=e=>(oc(e.ns)&&(e.ns=[e.ns]),oc(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),oc(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),rc([e,"access",e=>e.supportedLngs,"optionalAccess",e=>e.indexOf,"optionalCall",e=>e("cimode")])<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),"boolean"==typeof e.initImmediate&&(e.initAsync=e.initImmediate),e),Wc=()=>{};class Uc extends kc{constructor(e={},t){var n;if(super(),this.options=qc(e),this.services={},this.logger=_c,this.modules={external:[]},n=this,Object.getOwnPropertyNames(Object.getPrototypeOf(n)).forEach(e=>{"function"==typeof n[e]&&(n[e]=n[e].bind(n))}),t&&!this.isInitialized&&!e.isClone){if(!this.options.initAsync)return this.init(e,t),this;setTimeout(()=>{this.init(e,t)},0)}}init(e={},t){this.isInitializing=!0,"function"==typeof e&&(t=e,e={}),null==e.defaultNS&&e.ns&&(oc(e.ns)?e.defaultNS=e.ns:e.ns.indexOf("translation")<0&&(e.defaultNS=e.ns[0]));const n=Hc();var r;this.options={...n,...this.options,...qc(e)},this.options.interpolation={...n.interpolation,...this.options.interpolation},void 0!==e.keySeparator&&(this.options.userDefinedKeySeparator=e.keySeparator),void 0!==e.nsSeparator&&(this.options.userDefinedNsSeparator=e.nsSeparator),"function"!=typeof this.options.overloadTranslationOptionHandler&&(this.options.overloadTranslationOptionHandler=n.overloadTranslationOptionHandler),!1===this.options.showSupportNotice||rc([r=this,"optionalAccess",e=>e.modules,"optionalAccess",e=>e.backend,"optionalAccess",e=>e.name,"optionalAccess",e=>e.indexOf,"call",e=>e("Locize")])>0||rc([r,"optionalAccess",e=>e.modules,"optionalAccess",e=>e.backend,"optionalAccess",e=>e.constructor,"optionalAccess",e=>e.name,"optionalAccess",e=>e.indexOf,"call",e=>e("Locize")])>0||rc([r,"optionalAccess",e=>e.options,"optionalAccess",e=>e.backend,"optionalAccess",e=>e.backends])&&r.options.backend.backends.some(e=>rc([e,"optionalAccess",e=>e.name,"access",e=>e.indexOf,"call",e=>e("Locize")])>0||rc([e,"optionalAccess",e=>e.constructor,"optionalAccess",e=>e.name,"access",e=>e.indexOf,"call",e=>e("Locize")])>0)||"undefined"!=typeof console&&void 0!==console.info&&console.info("🌐 i18next is maintained with support from locize.com — consider powering your project with managed localization (AI, CDN, integrations): https://locize.com 💙");const o=e=>e?"function"==typeof e?new e:e:null;if(!this.options.isClone){let e;this.modules.logger?_c.init(o(this.modules.logger),this.options):_c.init(null,this.options),e=this.modules.formatter?this.modules.formatter:Bc;const t=new Nc(this.options);this.store=new Cc(this.options.resources,this.options);const r=this.services;r.logger=_c,r.resourceStore=this.store,r.languageUtils=t,r.pluralResolver=new Dc(t,{prepend:this.options.pluralSeparator,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),this.options.interpolation.format&&this.options.interpolation.format!==n.interpolation.format&&this.logger.deprecate("init: you are still using the legacy format function, please use the new approach: https://www.i18next.com/translation-function/formatting"),!e||this.options.interpolation.format&&this.options.interpolation.format!==n.interpolation.format||(r.formatter=o(e),r.formatter.init&&r.formatter.init(r,this.options),this.options.interpolation.format=r.formatter.format.bind(r.formatter)),r.interpolator=new Ic(this.options),r.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},r.backendConnector=new zc(o(this.modules.backend),r.resourceStore,r,this.options),r.backendConnector.on("*",(e,...t)=>{this.emit(e,...t)}),this.modules.languageDetector&&(r.languageDetector=o(this.modules.languageDetector),r.languageDetector.init&&r.languageDetector.init(r,this.options.detection,this.options)),this.modules.i18nFormat&&(r.i18nFormat=o(this.modules.i18nFormat),r.i18nFormat.init&&r.i18nFormat.init(this)),this.translator=new Lc(this.services,this.options),this.translator.on("*",(e,...t)=>{this.emit(e,...t)}),this.modules.external.forEach(e=>{e.init&&e.init(this)})}if(this.format=this.options.interpolation.format,t||(t=Wc),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&"dev"!==e[0]&&(this.options.lng=e[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(e=>{this[e]=(...t)=>this.store[e](...t)}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(e=>{this[e]=(...t)=>(this.store[e](...t),this)});const i=ic(),a=()=>{const e=(e,n)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),i.resolve(n),t(e,n)};if(this.languages&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initAsync?a():setTimeout(a,0),i}loadResources(e,t=Wc){let n=t;const r=oc(e)?e:this.language;if("function"==typeof e&&(n=e),!this.options.resources||this.options.partialBundledLanguages){if("cimode"===rc([r,"optionalAccess",e=>e.toLowerCase,"call",e=>e()])&&(!this.options.preload||0===this.options.preload.length))return n();const e=[],t=t=>{t&&"cimode"!==t&&this.services.languageUtils.toResolveHierarchy(t).forEach(t=>{"cimode"!==t&&e.indexOf(t)<0&&e.push(t)})};r?t(r):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(e=>t(e)),rc([this,"access",e=>e.options,"access",e=>e.preload,"optionalAccess",e=>e.forEach,"optionalCall",e=>e(e=>t(e))]),this.services.backendConnector.load(e,this.options.ns,e=>{e||this.resolvedLanguage||!this.language||this.setResolvedLanguage(this.language),n(e)})}else n(null)}reloadResources(e,t,n){const r=ic();return"function"==typeof e&&(n=e,e=void 0),"function"==typeof t&&(n=t,t=void 0),e||(e=this.languages),t||(t=this.options.ns),n||(n=Wc),this.services.backendConnector.reload(e,t,e=>{r.resolve(),n(e)}),r}use(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&Ec.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}setResolvedLanguage(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1)){for(let e=0;e<this.languages.length;e++){const t=this.languages[e];if(!(["cimode","dev"].indexOf(t)>-1)&&this.store.hasLanguageSomeTranslations(t)){this.resolvedLanguage=t;break}}!this.resolvedLanguage&&this.languages.indexOf(e)<0&&this.store.hasLanguageSomeTranslations(e)&&(this.resolvedLanguage=e,this.languages.unshift(e))}}changeLanguage(e,t){this.isLanguageChangingTo=e;const n=ic();this.emit("languageChanging",e);const r=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},o=(o,i)=>{i?this.isLanguageChangingTo===e&&(r(i),this.translator.changeLanguage(i),this.isLanguageChangingTo=void 0,this.emit("languageChanged",i),this.logger.log("languageChanged",i)):this.isLanguageChangingTo=void 0,n.resolve((...e)=>this.t(...e)),t&&t(o,(...e)=>this.t(...e))},i=t=>{e||t||!this.services.languageDetector||(t=[]);const n=oc(t)?t:t&&t[0],i=this.store.hasLanguageSomeTranslations(n)?n:this.services.languageUtils.getBestMatchFromCodes(oc(t)?[t]:t);i&&(this.language||r(i),this.translator.language||this.translator.changeLanguage(i),rc([this,"access",e=>e.services,"access",e=>e.languageDetector,"optionalAccess",e=>e.cacheUserLanguage,"optionalCall",e=>e(i)])),this.loadResources(i,e=>{o(e,i)})};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(i):this.services.languageDetector.detect(i):i(e):i(this.services.languageDetector.detect()),n}getFixedT(e,t,n){const r=(e,t,...o)=>{let i;i="object"!=typeof t?this.options.overloadTranslationOptionHandler([e,t].concat(o)):{...t},i.lng=i.lng||r.lng,i.lngs=i.lngs||r.lngs,i.ns=i.ns||r.ns,""!==i.keyPrefix&&(i.keyPrefix=i.keyPrefix||n||r.keyPrefix);const a=this.options.keySeparator||".";let s;return i.keyPrefix&&Array.isArray(e)?s=e.map(e=>("function"==typeof e&&(e=Pc(e,{...this.options,...t})),`${i.keyPrefix}${a}${e}`)):("function"==typeof e&&(e=Pc(e,{...this.options,...t})),s=i.keyPrefix?`${i.keyPrefix}${a}${e}`:e),this.t(s,i)};return oc(e)?r.lng=e:r.lngs=e,r.ns=t,r.keyPrefix=n,r}t(...e){return rc([this,"access",e=>e.translator,"optionalAccess",e=>e.translate,"call",t=>t(...e)])}exists(...e){return rc([this,"access",e=>e.translator,"optionalAccess",e=>e.exists,"call",t=>t(...e)])}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e,t={}){if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const n=t.lng||this.resolvedLanguage||this.languages[0],r=!!this.options&&this.options.fallbackLng,o=this.languages[this.languages.length-1];if("cimode"===n.toLowerCase())return!0;const i=(e,t)=>{const n=this.services.backendConnector.state[`${e}|${t}`];return-1===n||0===n||2===n};if(t.precheck){const e=t.precheck(this,i);if(void 0!==e)return e}return!(!this.hasResourceBundle(n,e)&&this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages)&&(!i(n,e)||r&&!i(o,e)))}loadNamespaces(e,t){const n=ic();return this.options.ns?(oc(e)&&(e=[e]),e.forEach(e=>{this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}),this.loadResources(e=>{n.resolve(),t&&t(e)}),n):(t&&t(),Promise.resolve())}loadLanguages(e,t){const n=ic();oc(e)&&(e=[e]);const r=this.options.preload||[],o=e.filter(e=>r.indexOf(e)<0&&this.services.languageUtils.isSupportedCode(e));return o.length?(this.options.preload=r.concat(o),this.loadResources(e=>{n.resolve(),t&&t(e)}),n):(t&&t(),Promise.resolve())}dir(e){if(e||(e=this.resolvedLanguage||(rc([this,"access",e=>e.languages,"optionalAccess",e=>e.length])>0?this.languages[0]:this.language)),!e)return"rtl";try{const t=new Intl.Locale(e);if(t&&t.getTextInfo){const e=t.getTextInfo();if(e&&e.direction)return e.direction}}catch(e){}const t=rc([this,"access",e=>e.services,"optionalAccess",e=>e.languageUtils])||new Nc(Hc());return e.toLowerCase().indexOf("-latn")>1?"ltr":["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(t.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(e={},t){const n=new Uc(e,t);return n.createInstance=Uc.createInstance,n}cloneInstance(e={},t=Wc){const n=e.forkResourceStore;n&&delete e.forkResourceStore;const r={...this.options,...e,isClone:!0},o=new Uc(r);if(void 0===e.debug&&void 0===e.prefix||(o.logger=o.logger.clone(e)),["store","services","language"].forEach(e=>{o[e]=this[e]}),o.services={...this.services},o.services.utils={hasLoadedNamespace:o.hasLoadedNamespace.bind(o)},n){const e=Object.keys(this.store.data).reduce((e,t)=>(e[t]={...this.store.data[t]},e[t]=Object.keys(e[t]).reduce((n,r)=>(n[r]={...e[t][r]},n),e[t]),e),{});o.store=new Cc(e,r),o.services.resourceStore=o.store}if(e.interpolation){const t={...Hc().interpolation,...this.options.interpolation,...e.interpolation},n={...r,interpolation:t};o.services.interpolator=new Ic(n)}return o.translator=new Lc(o.services,r),o.translator.on("*",(e,...t)=>{o.emit(e,...t)}),o.init(r,t),o.translator.options=r,o.translator.backendConnector.services.utils={hasLoadedNamespace:o.hasLoadedNamespace.bind(o)},o}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const Gc=Uc.createInstance();Gc.createInstance,Gc.dir,Gc.init,Gc.loadResources,Gc.reloadResources,Gc.use,Gc.changeLanguage,Gc.getFixedT,Gc.t,Gc.exists,Gc.setDefaultNamespace,Gc.hasLoadedNamespace,Gc.loadNamespaces,Gc.loadLanguages,Gc.init({fallbackLng:"en",lng:"en",debug:!0,resources:{en:{translation:{categorize:{limitMaxChoicesPerCategory:"You've reached the limit of {{maxChoicesPerCategory}} responses per area. To add another response, one must first be removed.",maxChoicesPerCategoryRestriction:"To change this value to {{maxChoicesPerCategory}}, each category must have {{maxChoicesPerCategory}} or fewer answer choice[s]."},ebsr:{part:"Part {{index}}"},numberLine:{addElementLimit_one:"You can only add {{count}} element",addElementLimit_other:"You can only add {{count}} elements",clearAll:"Clear all"},imageClozeAssociation:{reachedLimit_one:"You’ve reached the limit of {{count}} response per area. To add another response, one must first be removed.",reachedLimit_other:"Full"},drawingResponse:{fillColor:"Fill color",outlineColor:"Outline color",noFill:"No fill",lightblue:"Light blue",lightyellow:"Light yellow",red:"Red",orange:"Orange",yellow:"Yellow",violet:"Violet",blue:"Blue",green:"Green",white:"White",black:"Black",onDoubleClick:"Double click to edit this text. Press Enter to submit."},charting:{addCategory:"Add category",actions:"Actions",add:"Add",delete:"Delete",newLabel:"New label",reachedLimit_other:"There can't be more than {{count}} categories.",keyLegend:{incorrectAnswer:"Student incorrect answer",correctAnswer:"Student correct answer",correctKeyAnswer:"Answer key correct"}},graphing:{point:"Point",circle:"Circle",line:"Line",parabola:"Parabola",absolute:"Absolute Value",exponential:"Exponential",polygon:"Polygon",ray:"Ray",segment:"Segment",sine:"Sine",vector:"Vector",label:"Label",redo:"Redo",reset:"Reset"},mathInline:{primaryCorrectWithAlternates:"Note: The answer shown above is the primary correct answer specified by the author for this item, but other answers may also be recognized as correct."},multipleChoice:{minSelections:"Select at least {{minSelections}}.",maxSelections_one:"Only {{maxSelections}} answer is allowed.",maxSelections_other:"Only {{maxSelections}} answers are allowed.",minmaxSelections_equal:"Select {{minSelections}}.",minmaxSelections_range:"Select between {{minSelections}} and {{maxSelections}}."},selectText:{correctAnswerSelected:"Correct",correctAnswerNotSelected:"Correct Answer Not Selected",incorrectSelection:"Incorrect Selection",key:"Key"}},common:{undo:"Undo",clearAll:"Clear all",correct:"Correct",incorrect:"Incorrect",showCorrectAnswer:"Show correct answer",hideCorrectAnswer:"Hide correct answer",commonCorrectAnswerWithAlternates:"Note: The answer shown above is the most common correct answer for this item. One or more additional correct answers are also defined, and will also be recognized as correct.",warning:"Warning",showNote:"Show Note",hideNote:"Hide Note",cancel:"Cancel"}},es:{translation:{categorize:{limitMaxChoicesPerCategory:"Has alcanzado el límite de {{maxChoicesPerCategory}} respuestas por área. Para agregar otra respuesta, primero se debe eliminar una respuesta.",maxChoicesPerCategoryRestriction:"Para cambiar este valor a {{maxChoicesPerCategory}}, cada categoría debe tener {{maxChoicesPerCategory}} o menos opciones de respuesta"},ebsr:{part:"Parte {{index}}"},numberLine:{addElementLimit_one:"Solo puedes agregar {{count}} elemento",addElementLimit_other:"Solo puedes agregar {{count}} elementos",clearAll:"Borrar todo"},imageClozeAssociation:{reachedLimit_one:"Has alcanzado el límite de {{count}} respuesta por área. Para agregar otra respuesta, primero se debe eliminar una respuesta.",reachedLimit_other:"Lleno"},drawingResponse:{fillColor:"Color de relleno",outlineColor:"Color del contorno",noFill:"Sin relleno",lightblue:"Azul claro",lightyellow:"Amarillo claro",red:"Rojo",orange:"Naranja",yellow:"Amarillo",violet:"Violeta",blue:"Azul",green:"Verde",white:"Blanco",black:"Negro",onDoubleClick:"Haz doble clic para revisar este texto. Presiona el botón de ingreso para enviar"},charting:{addCategory:"Añadir categoría",actions:"Acciones",add:"Añadir",delete:"Eliminar",newLabel:"Nueva etiqueta",reachedLimit_other:"No puede haber más de {{count}} categorías.",keyLegend:{incorrectAnswer:"Respuesta incorrecta del estudiante",correctAnswer:"Respuesta correcta del estudiante",correctKeyAnswer:"Clave de respuesta correcta"}},graphing:{point:"Punto",circle:"Circulo",line:"Línea",parabola:"Parábola",absolute:"Valor absoluto",exponential:"Exponencial",polygon:"Polígono",ray:"Semirrecta",segment:"Segmento ",sine:"Seno",vector:"Vector",label:"Etiqueta",redo:"Rehacer",reset:"Reiniciar"},mathInline:{primaryCorrectWithAlternates:"Nota: La respuesta que se muestra arriba es la respuesta correcta principal especificada por el autor para esta pregunta, pero también se pueden reconocer otras respuestas como correctas."},multipleChoice:{minSelections:"Seleccione al menos {{minSelections}}.",maxSelections_one:"Sólo se permite {{maxSelections}} respuesta.",maxSelections_other:"Sólo se permiten {{maxSelections}} respuestas.",minmaxSelections_equal:"Seleccione {{minSelections}}.",minmaxSelections_range:"Seleccione entre {{minSelections}} y {{maxSelections}}."},selectText:{correctAnswerSelected:"Respuesta Correcta",correctAnswerNotSelected:"Respuesta Correcta No Seleccionada",incorrectSelection:"Selección Incorrecta",key:"Clave"}},common:{undo:"Deshacer",clearAll:"Borrar todo",correct:"Correct",incorrect:"Incorrect",showCorrectAnswer:"Mostrar respuesta correcta",hideCorrectAnswer:"Ocultar respuesta correcta",commonCorrectAnswerWithAlternates:"Nota: La respuesta que se muestra arriba es la respuesta correcta más común para esta pregunta. También se definen una o más respuestas correctas adicionales, y también se reconocerán como correctas.",warning:"Advertencia",showNote:"Mostrar Nota",hideNote:"Ocultar Nota",cancel:"Cancelar"}}}});var Yc={translator:{...Gc,t:(e,t)=>{const{lng:n}=t;switch(n){case"en_US":case"en-US":t.lng="en";break;case"es_ES":case"es-ES":case"es_MX":case"es-MX":t.lng="es"}return Gc.t(e,{lng:n,...t})}},languageOptions:[{value:"en_US",label:"English (US)"},{value:"es_ES",label:"Spanish"}]};const Kc=r,Xc=t,{styled:Jc}=i,{Button:Zc}=l,{color:Qc}=o,{translator:eu}=Yc,tu=Jc(Zc)(({theme:e})=>({color:Qc.text(),fontWeight:"bold",marginBottom:e.spacing(.5),"&:not(:last-of-type)":{marginRight:e.spacing(.5)}}));class nu extends Kc.Component{static __initStatic(){this.propTypes={className:Xc.string,onReset:Xc.func.isRequired,language:Xc.string}}static __initStatic2(){this.defaultProps={}}render(){const{className:e,onReset:t=!1,language:n}=this.props;return Kc.createElement("div",{className:e},Kc.createElement(tu,{onClick:()=>t()},eu.t("graphing.reset",{lng:n})))}}nu.__initStatic(),nu.__initStatic2();const ru=t,ou={mark:ru.any,onChange:ru.func,onDragStart:ru.func,onDragStop:ru.func},{color:iu}=o,au=(e="fill")=>({[e]:iu.disabled(),pointerEvents:"none"}),su=(e="fill")=>({[e]:iu.correct(),pointerEvents:"none"}),lu=(e="fill")=>({[e]:iu.incorrect(),pointerEvents:"none"}),cu=(e="fill")=>({[e]:iu.missing(),pointerEvents:"none"}),uu=r,pu=t,{styled:hu}=i,{color:du}=o,fu=hu("polygon",{shouldForwardProp:e=>!["isSolution","correctness"].includes(e)})(({isSolution:e,correctness:t})=>({fill:e?"rgb(60, 73, 150, 0.6)":"transparent",strokeWidth:2,stroke:du.defaults.SECONDARY_LIGHT,"&:hover":{fill:e?"rgb(60, 73, 150, 0.6)":"rgb(0, 0, 0, 0.25)"},..."correct"===t&&su("stroke"),..."incorrect"===t&&lu("stroke")})),gu=hu("polyline",{shouldForwardProp:e=>!["isSolution","correctness"].includes(e)})(({isSolution:e,correctness:t})=>({fill:e?"rgb(60, 73, 150, 0.6)":"transparent",strokeWidth:2,stroke:du.defaults.SECONDARY_LIGHT,"&:hover":{fill:e?"rgb(60, 73, 150, 0.6)":"rgb(0, 0, 0, 0.25)"},..."correct"===t&&su("stroke"),..."incorrect"===t&&lu("stroke")}));class mu extends uu.Component{static __initStatic(){this.propTypes={className:pu.string,isSolution:pu.bool,points:pu.arrayOf(Te),graphProps:Me.isRequired,closed:pu.bool.isRequired,correctness:pu.string}}static __initStatic2(){this.defaultProps={points:[]}}render(){const{points:e,className:t,correctness:n,graphProps:r,closed:o,isSolution:i,...a}=this.props,{scale:s}=r,l=((e,t)=>(e||[]).map(e=>`${t.x(e.x)},${t.y(e.y)}`).join(" "))(e,s),c=o?fu:gu;return uu.createElement(c,{points:l,isSolution:i,correctness:n,className:t,...a})}}mu.__initStatic(),mu.__initStatic2();const yu=mu;var bu=Et({bounds:(e,{domain:t,range:n})=>{const{points:r}=e,o=(e=>{const t=Ho(e),n={left:t.x,top:t.y,bottom:t.y,right:t.x};return qo(e).reduce((e,t)=>(e.left=Math.min(e.left,t.x),e.top=Math.max(e.top,t.y),e.bottom=Math.min(e.bottom,t.y),e.right=Math.max(e.right,t.x),e),n)})(r);return Yo(o,t,n)},anchorPoint:e=>{const{points:t}=e;return t[0]},fromDelta:(e,t)=>{const{points:n}=e;return n.map(e=>Ko(e).add(Ko(t)))}})(yu),vu={};const xu=r,wu=t;Object.defineProperty(vu,"__esModule",{value:!0});var Su=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},_u=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),ku=xu,Cu=Ou(ku),Eu=Ou(wu);function Ou(e){return e&&e.__esModule?e:{default:e}}var Pu={position:"absolute",top:0,left:0,visibility:"hidden",height:0,overflow:"scroll",whiteSpace:"pre"},Tu=["extraWidth","injectStyles","inputClassName","inputRef","inputStyle","minWidth","onAutosize","placeholderIsMinWidth"],Au=function(e,t){t.style.fontSize=e.fontSize,t.style.fontFamily=e.fontFamily,t.style.fontWeight=e.fontWeight,t.style.fontStyle=e.fontStyle,t.style.letterSpacing=e.letterSpacing,t.style.textTransform=e.textTransform},Lu=!("undefined"==typeof window||!window.navigator)&&/MSIE |Trident\/|Edge\//.test(window.navigator.userAgent),Nu=function(){return Lu?"_"+Math.random().toString(36).substr(2,12):void 0},Mu=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e);var n=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,t));return n.inputRef=function(e){n.input=e,"function"==typeof n.props.inputRef&&n.props.inputRef(e)},n.placeHolderSizerRef=function(e){n.placeHolderSizer=e},n.sizerRef=function(e){n.sizer=e},n.state={inputWidth:t.minWidth,inputId:t.id||Nu()},n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(e,ku.Component),_u(e,[{key:"componentDidMount",value:function(){this.mounted=!0,this.copyInputStyles(),this.updateInputWidth()}},{key:"UNSAFE_componentWillReceiveProps",value:function(e){var t=e.id;t!==this.props.id&&this.setState({inputId:t||Nu()})}},{key:"componentDidUpdate",value:function(e,t){t.inputWidth!==this.state.inputWidth&&"function"==typeof this.props.onAutosize&&this.props.onAutosize(this.state.inputWidth),this.updateInputWidth()}},{key:"componentWillUnmount",value:function(){this.mounted=!1}},{key:"copyInputStyles",value:function(){if(this.mounted&&window.getComputedStyle){var e=this.input&&window.getComputedStyle(this.input);e&&(Au(e,this.sizer),this.placeHolderSizer&&Au(e,this.placeHolderSizer))}}},{key:"updateInputWidth",value:function(){if(this.mounted&&this.sizer&&void 0!==this.sizer.scrollWidth){var e=void 0;e=this.props.placeholder&&(!this.props.value||this.props.value&&this.props.placeholderIsMinWidth)?Math.max(this.sizer.scrollWidth,this.placeHolderSizer.scrollWidth)+2:this.sizer.scrollWidth+2,(e+="number"===this.props.type&&void 0===this.props.extraWidth?16:parseInt(this.props.extraWidth)||0)<this.props.minWidth&&(e=this.props.minWidth),e!==this.state.inputWidth&&this.setState({inputWidth:e})}}},{key:"getInput",value:function(){return this.input}},{key:"focus",value:function(){this.input.focus()}},{key:"blur",value:function(){this.input.blur()}},{key:"select",value:function(){this.input.select()}},{key:"renderStyles",value:function(){var e=this.props.injectStyles;return Lu&&e?Cu.default.createElement("style",{dangerouslySetInnerHTML:{__html:"input#"+this.state.inputId+"::-ms-clear {display: none;}"}}):null}},{key:"render",value:function(){var e=[this.props.defaultValue,this.props.value,""].reduce(function(e,t){return null!=e?e:t}),t=Su({},this.props.style);t.display||(t.display="inline-block");var n=Su({boxSizing:"content-box",width:this.state.inputWidth+"px"},this.props.inputStyle),r=function(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}(this.props,[]);return function(e){Tu.forEach(function(t){return delete e[t]})}(r),r.className=this.props.inputClassName,r.id=this.state.inputId,r.style=n,Cu.default.createElement("div",{className:this.props.className,style:t},this.renderStyles(),Cu.default.createElement("input",Su({},r,{ref:this.inputRef})),Cu.default.createElement("div",{ref:this.sizerRef,style:Pu},e),this.props.placeholder?Cu.default.createElement("div",{ref:this.placeHolderSizerRef,style:Pu},this.props.placeholder):null)}}]),e}();Mu.propTypes={className:Eu.default.string,defaultValue:Eu.default.any,extraWidth:Eu.default.oneOfType([Eu.default.number,Eu.default.string]),id:Eu.default.string,injectStyles:Eu.default.bool,inputClassName:Eu.default.string,inputRef:Eu.default.func,inputStyle:Eu.default.object,minWidth:Eu.default.oneOfType([Eu.default.number,Eu.default.string]),onAutosize:Eu.default.func,onChange:Eu.default.func,placeholder:Eu.default.string,placeholderIsMinWidth:Eu.default.bool,style:Eu.default.object,value:Eu.default.any},Mu.defaultProps={minWidth:1,injectStyles:!0};var Ru=vu.default=Mu;const{useState:Du}=r,{useEffect:ju}=r,$u=r,{useState:Iu}=r,{useCallback:Fu}=r,{useEffect:Vu}=r,Bu=t,{styled:zu}=i,{color:Hu}=o,qu=zu(Ru,{shouldForwardProp:e=>!["disabled","markDisabled"].includes(e)})(({theme:e,disabled:t,markDisabled:n})=>({"& input":{float:"right",padding:e.spacing(.5),fontFamily:e.typography.fontFamily,fontSize:e.typography.fontSize,border:`solid 1px ${t?Hu.defaults.PRIMARY_DARK:n?Hu.disabled():Hu.defaults.SECONDARY}`,borderRadius:"3px",color:n?Hu.disabled():Hu.defaults.PRIMARY_DARK,background:t||n?e.palette.background.paper:"transparent"}})),Wu=e=>{const[t,n]=Iu(null),r=Fu(e=>n(e)),{mark:o,graphProps:i,disabled:a,inputRef:s}=e,[l,c]=Iu(o.label),u=(e=>{const[t,n]=Du(e);return ju(()=>{const t=setTimeout(()=>{n(e)},200);return()=>clearTimeout(t)},[e]),t})(l);Vu(()=>{c(o.label)},[o.label]),Vu(()=>{"string"==typeof u&&u!==o.label&&e.onChange(u)},[u]);const p=t?t.getBoundingClientRect():{width:0,height:0},h=((e,t,n)=>{n=n||{width:0,height:0};const{scale:r,domain:o,range:i}=e,a=r.x(t.x)+n.width+10,s=r.y(t.y)+n.height+10,l=a>=r.x(o.max)?"left":"right";return`${s>=r.y(i.min)?"top":"bottom"}-${l}`})(i,o,p),d=((e,t,n,r)=>{const{scale:o}=e,i=10;switch(n=n||{width:0,height:0},r){case"bottom-right":return{left:o.x(t.x)+i,top:o.y(t.y)+i};case"bottom-left":return{left:o.x(t.x)-i-n.width,top:o.y(t.y)+i};case"top-left":return{left:o.x(t.x)-i-n.width,top:o.y(t.y)-i-n.height};case"top-right":return{left:o.x(t.x)+i,top:o.y(t.y)-i-n.height}}})(i,o,p,h),f={position:"fixed",pointerEvents:"auto",...d},g=a||o.disabled;return $u.createElement(qu,{inputRef:e=>{r(e),s(e)},disabled:g,markDisabled:o.disabled,value:l,style:f,onChange:e=>c(e.target.value)})};Wu.propTypes={disabled:Bu.bool,onChange:Bu.func,graphProps:Me,inputRef:Bu.func,mark:Bu.object,theme:Bu.object};const Uu=r,Gu=t,{chunk:Yu}=n,{isEmpty:Ku}=n,Xu=e,Ju=a("pie-lib:graphing-solution-set:polygon");class Zu extends Uu.Component{constructor(...e){super(...e),Zu.prototype.__init.call(this),Zu.prototype.__init2.call(this),Zu.prototype.__init3.call(this),Zu.prototype.__init4.call(this),Zu.prototype.__init5.call(this),Zu.prototype.__init6.call(this),Zu.prototype.__init7.call(this)}static __initStatic(){this.propTypes={className:Gu.string,disabled:Gu.bool,correctness:Gu.string,points:Gu.arrayOf(Te),closed:Gu.bool,isSolution:Gu.bool,coordinatesOnHover:Gu.bool,onChange:Gu.func.isRequired,onClosePolygon:Gu.func.isRequired,onDragStart:Gu.func,onDragStop:Gu.func,onClick:Gu.func,graphProps:Me.isRequired,isToolActive:Gu.bool,middle:Gu.object,labelNode:Gu.object,labelModeEnabled:Gu.bool,onChangeLabelProps:Gu.func,onChangeProps:Gu.func}}static __initStatic2(){this.defaultProps={points:[]}}__init(){this.dragPoint=(e,t,n)=>{Ju("[dragPoint] from, to:",t,n);const{onChange:r,points:o}=this.props,i=[...o],a=!!(o||[]).find(e=>ni(e,n));ni(t,n)||a||(o[e].label&&(n.label=o[e].label),i.splice(e,1,n),r(i))}}__init2(){this.dragLine=(e,t)=>{Ju("[dragLine]: ",e,t);const{onChange:n}=this.props;e.from.label&&(t.from.label=e.from.label),e.to.label&&(t.to.label=e.to.label);const r=((e,...t)=>Yu(t,2).reduce((e,t)=>{if(2===t.length){let[n,r]=t;Re(Number.isFinite(n.index),"Index must be defined");const o=n.index;return o>=0?(e.splice(o,1,r),e):e}return e},[...e]))(this.props.points,e.from,t.from,e.to,t.to);n(r)}}__init3(){this.dragPoly=(e,t)=>{Ju("[dragPoly] ",e,t);const{onChange:n}=this.props;t.forEach((n,r)=>{e[r].label&&(t[r].label=e[r].label)}),n(t)}}__init4(){this.close=()=>{const{points:e,onClosePolygon:t}=this.props;Ju("[close] ..."),e.length>=3?t():Ju("[close] - nope")}}__init5(){this.labelChange=(e,t)=>{const{points:n,onChangeProps:r}=this.props,o={...e};e.label&&!Ku(e.label)||delete o.label;const i=[...n];i.splice(t,1,o),r(i)}}__init6(){this.clickPoint=(e,t,n)=>{const{closed:r,disabled:o,onClick:i,isToolActive:a,labelModeEnabled:s,onChangeProps:l,onChangeLabelProps:c,points:u}=this.props;if(s){if(o)return;if(u&&t===u.length){const{a:t,b:n}=Qo(u);c({label:"",...e,...ei(t,n)})}else{const n=[...u];n.splice(t,1,{label:"",...e}),l(n)}this.input[t]&&this.input[t].focus()}else!a||r||0!==t?i(e||n):this.close()}}__init7(){this.input={}}render(){const{closed:e,graphProps:t,onChangeLabelProps:n,points:r,middle:o,labelNode:i,labelModeEnabled:a,isSolution:s=!1}=this.props,l=r&&r.length||0;return i&&o&&Object.prototype.hasOwnProperty.call(o,"label")&&Xu.createPortal(Uu.createElement(Wu,{inputRef:e=>this.input[l]=e,disabled:!a,mark:o,graphProps:t,onChange:e=>n({...o,label:e})}),i),Uu.createElement("g",null,Uu.createElement(Uu.Fragment,null,Uu.createElement(bu,{points:r,closed:e,isSolution:s,graphProps:t,onClick:this.clickPoint.bind(this,o,l)})))}}Zu.__initStatic(),Zu.__initStatic2();const Qu=Zu;class ep extends Uu.Component{static __initStatic3(){this.propTypes={...ou,graphProps:Me.isRequired}}static __initStatic4(){this.defaultProps={}}constructor(e){super(e),ep.prototype.__init8.call(this),ep.prototype.__init9.call(this),ep.prototype.__init10.call(this),ep.prototype.__init11.call(this),ep.prototype.__init12.call(this),ep.prototype.__init13.call(this),this.state={}}__init8(){this.change=e=>{const{mark:{middle:t}}=this.props,n={...this.state.mark,points:e};if(t){const{a:r,b:o}=Qo(e);n.middle={...t,...ei(r,o)}}this.setState({mark:n})}}__init9(){this.changeProps=e=>{const t={...this.props.mark,points:e};this.props.onChange(this.props.mark,t)}}__init10(){this.changeLabelProps=e=>{const{mark:t,onChange:n}=this.props,r={...t.middle,...e};n(t,{...t,middle:r})}}__init11(){this.closePolygon=()=>{Ju("[closePolygon] ...");const{onComplete:e,mark:t}=this.props;e(t,{...t,closed:!0})}}__init12(){this.dragStart=()=>this.setState({mark:this.props.mark})}__init13(){this.dragStop=()=>{const{onChange:e}=this.props,t={...this.state.mark};this.setState({mark:void 0},()=>{e(this.props.mark,t)})}}render(){const{coordinatesOnHover:e,mark:t,graphProps:n,onClick:r,isToolActive:o,labelNode:i,labelModeEnabled:a}=this.props,{mark:s}=this.state;return Uu.createElement(Qu,{...s||t,coordinatesOnHover:e,onChange:this.change,onChangeLabelProps:this.changeLabelProps,onChangeProps:this.changeProps,onClosePolygon:this.closePolygon,onDragStart:this.dragStart,onDragStop:this.dragStop,onClick:r,graphProps:n,isToolActive:o,labelNode:i,labelModeEnabled:a})}}ep.__initStatic3(),ep.__initStatic4();const tp=r,np=t,{color:rp}=o,{styled:op}=i,{InputBase:ip}=l,ap=op(ip)(({theme:e})=>({fontFamily:e.typography.fontFamily,fontSize:e.typography.fontSize,borderRadius:"8px",background:e.palette.common.white,color:rp.defaults.BLACK,"& .MuiInputBase-input":{padding:0}})),sp=({x:e,y:t,graphProps:n})=>{const r=`(${ti(e)}, ${ti(t)})`,o=6*(r.length||0),i=((e,t,n,r)=>{const{scale:o,domain:i,range:a}=e,s=n===a.min?16:n===a.max?0:8;return o.x(t)+r+10>=o.x(i.max)?{left:o.x(t)-10-r,top:o.y(n)-s}:{left:o.x(t)+10,top:o.y(n)-s}})(n,e,t,o),a={position:"absolute",pointerEvents:"auto",width:o,padding:0,...i};return tp.createElement(ap,{style:a,value:r,inputProps:{ariaLabel:"naked"}})};sp.propTypes={graphProps:Me,x:np.number,y:np.number};const lp=r,cp=t,up=e,{color:pp}=o,{styled:hp}=i,dp=hp("g")(({disabled:e,correctness:t})=>({cursor:"pointer","& circle":{fill:"currentColor"},...e&&{...au("fill"),...au("color")},..."correct"===t&&{...su("fill"),...su("color")},..."incorrect"===t&&{...lu("fill"),...lu("color")},..."missing"===t&&{...cu("fill"),...cu("color")}}));class fp extends lp.Component{static __initStatic(){this.propTypes={className:cp.string,coordinatesOnHover:cp.bool,correctness:cp.string,disabled:cp.bool,labelNode:cp.object,x:cp.number,y:cp.number,graphProps:Me.isRequired,onClick:cp.func,onTouchStart:cp.func,onTouchEnd:cp.func}}constructor(e){super(e),this.state={showCoordinates:!1}}render(){const{className:e,coordinatesOnHover:t,x:n,y:r,disabled:o,correctness:i,graphProps:a,labelNode:s,style:l,onClick:c,onTouchStart:u,onTouchEnd:p,...h}=this.props,{showCoordinates:d}=this.state,{scale:f}=a,g=oi(a)?5:7;return lp.createElement(lp.Fragment,null,lp.createElement("circle",{style:{fill:"transparent",cursor:"pointer",pointerEvents:"all"},r:3*g,cx:f.x(n),cy:f.y(r),onMouseEnter:()=>this.setState({showCoordinates:!0}),onMouseLeave:()=>this.setState({showCoordinates:!1}),onTouchStart:u,onTouchEnd:p,onClick:c}),lp.createElement(dp,{disabled:o,correctness:i,className:e,onMouseEnter:()=>this.setState({showCoordinates:!0}),onMouseLeave:()=>this.setState({showCoordinates:!1})},lp.createElement("circle",{...h,style:{fill:pp.defaults.BLACK,cursor:"pointer"},r:g,cx:f.x(n),cy:f.y(r)}),s&&t&&d&&up.createPortal(lp.createElement(sp,{graphProps:a,x:n,y:r}),s)))}}fp.__initStatic();const gp=r,mp=t,yp=s,{isEqual:bp}=n;class vp extends gp.Component{static __initStatic(){this.propTypes={classes:mp.object,className:mp.string,correctness:mp.string,disabled:mp.bool,x:mp.number,y:mp.number,from:mp.shape({x:mp.number,y:mp.number}).isRequired,to:mp.shape({x:mp.number,y:mp.number}),graphProps:Me.isRequired}}static __initStatic2(){this.defaultProps={from:{},to:{}}}render(){const{classes:e,className:t,x:n,y:r,disabled:o,correctness:i,graphProps:a,from:s,to:l,...c}=this.props,{scale:u}=a,p=(s.x,s.y,l.x,l.y,0);let h="";return h=bp(s,l)?"0,0 0,0 0,0":`0,0 ${Xo.vector},${2*Xo.vector} \n -${Xo.vector},${2*Xo.vector}`,gp.createElement("g",{className:yp(e.point,o&&e.disabled,e[i],t),...c},gp.createElement("polygon",{points:h,transform:`\n translate(${u.x(n)}, ${u.y(r)})\n rotate(${p} 0 0)`}))}}vp.__initStatic(),vp.__initStatic2();const xp=r,wp=t,{color:Sp}=o,_p=({size:e,transform:t,points:n})=>xp.createElement("polygon",{points:n||`0,0 ${e},${e/2} 0,${e}`,transform:t});_p.propTypes={points:wp.string,size:wp.number,transform:wp.string},_p.defaultProps={points:"",size:10,transform:""};const kp=({id:e,size:t,className:n})=>xp.createElement("marker",{id:e,viewBox:`0 0 ${t} ${t}`,refX:t/2,refY:t/2,markerWidth:t,markerHeight:t,orient:"auto-start-reverse",className:n,style:{fill:Sp.defaults.BLACK}},xp.createElement(_p,{size:t}));kp.propTypes={id:wp.string,size:wp.number,className:wp.string},kp.defaultProps={size:5};const Cp=r,Ep=t,Op=s;class Pp extends Cp.Component{static __initStatic(){this.propTypes={classes:Ep.object,className:Ep.string,correctness:Ep.string,disabled:Ep.bool,x:Ep.number.isRequired,y:Ep.number.isRequired,angle:Ep.number.isRequired,graphProps:Me.isRequired}}render(){const{classes:e,angle:t,className:n,x:r,y:o,disabled:i,correctness:a,graphProps:s,...l}=this.props,c=oi(s)?12:14,{scale:u}=s,p=u.x(r),h=u.y(o),d=`rotate(${-t}, ${p},${h})`,f=`${p},${h}\n ${p-c},${h-c/2}\n ${p-c}, ${h+c/2}`;return Cp.createElement("g",{className:Op(e.point,i&&e.disabled,e[a],n),...l},Cp.createElement(_p,{size:c,transform:d,points:f}))}}Pp.__initStatic();const Tp=r,Ap=t,{styled:Lp}=i,{color:Np}=o,Mp={bounds:(e,{domain:t,range:n})=>{const{x:r,y:o}=e;return Yo({left:r,top:o,bottom:o,right:r},t,n)},anchorPoint:e=>{const{x:t,y:n}=e;return{x:t,y:n}},fromDelta:(e,t)=>Ko(e).add(Ko(t))},Rp=Lp("g",{shouldForwardProp:e=>!["disabled","correctness"].includes(e)})(({disabled:e,correctness:t})=>({"& circle, & polygon":{cursor:"pointer",fill:Np.defaults.SECONDARY,...e&&au(),..."correct"===t&&su(),..."incorrect"===t&&lu(),..."missing"===t&&cu()}})),Dp=e=>{const t=t=>Tp.createElement(Rp,{disabled:t.disabled,correctness:t.correctness},Tp.createElement(e,{...t}));return t.displayName=`withStyledWrapper(${e.displayName||e.name||"Component"})`,t.propTypes={disabled:Ap.bool,correctness:Ap.string},t},jp=Et(Mp)(Dp(fp));Et(Mp)(Dp(vp)),Et(Mp)(Dp(Pp));const $p=r,{isEqual:Ip}=n,{cloneDeep:Fp}=n,{isEmpty:Vp}=n,Bp=t,zp=e,{color:Hp}=o;var qp;const Wp=(e,t)=>({...su(t)}),Up=(e,t)=>({...lu(t)}),Gp=(e,t)=>({...cu(t)}),Yp=r,Kp=t,{styled:Xp}=i,Jp=Xp("line",{shouldForwardProp:e=>!["fill","disabled","correctness"].includes(e)})(({theme:e,fill:t,disabled:n,correctness:r})=>({..."Solid"===t?{fill:"transparent",stroke:Hp.defaults.BLACK,strokeWidth:4,transition:"stroke 200ms ease-in, stroke-width 200ms ease-in","&:hover":{strokeWidth:6,stroke:Hp.defaults.BLACK}}:{fill:"transparent",stroke:Hp.defaults.BLACK,strokeWidth:4,transition:"stroke 200ms ease-in, stroke-width 200ms ease-in","&:hover":{strokeWidth:6,stroke:Hp.defaults.BLACK},strokeDasharray:"3,3"},...n&&{...au("stroke"),strokeWidth:2},..."correct"===r&&Wp(0,"stroke"),..."incorrect"===r&&Up(0,"stroke"),..."missing"===r&&Gp(0,"stroke")})),Zp=Xp(kp,{shouldForwardProp:e=>!["suffix"].includes(e)})(({theme:e,suffix:t})=>({..."enabled"===t&&{fill:Hp.defaults.SECONDARY},..."disabled"===t&&{...au()},..."correct"===t&&Wp(),..."incorrect"===t&&Up(),..."missing"===t&&Gp()})),Qp=e=>{const t=`arrow-${(1e3*Math.random()).toFixed(0)}`,{className:n,correctness:r,disabled:o,graphProps:i,fill:a="Solid",from:s,to:l,...c}=e,{scale:u}=i,{domain:p,range:h}=(e=>{const{domain:t,range:n,size:{width:r,height:o}}=e,i=ri(t,r),a=ri(n,o),s=t.step/(i/15),l=n.step/(a/15);return{domain:{min:t.min-s,max:t.max+s},range:{min:n.min-l,max:n.max+l}}})(i),[d,f]=((e,t)=>(n,r)=>{const o=n.x<r.x?e.max:e.min,i=n.y<r.y?t.max:t.min,a=Nt(Fe(o,i),n,r),s=r.x<n.x?e.max:e.min,l=r.y<n.y?t.max:t.min;return[a,Nt(Fe(s,l),r,n)]})(p,h)(s,l),g=r||o&&"disabled"||"enabled";return Yp.createElement("g",null,Yp.createElement("defs",null,Yp.createElement(Zp,{size:oi(i)?4:5,id:`${e.markerId||t}-${g}`,suffix:g})),Yp.createElement(Jp,{x1:u.x(d.x),y1:u.y(d.y),x2:u.x(f.x),y2:u.y(f.y),fill:a,disabled:o,correctness:r,className:n,markerEnd:`url(#${e.markerId||t}-${g})`,markerStart:`url(#${e.markerId||t}-${g})`,...c}))};Qp.propTypes={className:Kp.string,fill:Kp.string,correctness:Kp.string,disabled:Kp.bool,graphProps:Me,from:Te,to:Te,markerId:Kp.string};const eh=(e=>{const t=Et({bounds:(e,{domain:t,range:n})=>{const r=(o=e.from,i=e.to,{left:Math.min(o.x,i.x),top:Math.max(o.y,i.y),bottom:Math.min(o.y,i.y),right:Math.max(o.x,i.x)});var o,i;return Be(r,t,n)},anchorPoint:e=>{const{from:t}=e;return t},fromDelta:(e,t)=>{const{from:n,to:r}=e;return{from:ze(n).add(ze(t)),to:ze(r).add(ze(t))}}})(e),n=jp,r=jp;class o extends $p.Component{constructor(...e){super(...e),o.prototype.__init5.call(this),o.prototype.__init6.call(this),o.prototype.__init7.call(this),o.prototype.__init8.call(this),o.prototype.__init9.call(this),o.prototype.__init10.call(this),o.prototype.__init11.call(this)}static __initStatic2(){this.propTypes={coordinatesOnHover:Bp.bool,graphProps:Me,from:Te,to:Te,middle:Te,onChange:Bp.func,onDragStart:Bp.func,onDragStop:Bp.func,onClick:Bp.func,correctness:Bp.string,fill:Bp.string,gssLineData:Bp.object,disabled:Bp.bool,labelNode:Bp.object,labelModeEnabled:Bp.bool,changeMarkProps:Bp.func}}__init5(){this.onChangePoint=e=>{const{middle:t,onChange:n}=this.props,{from:r,to:o}=e;ni(r,o)||(t&&(e.middle={...t,...ei(r,o)}),n(e))}}__init6(){this.dragComp=({from:e,to:t})=>{const{from:n,to:r,onChange:o,middle:i}=this.props;n.label&&(e.label=n.label),r.label&&(t.label=r.label);const a={from:e,to:t};i&&(a.middle={...i,...ei(e,t)}),o(a)}}__init7(){this.dragFrom=e=>{const{from:t,to:n}=this.props;t.label&&(e.label=t.label),ni(e,n)||this.onChangePoint({from:e,to:n})}}__init8(){this.dragTo=e=>{const{from:t,to:n}=this.props;n.label&&(e.label=n.label),ni(t,e)||this.onChangePoint({from:t,to:e})}}__init9(){this.labelChange=(e,t)=>{const{changeMarkProps:n}=this.props,r={...e};e.label&&!Vp(e.label)||delete r.label,n({[t]:r})}}__init10(){this.clickPoint=(e,t,n)=>{const{changeMarkProps:r,disabled:o,from:i,to:a,labelModeEnabled:s,onClick:l}=this.props;s?o||("middle"===t&&!e&&i&&a&&(e={...e,...ei(i,a)}),r({from:i,to:a,[t]:{label:"",...e}}),this.input[t]&&this.input[t].focus()):l(e||n)}}__init11(){this.input={}}render(){const{coordinatesOnHover:e,graphProps:o,fill:i,gssLineData:a,onDragStart:s,onDragStop:l,from:c,to:u,middle:p,disabled:h,correctness:d,onClick:f,labelNode:g,labelModeEnabled:m}=this.props;let y={graphProps:o,fill:i,onDragStart:s,onDragStop:l,disabled:h,correctness:d,onClick:f};a&&"solutionSet"===a.selectedTool&&(y={graphProps:o,fill:i,disabled:h,correctness:d,onClick:f});const b=u?Pt(Tt(c,u)):0;let v=null,x=null,w=null;return g&&(c&&Object.prototype.hasOwnProperty.call(c,"label")&&(v=zp.createPortal($p.createElement(Wu,{inputRef:e=>this.input.from=e,disabled:!m,mark:c,graphProps:o,onChange:e=>this.labelChange({...c,label:e},"from")}),g)),u&&Object.prototype.hasOwnProperty.call(u,"label")&&(x=zp.createPortal($p.createElement(Wu,{inputRef:e=>this.input.to=e,disabled:!m,mark:u,graphProps:o,onChange:e=>this.labelChange({...u,label:e},"to")}),g)),p&&Object.prototype.hasOwnProperty.call(p,"label")&&(w=zp.createPortal($p.createElement(Wu,{inputRef:e=>this.input.middle=e,disabled:!m,mark:p,graphProps:o,onChange:e=>this.labelChange({...p,label:e},"middle")}),g))),a&&"solutionSet"===a.selectedTool?$p.createElement("g",null,u&&$p.createElement(t,{from:c,to:u,middle:p,...y}),w,$p.createElement(n,{x:c.x,y:c.y,labelNode:g,coordinatesOnHover:e,...y}),v,u&&$p.createElement(r,{x:u.x,y:u.y,angle:b,labelNode:g,coordinatesOnHover:e,...y}),x):$p.createElement("g",null,u&&$p.createElement(t,{from:c,to:u,middle:p,onDrag:this.dragComp,...y,onClick:e=>this.clickPoint(p,"middle",e)}),w,$p.createElement(n,{x:c.x,y:c.y,labelNode:g,coordinatesOnHover:e,onDrag:this.dragFrom,...y,onClick:e=>this.clickPoint(c,"from",e)}),v,u&&$p.createElement(r,{x:u.x,y:u.y,angle:b,labelNode:g,coordinatesOnHover:e,onDrag:this.dragTo,...y,onClick:e=>this.clickPoint(u,"to",e)}),x)}}return o.__initStatic2(),o})(Qp),th=((e,t)=>()=>({type:e,Component:t,addPoint:(t,n)=>n&&ni(n.root,t)?n:n?ni(t,n.from)?{...n}:{...n,building:!1,to:t}:{type:e,building:!0,from:t}}))("line",(e=>((qp=class extends $p.Component{static __initStatic(){this.propTypes={graphProps:Me.isRequired}}constructor(e){super(e),qp.prototype.__init.call(this),qp.prototype.__init2.call(this),qp.prototype.__init3.call(this),qp.prototype.__init4.call(this),this.state={}}__init(){this.startDrag=()=>this.setState({mark:{...this.props.mark}})}__init2(){this.stopDrag=()=>{const{onChange:e,mark:t}=this.props,n={...this.state.mark};this.setState({mark:void 0},()=>{const{type:r}=n;let o=r&&("parabola"===r||"sine"===r||"absolute"===r||"exponential"===r)&&(i=n.from,a=n.to,i&&a&&(ti(i.x)===ti(a.x)||ti(i.y)===ti(a.y)));var i,a;!o&&r&&"exponential"===r&&n.from&&n.to&&(o=0===n.from.y||0===n.to.y||n.from.y*n.to.y<0),Ip(t,n)||o||e(t,n)})}}__init3(){this.changeMark=({from:e,to:t,middle:n})=>{let r={...this.state.mark,from:e,to:t};n&&(r={...r,middle:n}),this.setState({mark:r})}}__init4(){this.changeMarkProps=({from:e,to:t,middle:n})=>{const{onChange:r,mark:o}=this.props;let i={...o,...this.state.mark};e&&(i={...i,from:e}),t&&(i={...i,to:t}),n&&(i={...i,middle:n}),Ip(o,i)||r(o,i)}}render(){const{graphProps:t,onClick:n,labelNode:r,labelModeEnabled:o,coordinatesOnHover:i,gssLineData:a}=this.props,s=this.state.mark?this.state.mark:this.props.mark,l=Fp(s.from),c=Fp(s.to),u=Fp(s.middle);return l&&s.isBackground&&(l.disabled=!0),c&&s.isBackground&&(c.disabled=!0),u&&s.isBackground&&(u.disabled=!0),$p.createElement(e,{disabled:s.disabled,coordinatesOnHover:i,correctness:s.correctness,from:l,to:c,middle:u,graphProps:t,fill:s&&s.fill,gssLineData:a,onChange:this.changeMark,changeMarkProps:this.changeMarkProps,onClick:n,onDragStart:this.startDrag,onDragStop:this.stopDrag,labelNode:r,labelModeEnabled:o})}}).__initStatic(),qp))(eh)),nh=["line","polygon"],rh=[th(),{type:"polygon",Component:ep,complete:(e,t)=>({...t,building:!1,closed:!0}),addPoint:(e,t)=>{if(t){const{closed:n,points:r}=((e,t)=>{if(0===(t=t||[]).length)return{points:[e],closed:!1};if(1===t.length)return ni(e,t[0])?{points:t,closed:!1}:{points:[...t,e],closed:!1};if(t.length>=2){const n=ni(e,t[0]);if(n)return{points:t,closed:n};return!!t.find(t=>ni(t,e))?{points:t,closed:!1}:{points:[...t,e],closed:!1}}})(e,t.points);return{...t,closed:n,points:r,building:!n}}return{type:"polygon",points:[e],closed:!1,building:!0}}}],oh=r,ih=t,{styled:ah}=i,sh=s,{uniq:lh}=n,{isString:ch}=n,{color:uh}=o,{Accordion:ph}=l,{AccordionDetails:hh}=l,{AccordionSummary:dh}=l,{Typography:fh}=l,{ExpandMore:gh}=c,mh=e=>rh.find(t=>t.type===e)||null,yh=ah("div")(()=>({display:"flex",flexDirection:"column",width:"min-content"})),bh=ah("div")(()=>({display:"flex",justifyContent:"space-between",padding:"calc(1.25rem - 12px) calc(1.25rem - 12px) 1.25rem",color:uh.text(),backgroundColor:"#9FA8DA","& button":{fontSize:"0.875rem",padding:"0.25rem .3rem",width:"5rem"}})),vh=ah(ph)(()=>({backgroundColor:uh.primaryLight(),width:"100%",boxShadow:"none"})),xh=ah(dh)(({theme:e})=>({padding:`0 ${e.spacing(1)}`,minHeight:"32px !important","& .MuiAccordionSummary-content":{margin:"4px 0 !important"}})),wh=ah(hh)(({theme:e})=>({padding:0,marginTop:e.spacing(1),display:"flex",justifyContent:"space-between"})),Sh=ah("div")(()=>({display:"flex",flexDirection:"column",marginTop:".5rem"})),_h=({children:e,title:t})=>oh.createElement(vh,{square:!0,disableGutters:!0},oh.createElement(xh,{expandIcon:oh.createElement(gh,null)},oh.createElement(fh,{variant:"subtitle1"},t)),oh.createElement(wh,null,e));_h.propTypes={children:ih.node,title:ih.string};class kh extends oh.Component{static __initStatic(){this.propTypes={..._a,onUndo:ih.func,onRedo:ih.func,onReset:ih.func,toolbarTools:ih.arrayOf(ih.string),language:ih.string}}static __initStatic2(){this.defaultProps={collapsibleToolbar:!1,collapsibleToolbarTitle:"",disabledLabels:!1,disabledTitle:!1,showLabels:!0,showTitle:!0,toolbarTools:[]}}constructor(e){super(e),kh.prototype.__init.call(this),kh.prototype.__init2.call(this),this.state={currentTool:mh(e.defaultTool),labelModeEnabled:!1}}componentDidUpdate(e){const{defaultTool:t}=this.props;if(e.defaultTool!==t){const e=mh(t);this.setState({currentTool:e})}}__init(){this.changeCurrentTool=(e,t)=>this.setState({currentTool:t.find(t=>t.type===e)})}__init2(){this.toggleLabelMode=()=>this.setState(e=>({labelModeEnabled:!e.labelModeEnabled}))}render(){let{currentTool:e,labelModeEnabled:t}=this.state;const{axesSettings:n,className:r,coordinatesOnHover:o,collapsibleToolbar:i,collapsibleToolbarTitle:a,disabled:s,disabledLabels:l,disabledTitle:c,domain:u,labels:p,labelsPlaceholders:h,onChangeLabels:d,onChangeMarks:f,onChangeTitle:g,onUndo:m,onRedo:y,range:b,size:v,showLabels:x,showPixelGuides:w,showTitle:S,title:_,titlePlaceholder:k,language:C,disableToolbar:E=!1,gssLineData:O,onChangeGssLineData:P,onSolutionSetSelected:T,onCustomReset:A}=this.props;let{backgroundMarks:L,marks:N,toolbarTools:M}=this.props;M=lh(M||[]).filter(e=>!!ch(e))||[],L=(e=>e.filter(e=>!!nh.find(t=>t===e.type)))(L||[]),N=((e,t)=>t.filter(t=>!!e.find(e=>e===t.type)))(M,N||[]),O&&O.lineA&&N[0]&&"line"===N[0].type&&(N[0].fill=O.lineA.lineType),O&&O.lineB&&N[1]&&"line"===N[1].type&&(N[1].fill=O.lineB.lineType);const R=(e=>rh.map(t=>({...t,toolbar:!!e.find(e=>e===t.type)}))||[])(M);e&&((e,t)=>t&&e&&(e.find(e=>e.type===t.type)||{}).toolbar)(R,e)||(e=(e=>e.find(e=>e.toolbar))(R));const D=O&&oh.createElement(oh.Fragment,null,oh.createElement(ec,{numberOfLines:O.numberOfLines,gssLineData:O,onChange:P,disabled:!!s,language:C}),!s&&oh.createElement(Sh,null,oh.createElement(nu,{onUndo:m,onRedo:y,onReset:A,language:C})));return oh.createElement(yh,{className:sh(r)},!E&&oh.createElement(bh,null,i?oh.createElement(_h,{title:a},D):D),oh.createElement("div",{ref:e=>this.labelNode=e}),oh.createElement(ka,{axesSettings:n,backgroundMarks:L,coordinatesOnHover:o,currentTool:e,disabledLabels:l,disabledTitle:c,domain:u,labels:p,labelModeEnabled:t,labelsPlaceholders:h,marks:N,onChangeMarks:s?void 0:f,onChangeLabels:d,onChangeTitle:g,range:b,size:v,showLabels:x,showPixelGuides:w,showTitle:S,title:_,titlePlaceholder:k,tools:R,gssLineData:O,onSolutionSetSelected:T,disabled:!!s}))}}kh.__initStatic(),kh.__initStatic2();let Ch=null;const Eh=()=>e=>t=>(Ch=t,e(t)),Oh=r,Ph=t,{isEqual:Th}=n,Ah=Cl(e=>({marks:e.marks.present}),e=>({onChangeMarks:t=>e(Gl(t)),onUndo:()=>e(Ml()),onRedo:()=>e(Rl()),onReset:()=>e(Gl([]))}))(kh);class Lh extends Oh.Component{static __initStatic(){this.propTypes={onChangeMarks:Ph.func,marks:Ph.array}}constructor(e){super(e),Lh.prototype.__init.call(this);const t=function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var o=t[r];"function"==typeof e[o]&&(n[o]=e[o])}var i,a=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(void 0===n(void 0,{type:Zs.INIT}))throw new Error(Ks(12));if(void 0===n(void 0,{type:Zs.PROBE_UNKNOWN_ACTION()}))throw new Error(Ks(13))})}(n)}catch(e){i=e}return function(e,t){if(void 0===e&&(e={}),i)throw i;for(var r=!1,o={},s=0;s<a.length;s++){var l=a[s],c=n[l],u=e[l],p=c(u,t);if(void 0===p)throw t&&t.type,new Error(Ks(14));o[l]=p,r=r||p!==u}return(r=r||a.length!==Object.keys(e).length)?o:e}}({marks:Ul(El,{debug:!1})});this.store=Qs(t,{marks:e.marks},nl(Eh)),this.store.subscribe(this.onStoreChange)}componentDidUpdate(e){const{marks:t}=this.props,n=this.store.getState();Th(n.marks.present,t)||Th(e.marks,t)||this.store.dispatch(Gl(t))}__init(){this.onStoreChange=()=>{const{marks:e,onChangeMarks:t}=this.props,n=this.store.getState(),r=Ch,o=r.type.includes("UNDO")||r.type.includes("REDO");Th(n.marks.present,e)||t(n.marks.present,o)}}render(){const{onChangeMarks:e,marks:t,...n}=this.props,r=t&&t.find(e=>e.correctness);return r?Oh.createElement(kh,{...n,marks:t,disabled:r}):Oh.createElement(La,{store:this.store},Oh.createElement(Ah,{...n}))}}Lh.__initStatic();const Nh=r,Mh=t,{color:Rh}=o,{InputContainer:Dh}=o,{Accordion:jh}=l,{AccordionSummary:$h}=l,{AccordionDetails:Ih}=l,{Typography:Fh}=l,{ExpandMore:Vh}=c,{styled:Bh}=i,{NumberTextFieldCustom:zh}=p,{Toggle:Hh}=p,qh=h,Wh=Bh("div")(()=>({width:"450px"})),Uh=Bh("div")(()=>({display:"flex",flexDirection:"column",width:"100%"})),Gh=Bh("div")(()=>({display:"flex",flexDirection:"column",alignItems:"center"})),Yh=Bh("div")(()=>({display:"flex",justifyContent:"space-around",alignItems:"center"})),Kh=Bh("div")(({theme:e})=>({width:"130px",margin:`${e.spacing(1)} ${e.spacing(.5)}`})),Xh=Bh("div")(({theme:e})=>({width:"160px",margin:`${e.spacing(1)} ${e.spacing(.5)}`,"& .MuiFormControl-root":{width:"100%"}})),Jh=Bh("div")(({theme:e})=>({width:"230px",margin:`${e.spacing(1)} ${e.spacing(.5)}`,"& .MuiFormControl-root":{width:"100%"}})),Zh=Bh(Fh)(({theme:e})=>({fontStyle:"italic",margin:`${e.spacing(1)} 0`})),Qh=Bh("div")(()=>({display:"flex",justifyContent:"space-between",alignItems:"center"})),ed=Bh(Fh)(()=>({color:Rh.disabled()})),td=Bh("div")(({theme:e})=>({paddingTop:e.spacing(2)})),nd=e=>{const{disabled:t,displayedFields:n,labelValue:r,labelValues:o,gridValue:i,gridValues:a,onChange:s}=e,{labelStep:l={},step:c={}}=n;return Nh.createElement(Gh,null,c&&c.enabled&&Nh.createElement(Xh,null,Nh.createElement(zh,{label:c.label||"",value:i,customValues:a,variant:"outlined",disabled:t,onChange:(e,t)=>s("step",t)})),l&&l.enabled&&Nh.createElement(Xh,null,Nh.createElement(zh,{label:l.label||"",value:r,customValues:o,variant:"outlined",disabled:t,onChange:(e,t)=>s("labelStep",t)})))};nd.propTypes={disabled:Mh.bool,displayedFields:Mh.object,labelValue:Mh.number,labelValues:Mh.array,gridValue:Mh.number,gridValues:Mh.array,onChange:Mh.func};const rd=e=>{const{disabled:t,displayedFields:n,displayHeader:r,label:o,maxValue:i,minValue:a,onChange:s,type:l}=e,{axisLabel:c={},min:u={},max:p={}}=n;return Nh.createElement(Gh,null,r&&Nh.createElement(Fh,{variant:"subtitle2"},Nh.createElement("i",null,"domain"===l?"x":"y"),"-axis"),u&&u.enabled&&Nh.createElement(Xh,null,Nh.createElement(zh,{label:u.label||"",value:a,min:-1e4,max:i-.05,variant:"outlined",disabled:t,onChange:(e,t)=>s("min",t)})),p&&p.enabled&&Nh.createElement(Xh,null,Nh.createElement(zh,{label:p.label||"",value:i,min:a+.05,max:1e4,variant:"outlined",disabled:t,onChange:(e,t)=>s("max",t)})),c&&c.enabled&&Nh.createElement(Xh,null,Nh.createElement(Dh,{label:c.label||""},Nh.createElement(td,null,Nh.createElement(qh,{onChange:e=>s("axisLabel",e),markup:o||"",charactersLimit:5,activePlugins:["bold","italic","underline","strikethrough"]})))))};rd.propTypes={disabled:Mh.bool,displayedFields:Mh.object,displayHeader:Mh.bool,label:Mh.string,maxValue:Mh.number,minValue:Mh.number,type:Mh.string,onChange:Mh.func};const od=e=>{const{domain:t,displayedFields:n={},gridValues:r={},includeAxes:o,labelValues:i={},onChange:a,onChangeView:s,range:l,size:c,sizeConstraints:u,standardGrid:p}=e,{axisLabel:h={},dimensionsEnabled:d,includeAxesEnabled:f,labelStep:g={},min:m={},max:y={},standardGridEnabled:b,step:v={}}=n||{},x=m.enabled||y.enabled||h.enabled||v.enabled||g.enabled,w={step:v,labelStep:g},S={min:m,max:y,axisLabel:h},_=(e,t)=>{const n={...c,[e]:t};p&&(n.height=t),a({graph:n})},k=(e,n)=>{t[e]=n,p&&"axisLabel"!==e&&(l[e]=n),a({domain:t,range:l})},C=(e,t)=>{l[e]=t,a({range:l})},E=Nh.createElement(Nh.Fragment,null,Nh.createElement(Yh,null,Nh.createElement(rd,{displayedFields:S,displayHeader:x,type:"domain",minValue:t.min,maxValue:t.max,label:t.axisLabel,includeAxes:o,onChange:k}),Nh.createElement(rd,{displayedFields:S,displayHeader:x,type:"range",minValue:l.min,maxValue:l.max,label:l.axisLabel,disabled:p,includeAxes:o,onChange:C})),(m.enabled||y.enabled)&&Nh.createElement(Zh,null,"If you want the axis to be visible, use a zero or negative Min Value, and a positive Max Value"),(v.enabled||g.enabled)&&Nh.createElement(Yh,null,Nh.createElement(nd,{displayedFields:w,gridValue:t.step,labelValue:t.labelStep,gridValues:r.domain||[],labelValues:i.domain||[],onChange:k}),Nh.createElement(nd,{disabled:p,displayedFields:w,gridValue:l.step,labelValue:l.labelStep,gridValues:r.range||[],labelValues:i.range||[],onChange:C})),g.enabled&&Nh.createElement(Zh,null,"For unnumbered gridlines, enter a label interval of 0")),O=y.enabled?Nh.createElement(Gh,null,Nh.createElement(Jh,null,Nh.createElement(zh,{label:"Number of Vertical Gridlines",value:t.max,min:!o&&2,max:!o&&41,variant:"outlined",onChange:(e,t)=>k("max",t)})),Nh.createElement(Jh,null,Nh.createElement(zh,{label:"Number of Horizontal Gridlines",value:l.max,min:!o&&2,max:!o&&41,variant:"outlined",disabled:p,onChange:(e,t)=>C("max",t)}))):null;return Nh.createElement(Wh,null,Nh.createElement(jh,{onChange:s,TransitionProps:{timeout:{enter:225,exit:195}}},Nh.createElement($h,{expandIcon:Nh.createElement(Vh,null)},Nh.createElement(Fh,{variant:"subtitle1"},"Customize Grid Setup")),Nh.createElement(Ih,null,Nh.createElement(Uh,null,f&&Nh.createElement(Hh,{label:"Include axes and labels?",toggle:e=>{const n=e=>{const n="domain"===e?t:l;return{min:1,max:n.max<2||n.max>41?16:n.max,step:1,labelStep:0}},r={...l,...e?{labelStep:1}:n("range")},o={...t,...e?{labelStep:1}:n("domain")};a({includeAxes:e,range:r,domain:o})},checked:o}),b&&Nh.createElement(Hh,{label:"Constrain to standard coordinate grid?",toggle:e=>{a({standardGrid:e,range:{...t,axisLabel:l.axisLabel},graph:{...c,height:c.width}})},checked:p}),o?E:O,d&&Nh.createElement(Qh,null,Nh.createElement("div",null,Nh.createElement(Fh,null,"Dimensions(px)"),Nh.createElement(ed,null,"Min ",u.min,", Max ",u.max)),Nh.createElement(Kh,null,Nh.createElement(zh,{label:"Width",value:c.width,min:u.min,max:u.max,step:u.step,variant:"outlined",onChange:(e,t)=>_("width",t)})),Nh.createElement(Kh,null,Nh.createElement(zh,{label:"Height",value:c.height,min:u.min,max:u.max,step:u.step,variant:"outlined",disabled:p,onChange:(e,t)=>_("height",t)})))))))};od.propTypes={domain:Mh.object,displayedFields:Mh.object,gridValues:Mh.object,includeAxes:Mh.bool,labelValues:Mh.object,onChange:Mh.func,onChangeView:Mh.func,range:Mh.object,size:Mh.object,sizeConstraints:Mh.object,standardGrid:Mh.bool};const{isEqual:id}=n,ad=[.01,.02,.04,.05,.0625,.1,.125,.2,.25,.5,1,2,3,4,5,8,10,12,15,20,40,50,64,100,500,1e3],sd=[.01,.02,.05,.1,.2,.25,.5,1,2,5,10,20,50,100,500,1e3],ld={.01:[0,.01,.02,.04,.05,.1],.02:[0,.02,.04,.1],.04:[0,.04,.08,.16,.2],.05:[0,.05,.1,.2,.25],.0625:[0,.0625,.125,.25,.5],.1:[0,.1,.2,.4,.5,1],.125:[0,.125,.25,.5,1],.2:[0,.2,.5,.1],.25:[0,.25,.5,1,2],.5:[0,.5,1,2],1:[0,1,2,4,5,10],2:[0,2,4,8,10],3:[0,3,6,12,15],4:[0,4,8,16,20],5:[0,5,10,20,25],8:[0,8,16,32,40,64],10:[0,10,20,40,50,100],12:[0,12,24],15:[0,15,30,60],20:[0,20,40,80,100],40:[0,40,80,160,200],50:[0,50,100,200,250],64:[0,64,128],100:[0,100,200,400,500],500:[0,500,1e3,2500],1e3:[0,1e3,2e3,4e3,5e3]},cd=(e,t,n=!1)=>{const r=10*(e.max-e.min)/t,o=10*r;return(n?sd:ad).filter(e=>e>=r&&e<=o)},ud=e=>ld[e]||[],pd=(e,t,n,r)=>{const o=cd(e,t);let i=ud(e.step);if(!id(n,o)&&!o.includes(e.step)){const n=cd(e,t,!0)[0]||1;return e.step=n,i=ud(n),i.includes(e.labelStep)||(e.labelStep=n),{gridValues:o,labelValues:i}}return id(r,i)||i.includes(e.labelStep)||(e.labelStep=e.step),{gridValues:o,labelValues:i}},hd=e=>{const t=[];let n=0;for(;n>=e.min&&t.indexOf(n)<0;)t.push(n),n=Math.round(1e4*(n-e.step))/1e4;for(n=Math.round(1e4*e.step)/1e4;n<=e.max&&t.indexOf(n)<0;)t.push(n),n=Math.round(1e4*(n+e.step))/1e4;return t?t.filter(t=>t>=e.min&&t<=e.max):[]},dd=(e,t)=>Number(Math.sqrt((e.x-t.x)**2+(e.y-t.y)**2).toFixed(3)),fd=(e,t)=>{let n=e,r=!1,o=[...t];o.push(t[0]);for(let e=0;e<o.length-1;e++){let t=o[e],i=o[e+1];if(dd(t,n)+dd(n,i)===dd(t,i)){r=!0;break}}return r},gd=(e,t,n,r,o,i,a,s)=>{let l,c=(s-i)*(n-e)-(a-o)*(r-t);return 0===c?null:(l=((a-o)*(t-i)-(s-i)*(e-o))/c,{x:Number((e+l*(n-e)).toFixed(3)),y:Number((t+l*(r-t)).toFixed(3))})},md=(e,t,n)=>e.x>=t.min&&e.x<=t.max&&e.y>=n.min&&e.y<=n.max,yd=(e,t,n)=>{let r=[],o=[[t.max,n.max,t.max,n.min],[t.min,n.max,t.min,n.min],[t.min,n.max,t.max,n.max],[t.min,n.min,t.max,n.min]];for(let i=0;i<o.length;i++){let a=gd(e.from.x,e.from.y,e.to.x,e.to.y,o[i][0],o[i][1],o[i][2],o[i][3]);a&&md(a,t,n)&&r.push(a)}return r},bd=e=>{e.sort((e,t)=>e.y-t.y);const t=(e[0].y+e[e.length-1].y)/2;e.sort((e,t)=>t.x-e.x);const n=(e[0].x+e[e.length-1].x)/2,r=t;let o;e.forEach(e=>{let t=Math.atan2(e.y-r,e.x-n);o?t<o&&(t+=2*Math.PI):o=t,e.angle=t}),e.sort((e,t)=>e.angle-t.angle);const i=e.reverse();return i.unshift(i.pop()),i.map(({angle:e,...t})=>t)},vd=e=>Math.sqrt(e.x*e.x+e.y*e.y),xd=(e,t)=>{const n=((e,t)=>e.x*t.x+e.y*t.y)(e,t),r=vd(e),o=vd(t);return Math.acos(n/(r*o))},wd=(e,t,n,r)=>{const o={x:t.x-e.x,y:t.y-e.y},i={x:n.x-e.x,y:n.y-e.y},a={x:r.x-e.x,y:r.y-e.y},s=xd(o,a)+xd(i,a);return Math.abs(s-xd(o,i))<1e-4},Sd=e=>e.filter((t,n)=>n===e.findIndex(e=>t.x===e.x&&t.y===e.y)),_d=e=>{for(let t=0;t<e.length;t++)e[t]=e[t].filter((n,r)=>r===e[t].findIndex(e=>n.x===e.x&&n.y===e.y));e=e.filter(e=>e.length>2);for(let t=0;t<e.length;t++)e[t]=bd(e[t]);return e},kd=(e,t,n)=>{let r=[];return r.push([].concat(e)),r.push([].concat(e)),e[0].x===t.max&&e[1].y===n.max||e[1].x===t.max&&e[0].y===n.max?(r[0].push({x:t.max,y:n.max}),r[1].push({x:t.min,y:n.max},{x:t.min,y:n.min},{x:t.max,y:n.min})):e[0].x===t.min&&e[1].y===n.max||e[1].x===t.min&&e[0].y===n.max?(r[0].push({x:t.min,y:n.max}),r[1].push({x:t.max,y:n.max},{x:t.max,y:n.min},{x:t.min,y:n.min})):e[0].x===t.min&&e[1].y===n.min||e[1].x===t.min&&e[0].y===n.min?(r[0].push({x:t.min,y:n.min}),r[1].push({x:t.max,y:n.min},{x:t.max,y:n.max},{x:t.min,y:n.max})):e[0].x===t.max&&e[1].y===n.min||e[1].x===t.max&&e[0].y===n.min?(r[0].push({x:t.max,y:n.min}),r[1].push({x:t.min,y:n.min},{x:t.min,y:n.max},{x:t.max,y:n.max})):e[0].x===t.min&&e[1].x===t.max||e[0].x===t.max&&e[1].x===t.min?(r[0].push({x:t.min,y:n.max},{x:t.max,y:n.max}),r[1].push({x:t.min,y:n.min},{x:t.max,y:n.min})):(e[0].y===n.min&&e[1].y===n.max||e[0].y===n.max&&e[1].y===n.min)&&(r[0].push({x:t.min,y:n.min},{x:t.min,y:n.max}),r[1].push({x:t.max,y:n.min},{x:t.max,y:n.max})),_d(r)},Cd=(e,t)=>{const n=t.length,r=e.x,o=e.y;let i,a=!1,s=t[0];for(let e=1;e<=n;e++){if(i=t[e%n],o>Math.min(s.y,i.y)&&o<=Math.max(s.y,i.y)&&r<=Math.max(s.x,i.x)){const e=(o-s.y)*(i.x-s.x)/(i.y-s.y)+s.x;(s.x===i.x||r<=e)&&(a=!a)}s=i}return a},Ed=r,Od=t,{MenuItem:Pd}=l,{Select:Td}=l,{Typography:Ad}=l,{OutlinedInput:Ld}=l,{styled:Nd}=i,{isEqual:Md}=n,{cloneDeep:Rd}=n,{AlertDialog:Dd}=p,jd=Nd("div")(({theme:e})=>({display:"flex",flexWrap:"wrap",marginBottom:e.spacing(2.5)})),$d=Nd("div")(({theme:e})=>({display:"flex",flexDirection:"column",marginRight:e.spacing(3),marginBottom:e.spacing(2.5)})),Id=Nd("div")({display:"flex",flexDirection:"column"}),Fd=Nd(Ad)(({theme:e})=>({marginTop:e.spacing(1.5),marginBottom:e.spacing(1)})),Vd=Nd("div")(({theme:e})=>({display:"flex",flexWrap:"wrap",alignItems:"center",width:"100%",marginBottom:e.spacing(2.5)})),Bd=Nd(Ad)(({theme:e})=>({padding:`0 ${e.spacing(1)}`})),zd=Nd(Td)({flex:"1"});class Hd extends Ed.Component{static __initStatic(){this.propTypes={availableTools:Od.array,authoring:Od.object,dimensionsEnabled:Od.bool,graphDimensions:Od.object,gridConfigurations:Od.array,labelsPlaceholders:Od.object,model:Od.object.isRequired,onChange:Od.func.isRequired,showLabels:Od.bool,showTitle:Od.bool,titlePlaceholder:Od.string}}constructor(e){super(e),Hd.prototype.__init.call(this),Hd.prototype.__init2.call(this),Hd.prototype.__init3.call(this),Hd.prototype.__init4.call(this),Hd.prototype.__init5.call(this);const{domain:t,range:n,graph:r}=e.model||{},o={domain:cd(t,r.width,!0),range:cd(n,r.height,!0)},i={domain:ud(t.step),range:ud(n.step)};this.state={gridValues:o,labelValues:i,showPixelGuides:!1,dialog:{isOpened:!1},domain:{...t},range:{...n}}}__init(){this.changeLabels=e=>{const{model:t,onChange:n}=this.props;n({...t,labels:e})}}__init2(){this.changeTitle=e=>{const{model:t,onChange:n}=this.props;n({...t,title:e})}}__init3(){this.onConfigChange=(e,t)=>{const{model:n,onChange:r}=this.props,{defaultGridConfiguration:o=0}=n,{gridValues:i,labelValues:a,domain:s,range:l}=this.state,c={...n,...e},{answers:u,domain:p,includeAxes:h=!0,graph:d,range:f,standardGrid:g}=c,m={domain:[],range:[]},y={domain:[],range:[]},b=t>=0?t:o;if(h){const e=pd(p,d.width,i.domain,a.domain);m.domain=e.gridValues||[],y.domain=e.labelValues||[]}if(g)m.range=m.domain,y.range=y.domain,f.step=p.step,f.labelStep=p.labelStep;else if(h){const e=pd(f,d.height,i.range,a.range);m.range=e.gridValues||[],y.range=e.labelValues||[]}const v=Rd(u);v.correctAnswer.marks=u.correctAnswer.marks.filter(e=>"polygon"!==e.type);const x=((e,t,n)=>{const r=hd(e),o=hd(t),i=(e,t)=>r.includes(e)&&o.includes(t);return Object.entries(n||{}).reduce((e,[t,n])=>(e[t]={...n,marks:(n.marks||[]).filter(e=>{if("point"===e.type)return i(e.x,e.y);if("polygon"===e.type)return!e.points.find(e=>!i(e.x,e.y));const t=e.from||e.root,n=e.to||e.edge;return e.building?i(t.x,t.y):i(t.x,t.y)&&i(n.x,n.y)})},e),{})})(p,f,v);Md(v,x)?(this.setState({gridValues:m,labelValues:y,domain:{...p},range:{...f}}),r({...c,defaultGridConfiguration:b})):this.setState({dialog:{isOpened:!0,onClose:()=>this.setState({dialog:{isOpened:!1}},r({...n,domain:s,range:l})),onConfirm:()=>{c.gssLineData.sections=[],c.gssLineData.selectedTool="lineA",this.setState({gridValues:m,labelValues:y,dialog:{isOpened:!1},domain:{...p},range:{...f}},r({...c,answers:x,defaultGridConfiguration:b}))}}})}}__init4(){this.onChangeView=(e,t)=>{const{graphDimensions:{enabled:n}={}}=this.props;n&&this.setState({showPixelGuides:t})}}__init5(){this.changeGridConfiguration=e=>{const{gridConfigurations:t}=this.props,{value:n}=e.target;this.onConfigChange(function(e){let t,n=e[0],r=1;for(;r<e.length;){const o=e[r],i=e[r+1];if(r+=2,("optionalAccess"===o||"optionalCall"===o)&&null==n)return;"access"===o||"optionalAccess"===o?(t=n,n=i(n)):"call"!==o&&"optionalCall"!==o||(n=i((...e)=>n.call(t,...e)),t=void 0)}return n}([t,"optionalAccess",e=>e[n]])||{},n)}}render(){const{authoring:e={},gridConfigurations:t=[],graphDimensions:n={},labelsPlaceholders:r,model:o,showLabels:i,dimensionsEnabled:a,showTitle:s,titlePlaceholder:l,mathMlOptions:c={}}=this.props,{arrows:u,coordinatesOnHover:p,defaultGridConfiguration:h,domain:d,labels:f,range:g,standardGrid:m,title:y}=o||{},b=(o||{}).graph||{},{min:v,max:x,step:w}=n||{},{dialog:S={},gridValues:_,labelValues:k,showPixelGuides:C}=this.state,E={min:Math.max(150,v),max:Math.min(800,x),step:w>=1?Math.min(200,w):20},O={axisLabel:e.axisLabel,dimensionsEnabled:a,includeAxesEnabled:!1,labelStep:e.labelStep,min:e.min,max:e.max,standardGridEnabled:e.standardGridEnabled,step:e.step},P=e.enabled&&Object.values(O).some(e=>"object"==typeof e?e.enabled:e);return Ed.createElement(jd,null,Ed.createElement($d,null,t&&t.length?Ed.createElement(Vd,null,Ed.createElement(Bd,{component:"div",variant:"h6"},"Grid Configuration"),Ed.createElement(zd,{input:Ed.createElement(Ld,{labelWidth:10}),displayEmpty:!0,onChange:this.changeGridConfiguration,value:h,MenuProps:{transitionDuration:{enter:225,exit:195}}},(t||[]).map((e,t)=>Ed.createElement(Pd,{key:t,value:t},e.label)))):null,P&&Ed.createElement(od,{displayedFields:O,domain:d,gridValues:_,includeAxes:!0,labelValues:k,range:g,size:b,sizeConstraints:E,standardGrid:m,onChange:this.onConfigChange,onChangeView:this.onChangeView})),Ed.createElement(Id,{key:"graph"},Ed.createElement(Ad,{component:"div",variant:"h6"},"Define Graph Attributes"),Ed.createElement(Fd,{component:"div",variant:"body1"},"Use this interface to add/edit a title and/or labels"),Ed.createElement(Lh,{axesSettings:{includeArrows:u},backgroundMarks:[],coordinatesOnHover:p,collapsibleToolbar:!0,collapsibleToolbarTitle:"Add Background Shapes to Graph",domain:d,key:"graphing-config",labels:f,labelsPlaceholders:r,marks:[],onChangeLabels:this.changeLabels,onChangeTitle:this.changeTitle,range:g,showLabels:i,showPixelGuides:C,showTitle:s,size:{width:b.width,height:b.height},title:y,titlePlaceholder:l,disableToolbar:!0,mathMlOptions:c})),Ed.createElement(Dd,{open:S.isOpened,title:"Warning",text:"This change would make it impossible for students to plot one or more graph objects in the current correct answers. If you proceed, all such graph objects will be removed from the correct answers.",onClose:S.onClose,onConfirm:S.onConfirm}))}}Hd.__initStatic();const qd=r,Wd=t,{styled:Ud}=i,{set:Gd}=n,{RadioGroup:Yd}=l,{Typography:Kd}=l,{Radio:Xd}=l,{FormControlLabel:Jd}=l,{AlertDialog:Zd}=p,Qd=Ud(Kd)(({theme:e})=>({marginTop:e.spacing(1.5),marginBottom:e.spacing(1)})),ef=Ud(Jd)({height:"20px",width:"fit-content",padding:".5rem 0"}),tf=Ud(Xd)({color:"#000000 !important"}),nf=Ud("div")(({theme:e})=>({fontSize:e.typography.fontSize-2,color:e.palette.error.main,paddingTop:e.spacing(1)}));class rf extends qd.Component{constructor(...e){super(...e),rf.prototype.__init.call(this),rf.prototype.__init2.call(this),rf.prototype.__init3.call(this),rf.prototype.__init4.call(this),rf.prototype.__init5.call(this),rf.prototype.__init6.call(this),rf.prototype.__init7.call(this),rf.prototype.__init8.call(this),rf.prototype.__init9.call(this),rf.prototype.__init10.call(this)}static __initStatic(){this.propTypes={errors:Wd.object,model:Wd.object.isRequired,onChange:Wd.func.isRequired}}__init(){this.state={dialog:{open:!1}}}__init2(){this.handleAlertDialog=(e,t)=>this.setState({dialog:{open:e}},t)}__init3(){this.changeMarks=e=>{const{model:t,onChange:n}=this.props,{gssLineData:r}=t;"lineA"===r.selectedTool&&e.length>0&&(e[0].fill=r.lineA.lineType),"lineB"===r.selectedTool&&e.length>1&&(e[1].fill=r.lineB.lineType),0===e.length&&(r.selectedTool="lineA",Gd(t,"gssLineData",r)),Gd(t,"answers.correctAnswer.marks",e),n(t)}}__init4(){this.onResetClick=()=>{const{model:e,onChange:t}=this.props,{gssLineData:n,answers:r}=e;this.setState({dialog:{open:!0,title:"Warning",text:"This will remove all the elements added on the graph and reset graph to original state. Are you sure you want to continue?",onConfirm:()=>{r.correctAnswer.marks=[],n.selectedTool="lineA",n.lineA.lineType="Solid",n.lineB&&(n.lineB.lineType="Solid"),Gd(e,"answers",r),Gd(e,"gssLineData",n),t(e),this.handleAlertDialog(!1)},onClose:()=>this.handleAlertDialog(!1)}})}}__init5(){this.changeNumberOfLines=(e,t)=>{const{model:n}=this.props;"solutionSet"===n.gssLineData.selectedTool?this.setState({dialog:{open:!0,title:"Warning",text:"Changing number of lines after adding solution set will remove added solution set. Are you sure you want to continue?",onConfirm:()=>{this.changeLine(e,t),this.handleAlertDialog(!1)},onClose:()=>this.handleAlertDialog(!1)}}):this.changeLine(e,t)}}__init6(){this.changeLine=(e,t)=>{const{model:n,onChange:r}=this.props,{answers:o}=n;let i=n.gssLineData;o.correctAnswer.marks=o.correctAnswer.marks.filter(e=>"polygon"!==e.type),1===Number.parseInt(t)?(delete i.lineB,o.correctAnswer.marks.length>1&&o.correctAnswer.marks.pop(),i.numberOfLines=1,i.selectedTool="lineA"):(i.numberOfLines=2,o.correctAnswer.marks.length>0&&(i.selectedTool="lineB"),i.lineB={lineType:"Solid"}),Gd(n,"answers",o),Gd(n,"gssLineData",i),r(n)}}__init7(){this.onSolutionSetSelected=e=>{const{model:t,onChange:n}=this.props,{answers:r,gssLineData:o}=t;for(const t of o.sections)if(Cd(e,t)){let e={points:t,building:!1,type:"polygon",closed:!0,isSolution:!0};r.correctAnswer.marks=r.correctAnswer.marks.filter(e=>"polygon"!==e.type),r.correctAnswer.marks.push(e);break}Gd(t,"answers",r),n(t)}}__init8(){this.onChangeGssLineData=(e,t)=>{const{model:n}=this.props,{answers:r,domain:o,range:i}=n;if("solutionSet"===e.selectedTool){let n=r.correctAnswer.marks.filter(e=>"polygon"!==e.type);if(((e,t)=>0!==t.length&&(1!==e.numberOfLines?2===t.length&&!t[1].building:1===t.length?!t[0].building:void 0))(e,n)){let t=r.correctAnswer.marks.filter(e=>"polygon"!==e.type);e=((e,t,n,r)=>{if(1===e.numberOfLines){const o=yd(t[0],n,r);e.sections=kd(o,n,r)}else e.sections=((e,t,n,r)=>{let o=t[0],i=t[1],a=[{x:n.min,y:r.min},{x:n.min,y:r.max},{x:n.max,y:r.min},{x:n.max,y:r.max}],s=gd(o.from.x,o.from.y,o.to.x,o.to.y,i.from.x,i.from.y,i.to.x,i.to.y),l=[],c=yd(o,n,r);c=Sd(c);let u=yd(i,n,r);if(u=Sd(u),s&&((e,t,n)=>e.x>t.min&&e.x<t.max&&e.y>n.min&&e.y<n.max)(s,n,r))for(let e=0;e<c.length;e++)for(let t=0;t<u.length;t++){let n=[],r=[];n.push(s),n.push(c[e]),n.push(u[t]);for(let o=0;o<a.length;o++)wd(s,c[e],u[t],a[o])?n.push(a[o]):r.push(a[o]);a=r,l.push(n)}else{let e=kd(c,n,r),t=kd(u,n,r);for(let t=0;t<e.length;t++)fd(u[0],e[t])&&fd(u[1],e[t])||l.push(e[t]);for(let e=0;e<t.length;e++)fd(c[0],t[e])&&fd(c[1],t[e])||l.push(t[e]);for(let e=0;e<l.length;e++)a=a.filter(function(t){return!l[e].some(function(e){return t.x===e.x&&t.y===e.y})});let o=a.concat(c,u);l.push(o)}return _d(l)})(0,t,n,r);return e})(e,t,o,i)}else e.selectedTool=t,this.setState({dialog:{open:!0,title:"Warning",text:"Please define the line(s) and then select a solution set for the item.",onConfirm:()=>this.handleAlertDialog(!1)}});this.handleGssLineDataChange(e,r)}else{let n=r.correctAnswer.marks.filter(e=>"polygon"===e.type);"solutionSet"===t&&n.length>0?this.setState({dialog:{open:!0,title:"Warning",text:"Changing a line after adding a solution set will clear your selected solution set. Click 'Clear Solution Set' to change the line. Otherwise, click 'Cancel'.",onConfirm:()=>{r.correctAnswer.marks=r.correctAnswer.marks.filter(e=>"polygon"!==e.type),this.handleGssLineDataChange(e,r),this.handleAlertDialog(!1)},onConfirmText:"CLEAR SOLUTION SET",onClose:()=>{e.selectedTool=t,this.handleGssLineDataChange(e,r),this.handleAlertDialog(!1)}}}):this.handleGssLineDataChange(e,r)}}}__init9(){this.handleGssLineDataChange=(e,t)=>{const{model:n,onChange:r}=this.props;t.correctAnswer.marks.length>0&&t.correctAnswer.marks[0]&&e.lineA&&(t.correctAnswer.marks[0].fill=e.lineA.lineType),t.correctAnswer.marks.length>1&&t.correctAnswer.marks[1]&&e.lineB&&(t.correctAnswer.marks[1].fill=e.lineB.lineType),("lineB"===e.selectedTool&&0===t.correctAnswer.marks.length||"lineB"===e.selectedTool&&t.correctAnswer.marks[0].building)&&(this.setState({dialog:{open:!0,title:"Warning",text:"Please add Line A to the graph before adding Line B",onConfirm:()=>this.handleAlertDialog(!1)}}),e.selectedTool="lineA"),"lineA"===e.selectedTool&&t.correctAnswer.marks.length>1&&t.correctAnswer.marks[1].building&&(this.setState({dialog:{open:!0,title:"Warning",text:"Please add Line B to the graph before switching to Line A",onConfirm:()=>this.handleAlertDialog(!1)}}),e.selectedTool="lineB"),Gd(n,"gssLineData",e),Gd(n,"answers",t),r(n)}}__init10(){this.updateModel=e=>{const{model:t,onChange:n}=this.props;n({...t,...e})}}render(){const{errors:e,model:t,mathMlOptions:n={}}=this.props,{dialog:r}=this.state,{gssLineData:o={numberOfLines:1,selectedTool:"lineA",lineA:{lineType:"Solid"}},arrows:i,coordinatesOnHover:a,domain:s,graph:l={},labels:c,labelsEnabled:u,range:p,title:h,titleEnabled:d,answers:f}=t||{},{correctAnswerErrors:g=""}=e||{};return qd.createElement("div",null,qd.createElement(Kd,{component:"div",variant:"h6"},"Define Line Type(s) and Correct Response"),qd.createElement(Qd,{component:"div",variant:"body1"},"Use this interface to choose how many lines students will be able to draw, and to define the correct answer."),qd.createElement(Qd,{component:"div",variant:"body1"},"Choose Number of Lines"),qd.createElement(Yd,{name:"numberOfLines",value:o.numberOfLines,onChange:this.changeNumberOfLines},qd.createElement(ef,{value:"1",control:qd.createElement(tf,{checked:1===o.numberOfLines}),label:"One"}),qd.createElement(ef,{value:"2",control:qd.createElement(tf,{checked:2===o.numberOfLines}),label:"Two"})),qd.createElement(qd.Fragment,null,qd.createElement(Lh,{style:g.correctAnswer&&{border:"2px solid red"},axesSettings:{includeArrows:i},backgroundMarks:[],coordinatesOnHover:a,disabledLabels:!0,disabledTitle:!0,domain:s,draggableTools:!0,labels:c,marks:f&&f.correctAnswer&&f.correctAnswer.marks?f.correctAnswer.marks:[],onChangeMarks:e=>this.changeMarks(e),onCustomReset:this.onResetClick,range:p,showLabels:u,showTitle:d,size:{width:l.width,height:l.height},title:h,gssLineData:o,onChangeGssLineData:this.onChangeGssLineData,onSolutionSetSelected:this.onSolutionSetSelected,toolbarTools:["line","polygon"],mathMlOptions:n}),g.correctAnswer&&qd.createElement(nf,null,g.correctAnswer)),qd.createElement(Zd,{open:r.open,title:r.title,text:r.text,onClose:r.onClose,onConfirm:r.onConfirm,onConfirmText:r.onConfirmText?r.onConfirmText:"OK"}))}}rf.__initStatic();const of=r,{styled:af}=i,sf=t,lf=a,{Typography:cf}=l,{settings:uf}=p,{layout:pf}=p,{InputContainer:hf}=p,df=h;function ff(e){let t,n=e[0],r=1;for(;r<e.length;){const o=e[r],i=e[r+1];if(r+=2,("optionalAccess"===o||"optionalCall"===o)&&null==n)return;"access"===o||"optionalAccess"===o?(t=n,n=i(n)):"call"!==o&&"optionalCall"!==o||(n=i((...e)=>n.call(t,...e)),t=void 0)}return n}const{Panel:gf,toggle:mf,radio:yf,checkboxes:bf,textField:vf,dropdown:xf}=uf;lf("@pie-element:graphing-solution-set:configure");const wf=af(hf)(({theme:e})=>({width:"100%",paddingTop:e.spacing(2),marginBottom:e.spacing(2),marginTop:e.spacing(2)})),Sf=af(cf)(({theme:e})=>({marginBottom:e.spacing(2.5)}));class _f extends of.Component{constructor(...e){super(...e),_f.prototype.__init.call(this),_f.prototype.__init2.call(this),_f.prototype.__init3.call(this)}static __initStatic(){this.propTypes={onModelChanged:sf.func,onConfigurationChanged:sf.func,imageSupport:sf.object,uploadSoundSupport:sf.object,model:sf.object.isRequired,configuration:sf.object.isRequired}}componentDidMount(){const{configuration:e,onModelChanged:t,model:n}=this.props,{title:r,graphDimensions:o}=e||{};let{arrows:i,titleEnabled:a,dimensionsEnabled:s}=n||{};"boolean"==typeof i&&(i=i?{left:!0,right:!0,up:!0,down:!0}:{left:!1,right:!1,up:!1,down:!1});const l=null==a?r.enabled:a,c=null==s?o.enabled:s;t&&t({...n,arrows:i,titleEnabled:l,dimensionsEnabled:c})}__init(){this.onRationaleChange=e=>{const{onModelChanged:t,model:n}=this.props;t({...n,rationale:e})}}__init2(){this.onPromptChange=e=>{const{onModelChanged:t,model:n}=this.props;t({...n,prompt:e})}}__init3(){this.onTeacherInstructionsChange=e=>{const{onModelChanged:t,model:n}=this.props;t({...n,teacherInstructions:e})}}render(){const{model:e,configuration:t,onConfigurationChanged:n,onModelChanged:r,imageSupport:o,uploadSoundSupport:i}=this.props,{arrows:a={},authoring:s={},coordinatesOnHover:l={},contentDimensions:c={},gridConfigurations:u=[],graphDimensions:p={},instruction:h={},labels:d={},padding:f={},prompt:g={},rationale:m={},scoringType:y={},settingsPanelDisabled:b,spellCheck:v={},studentInstructions:x={},teacherInstructions:w={},title:S={},maxImageWidth:_={},maxImageHeight:k={},withRubric:C={},language:E={},languageChoices:O={},mathMlOptions:P={}}=t||{},{errors:T={},extraCSSRules:A,labelsEnabled:L,dimensionsEnabled:N,promptEnabled:M,rationaleEnabled:R,spellCheckEnabled:D,teacherInstructionsEnabled:j,titleEnabled:$}=e||{},I=_&&_.prompt,F=k&&k.prompt,V={top:d.top,right:d.right,bottom:d.bottom,left:d.left},B={arrows:a.settings&&bf(a.label,{left:a.left,right:a.right,up:a.up,down:a.down}),titleEnabled:S.settings&&mf(S.label),padding:f.settings&&mf(f.label),labelsEnabled:d.settings&&mf(d.label),"language.enabled":E.settings&&mf(E.label,!0),language:E.settings&&E.enabled&&xf(O.label,O.options),dimensionsEnabled:p.settings&&mf(p.label),coordinatesOnHover:l.settings&&mf(l.label)},z={"authoring.enabled":s.settings&&mf(s.label,!0),teacherInstructionsEnabled:w.settings&&mf(w.label),studentInstructionsEnabled:x.settings&&mf(x.label),promptEnabled:g.settings&&mf(g.label),rationaleEnabled:m.settings&&mf(m.label),spellCheckEnabled:v.settings&&mf(v.label),scoringType:y.settings&&yf(y.label,["dichotomous","partial scoring"]),rubricEnabled:ff([C,"optionalAccess",e=>e.settings])&&mf(ff([C,"optionalAccess",e=>e.label])),instruction:h.settings&&vf(h.label)};return of.createElement(pf.ConfigLayout,{extraCSSRules:A,dimensions:c,hideSettings:b,settings:of.createElement(gf,{model:e,configuration:t,onChangeModel:r,onChangeConfiguration:n,groups:{Settings:B,Properties:z}})},of.createElement(Sf,{component:"div",variant:"body1"},ff([h,"optionalAccess",e=>e.label])||""),j&&of.createElement(wf,{label:w.label},of.createElement(df,{markup:e.teacherInstructions||"",onChange:this.onTeacherInstructionsChange,imageSupport:o,nonEmpty:!1,spellCheck:D,maxImageWidth:_&&_.teacherInstructions||I,maxImageHeight:k&&k.teacherInstructions||F,uploadSoundSupport:i,languageCharactersProps:[{language:"spanish"},{language:"special"}],mathMlOptions:P})),M&&of.createElement(wf,{label:g.label},of.createElement(df,{markup:e.prompt,onChange:this.onPromptChange,imageSupport:o,nonEmpty:!1,spellCheck:D,disableUnderline:!0,maxImageWidth:I,maxImageHeight:F,uploadSoundSupport:i,languageCharactersProps:[{language:"spanish"},{language:"special"}],mathMlOptions:P})),of.createElement(Hd,{authoring:s,gridConfigurations:u,graphDimensions:p,labelsPlaceholders:V,model:e,showLabels:L,dimensionsEnabled:N,showTitle:$,titlePlaceholder:S.placeholder,onChange:this.props.onModelChanged,mathMlOptions:P}),of.createElement(rf,{errors:T,model:e,onChange:this.props.onModelChanged,mathMlOptions:P}),R&&of.createElement(wf,{label:m.label||"Rationale"},of.createElement(df,{markup:e.rationale||"",onChange:this.onRationaleChange,imageSupport:o,spellCheck:D,maxImageWidth:_&&_.rationale||I,maxImageHeight:k&&k.rationale||F,uploadSoundSupport:i,languageCharactersProps:[{language:"spanish"},{language:"special"}],mathMlOptions:P})))}}_f.__initStatic();var kf={};Object.defineProperty(kf,"__esModule",{value:!0});class Cf extends CustomEvent{constructor(e,t=!1){super(Cf.TYPE,{bubbles:!0,detail:{update:e,reset:t}}),this.update=e,this.reset=t}}Cf.TYPE="model.updated";var Ef=kf.ModelUpdatedEvent=Cf;class Of extends CustomEvent{constructor(e,t){super(Of.TYPE,{bubbles:!0,detail:{src:e,done:t}}),this.src=e,this.done=t}}Of.TYPE="delete.image";var Pf=kf.DeleteImageEvent=Of;class Tf extends CustomEvent{constructor(e){super(Tf.TYPE,{bubbles:!0,detail:e}),this.handler=e}}Tf.TYPE="insert.image";var Af=kf.InsertImageEvent=Tf;class Lf extends CustomEvent{constructor(e,t){super(Lf.TYPE,{bubbles:!0,detail:{src:e,done:t}}),this.src=e,this.done=t}}Lf.TYPE="delete.sound";var Nf=kf.DeleteSoundEvent=Lf;class Mf extends CustomEvent{constructor(e){super(Mf.TYPE,{bubbles:!0,detail:e}),this.handler=e}}Mf.TYPE="insert.sound";var Rf=kf.InsertSoundEvent=Mf,Df={answers:{correctAnswer:{name:"Correct Answer",marks:[]}},arrows:{left:!0,right:!0,up:!0,down:!0},marks:[],defaultGridConfiguration:0,domain:{min:-5,max:5,step:1,labelStep:1,axisLabel:"x"},graph:{width:500,height:500},gssLineData:{numberOfLines:1,selectedTool:"lineA",sections:[],lineA:{lineType:"Solid"}},includeAxes:!0,labels:{},labelsEnabled:!0,padding:!0,prompt:"",range:{min:-5,max:5,step:1,labelStep:1,axisLabel:"y"},rationale:"",standardGrid:!1,title:"",coordinatesOnHover:!1,promptEnabled:!0,rationaleEnabled:!0,teacherInstructionsEnabled:!0,studentInstructionsEnabled:!0},jf={authoring:{settings:!1,label:"Customize Grid Setup",enabled:!0,includeAxesEnabled:!1,standardGridEnabled:!0,min:{label:"Min Value",enabled:!0},max:{label:"Max Value",enabled:!0},axisLabel:{label:"Label",enabled:!0},step:{label:"Grid Interval",enabled:!0},labelStep:{label:"Label Interval",enabled:!0}},arrows:{settings:!0,label:"Include Arrows",left:{label:"left"},right:{label:"right"},up:{label:"up"},down:{label:"down"}},gridConfigurations:[{label:"4-quadrant coordinate grid, -10 to 10",arrows:{left:!0,right:!0,up:!0,down:!0},domain:{min:-10,max:10,step:1,padding:0,labelStep:1,axisLabel:"<i>x</i>"},graph:{width:480,height:480},includeAxes:!0,labels:{top:"",right:"",bottom:"",left:""},padding:!0,range:{min:-10,max:10,step:1,padding:0,labelStep:1,axisLabel:"<i>y</i>"},standardGrid:!0,title:""},{label:"0 to 10 on both axes",arrows:{left:!1,right:!0,up:!0,down:!1},domain:{min:0,max:10,step:1,padding:0,labelStep:1,axisLabel:"<i>x</i>"},graph:{width:480,height:480},includeAxes:!0,labels:{top:"",right:"",bottom:"",left:""},padding:!0,range:{min:0,max:10,step:1,padding:0,labelStep:1,axisLabel:"<i>y</i>"},standardGrid:!0,title:""},{label:"0 to 20 on both axes",arrows:{left:!1,right:!0,up:!0,down:!1},domain:{min:0,max:20,step:1,padding:0,labelStep:1,axisLabel:"<i>x</i>"},graph:{width:480,height:480},includeAxes:!0,labels:{top:"",right:"",bottom:"",left:""},padding:!0,range:{min:0,max:20,step:1,padding:0,labelStep:1,axisLabel:"<i>y</i>"},standardGrid:!0,title:""},{label:"Sample Data Graph",arrows:{left:!1,right:!0,up:!0,down:!1},domain:{min:0,max:30,step:1,padding:0,labelStep:2,axisLabel:"<i>t</i>"},graph:{width:480,height:480},includeAxes:!0,labels:{top:"",right:"",bottom:"Time (seconds)",left:"Distance (meters)"},padding:!0,range:{min:0,max:80,step:5,padding:0,labelStep:10,axisLabel:"<i>d</i>"},standardGrid:!1,title:"Distance as a function of time"}],graphDimensions:{settings:!1,label:"Graph Dimensions",enabled:!0,min:150,max:800,step:20},padding:{settings:!1,label:"Padding"},labels:{settings:!0,label:"Graph Labels",enabled:!0,top:"Click here to add a top label",right:"Click here to add a right label",bottom:"Click here to add a bottom label",left:"Click here to add a left label"},prompt:{settings:!0,label:"Item Stem"},rationale:{settings:!0,label:"Rationale"},scoringType:{settings:!1,label:"Scoring Type"},studentInstructions:{settings:!1,label:"Student Instructions"},teacherInstructions:{settings:!0,label:"Teacher Instructions"},title:{settings:!0,label:"Graph Title",enabled:!0,placeholder:"Click here to add a title for this graph"},instruction:{settings:!1,label:"Graphing Solution Set items involve plotting one or two lines on a graph and then selecting the correct area that represents the solution set. To create one, first configure the grid, then select if one or two lines will be offered and if the lines should be solid or dashed. After defining the line(s), define the correct answer by clicking the area that represents the solution set."},settingsPanelDisabled:!1,spellCheck:{label:"Spellcheck",settings:!1,enabled:!0},coordinatesOnHover:{settings:!0,label:"Coordinates on Hover"},maxImageWidth:{teacherInstructions:300,prompt:300,rationale:300},maxImageHeight:{teacherInstructions:300,prompt:300,rationale:300},withRubric:{settings:!1,label:"Add Rubric"},language:{settings:!1,label:"Specify Language",enabled:!1},languageChoices:{label:"Language Choices",options:[]},mathMlOptions:{mmlOutput:!1,mmlEditing:!1}};const $f=r,If=a,{renderMath:Ff}=u;function Vf(e){let t,n=e[0],r=1;for(;r<e.length;){const o=e[r],i=e[r+1];if(r+=2,("optionalAccess"===o||"optionalCall"===o)&&null==n)return;"access"===o||"optionalAccess"===o?(t=n,n=i(n)):"call"!==o&&"optionalCall"!==o||(n=i((...e)=>n.call(t,...e)),t=void 0)}return n}const Bf=If("pie-elements:graphing-solution-set:configure"),zf=e=>Object.keys(e||{}).sort().reduce((t,n)=>("correctAnswer"!==n&&(t[n]=e[n]),t),{});class Hf extends HTMLElement{static __initStatic(){this.createDefaultModel=(e={})=>{const t={...Df,...e},{answers:n={},domain:r={},graph:o={},range:i={},standardGrid:a}=t;return{...t,answers:n&&n.correctAnswer&&{correctAnswer:n.correctAnswer,...zf(n)}||n,range:a&&{...i,min:r.min,max:r.max,step:r.step,labelStep:r.labelStep}||i,graph:a&&{...o,height:o.width}||o}}}constructor(){super(),Hf.prototype.__init.call(this),Hf.prototype.__init2.call(this),Hf.prototype.__init3.call(this),Hf.prototype.__init4.call(this),this._root=null,this._model=Hf.createDefaultModel(),this._configuration=jf}set model(e){this._model=Hf.createDefaultModel(e),this._render()}set configuration(e){this._configuration=e,Vf([e,"access",e=>e.language,"optionalAccess",e=>e.enabled])?Vf([e,"access",e=>e.languageChoices,"optionalAccess",e=>e.options,"optionalAccess",e=>e.length])&&(this._model.language=e.languageChoices.options[0].value):e.language.settings?this._model.language&&(this._configuration.language.enabled=!0):delete this._model.language,this._render()}__init(){this.onModelChanged=e=>{this._model=e,this._render(),Bf("[onModelChanged]: ",this._model),this.dispatchEvent(new Ef(this._model))}}__init2(){this.onConfigurationChanged=e=>{this._configuration=e,this._render()}}__init3(){this.insertImage=e=>{this.dispatchEvent(new Af(e))}}__init4(){this.onDeleteImage=(e,t)=>{this.dispatchEvent(new Pf(e,t))}}insertSound(e){this.dispatchEvent(new Rf(e))}onDeleteSound(e,t){this.dispatchEvent(new Nf(e,t))}_render(){if(this._model){const e=$f.createElement(_f,{onModelChanged:this.onModelChanged,onConfigurationChanged:this.onConfigurationChanged,model:this._model,configuration:this._configuration,imageSupport:{add:this.insertImage,delete:this.onDeleteImage},uploadSoundSupport:{add:this.insertSound.bind(this),delete:this.onDeleteSound.bind(this)}});this._root||(this._root=d(this)),this._root.render(e),queueMicrotask(()=>{Ff(this)})}}disconnectedCallback(){this._root&&this._root.unmount()}}Hf.__initStatic();export{Hf as default};
|