UNPKG

highcharts

Version:
12 lines 45.9 kB
!/** * Highcharts JS v12.6.0 (2026-04-13) * @module highcharts/highcharts-3d * @requires highcharts * * 3D features for Highcharts JS * * (c) 2009-2026 Highsoft AS * * A commercial license may be required depending on use. * See www.highcharts.com/license */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(t._Highcharts,t._Highcharts.Color,t._Highcharts.SeriesRegistry,t._Highcharts.RendererRegistry,t._Highcharts.Series,t._Highcharts.StackItem,t._Highcharts.Axis,t._Highcharts.Series.types.scatter):"function"==typeof define&&define.amd?define("highcharts/highcharts-3d",["highcharts/highcharts"],function(t){return e(t,t.Color,t.SeriesRegistry,t.RendererRegistry,t.Series,t.StackItem,t.Axis,t.Series,["types"],["scatter"])}):"object"==typeof exports?exports["highcharts/highcharts-3d"]=e(t._Highcharts,t._Highcharts.Color,t._Highcharts.SeriesRegistry,t._Highcharts.RendererRegistry,t._Highcharts.Series,t._Highcharts.StackItem,t._Highcharts.Axis,t._Highcharts.Series.types.scatter):t.Highcharts=e(t.Highcharts,t.Highcharts.Color,t.Highcharts.SeriesRegistry,t.Highcharts.RendererRegistry,t.Highcharts.Series,t.Highcharts.StackItem,t.Highcharts.Axis,t.Highcharts.Series.types.scatter)}("u"<typeof window?this:window,(t,e,i,s,o,r,a,n)=>(()=>{"use strict";var h,l,p={184:t=>{t.exports=r},512:t=>{t.exports=i},532:t=>{t.exports=a},608:t=>{t.exports=s},620:t=>{t.exports=e},632:t=>{t.exports=n},820:t=>{t.exports=o},944:e=>{e.exports=t}},c={};function d(t){var e=c[t];if(void 0!==e)return e.exports;var i=c[t]={exports:{}};return p[t](i,i.exports,d),i.exports}d.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return d.d(e,{a:e}),e},d.d=(t,e)=>{for(var i in e)d.o(e,i)&&!d.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},d.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var x={};d.d(x,{default:()=>er});var y=d(944),f=d.n(y),u=d(620),z=d.n(u);let{doc:b,win:g}=f();function m(t,e,i,s={}){let o="function"==typeof t&&t.prototype||t;Object.hasOwnProperty.call(o,"hcEvents")||(o.hcEvents={});let r=o.hcEvents;f().Point&&t instanceof f().Point&&t.series&&t.series.chart&&(t.series.chart.runTrackerClick=!0);let a=t.addEventListener;a&&a.call(t,e,i,!!f().supportsPassiveEvents&&{passive:void 0===s.passive?-1!==e.indexOf("touch"):s.passive,capture:!1}),r[e]||(r[e]=[]);let n={fn:i,order:"number"==typeof s.order?s.order:1/0};return r[e].push(n),r[e].sort((t,e)=>t.order-e.order),function(){!function(t,e,i){function s(e,i){let s=t.removeEventListener;s&&s.call(t,e,i,!1)}function o(i){let o,r;t.nodeName&&(e?(o={})[e]=!0:o=i,w(o,function(t,e){if(i[e])for(r=i[e].length;r--;)s(e,i[e][r].fn)}))}let r="function"==typeof t&&t.prototype||t;if(Object.hasOwnProperty.call(r,"hcEvents")){let t=r.hcEvents;if(e){let r=t[e]||[];i?(t[e]=r.filter(function(t){return i!==t.fn}),s(e,i)):(o(t),t[e]=[])}else o(t),delete r.hcEvents}}(t,e,i)}}function v(t){return null!=t}function M(t,e){let i;for(i in t||(t={}),e)t[i]=e[i];return t}function P(t){return S(t)&&"number"==typeof t.nodeType}function A(t){let e=Object.prototype.toString.call(t);return"[object Array]"===e||"[object Array Iterator]"===e}function S(t,e){return!!t&&"object"==typeof t&&(!e||!A(t))}function k(t,...e){let i,s=[t,...e],o={},r=function(t,e){return"object"!=typeof t&&(t={}),w(e,function(i,s){if("__proto__"!==s&&"constructor"!==s){let o;!S(i,!0)||(o=i?.constructor,S(i,!0)&&!P(i)&&o?.name&&"Object"!==o.name)||P(i)?t[s]=e[s]:t[s]=r(t[s]||{},i)}}),t};!0===t&&(o=s[1],s=Array.prototype.slice.call(s,2));let a=s.length;for(i=0;i<a;i++)o=r(o,s[i]);return o}function w(t,e,i){for(let s in t)Object.hasOwnProperty.call(t,s)&&e.call(i||t[s],t[s],s,t)}function L(){let t=arguments,e=t.length;for(let i=0;i<e;i++){let e=t[i];if(null!=e)return e}}function D(t,e){return 0>t.indexOf(e)&&!!t.push(e)}function I(t,e,i){let s=t[e];t[e]=function(){let t=arguments,e=this;return i.apply(this,[function(){return s.apply(e,arguments.length?arguments:t)}].concat([].slice.call(arguments)))}}Array.prototype.find;let{deg2rad:T}=f();function O(t,e,i,s){let o=e.options.chart.options3d,r=L(s,!!i&&e.inverted),a={x:e.plotWidth/2,y:e.plotHeight/2,z:o.depth/2,vd:L(o.depth,1)*L(o.viewDistance,0)},n=e.scale3d||1,h=T*o.beta*(r?-1:1),l=T*o.alpha*(r?-1:1),p={cosA:Math.cos(l),cosB:Math.cos(-h),sinA:Math.sin(l),sinB:Math.sin(-h)};return i||(a.x+=e.plotLeft,a.y+=e.plotTop),t.map(function(t){var e,i,s;let o=(e=(r?t.y:t.x)-a.x,i=(r?t.x:t.y)-a.y,s=(t.z||0)-a.z,{x:p.cosB*e-p.sinB*s,y:-p.sinA*p.sinB*e+p.cosA*i-p.cosB*p.sinA*s,z:p.cosA*p.sinB*e+p.sinA*i+p.cosA*p.cosB*s}),h=X(o,a,a.vd);return h.x=h.x*n+a.x,h.y=h.y*n+a.y,h.z=o.z*n+a.z,{x:r?h.y:h.x,y:r?h.x:h.y,z:h.z}})}function X(t,e,i){let s=i>0&&i<1/0?i/(t.z+e.z+i):1;return{x:t.x*s,y:t.y*s}}function H(t){let e=0,i,s;for(i=0;i<t.length;i++)s=(i+1)%t.length,e+=t[i].x*t[s].y-t[s].x*t[i].y;return e/2}let Y={perspective:O,perspective3D:X,pointCameraDistance:function(t,e){let i=e.options.chart.options3d,s={x:e.plotWidth/2,y:e.plotHeight/2,z:L(i.depth,1)*L(i.viewDistance,0)+i.depth};return Math.sqrt(Math.pow(s.x-L(t.plotX,t.x),2)+Math.pow(s.y-L(t.plotY,t.y),2)+Math.pow(s.z-L(t.plotZ,t.z),2))},shapeArea:H,shapeArea3D:function(t,e,i){return H(O(t,e,i))}},{parse:Z}=z(),{defaultOptions:E}=f(),{perspective:C,shapeArea3D:R}=Y;!function(t){function e(t){this.is3d()&&"scatter"===t.options.type&&(t.options.type="scatter3d")}function i(){if(this.chart3d&&this.is3d()){let t=this.renderer,e=this.options.chart.options3d,i=this.chart3d.get3dFrame(),s=this.plotLeft,o=this.plotLeft+this.plotWidth,r=this.plotTop,a=this.plotTop+this.plotHeight,n=e.depth,h=s-(i.left.visible?i.left.size:0),l=o+(i.right.visible?i.right.size:0),p=r-(i.top.visible?i.top.size:0),c=a+(i.bottom.visible?i.bottom.size:0),d=0-(i.front.visible?i.front.size:0),x=n+(i.back.visible?i.back.size:0),y=this.hasRendered?"animate":"attr";this.chart3d.frame3d=i,this.frameShapes||(this.frameShapes={bottom:t.polyhedron().add(),top:t.polyhedron().add(),left:t.polyhedron().add(),right:t.polyhedron().add(),back:t.polyhedron().add(),front:t.polyhedron().add()}),this.frameShapes.bottom[y]({class:"highcharts-3d-frame highcharts-3d-frame-bottom",zIndex:i.bottom.frontFacing?-1e3:1e3,faces:[{fill:Z(i.bottom.color).brighten(.1).get(),vertexes:[{x:h,y:c,z:d},{x:l,y:c,z:d},{x:l,y:c,z:x},{x:h,y:c,z:x}],enabled:i.bottom.visible},{fill:Z(i.bottom.color).brighten(.1).get(),vertexes:[{x:s,y:a,z:n},{x:o,y:a,z:n},{x:o,y:a,z:0},{x:s,y:a,z:0}],enabled:i.bottom.visible},{fill:Z(i.bottom.color).brighten(-.1).get(),vertexes:[{x:h,y:c,z:d},{x:h,y:c,z:x},{x:s,y:a,z:n},{x:s,y:a,z:0}],enabled:i.bottom.visible&&!i.left.visible},{fill:Z(i.bottom.color).brighten(-.1).get(),vertexes:[{x:l,y:c,z:x},{x:l,y:c,z:d},{x:o,y:a,z:0},{x:o,y:a,z:n}],enabled:i.bottom.visible&&!i.right.visible},{fill:Z(i.bottom.color).get(),vertexes:[{x:l,y:c,z:d},{x:h,y:c,z:d},{x:s,y:a,z:0},{x:o,y:a,z:0}],enabled:i.bottom.visible&&!i.front.visible},{fill:Z(i.bottom.color).get(),vertexes:[{x:h,y:c,z:x},{x:l,y:c,z:x},{x:o,y:a,z:n},{x:s,y:a,z:n}],enabled:i.bottom.visible&&!i.back.visible}]}),this.frameShapes.top[y]({class:"highcharts-3d-frame highcharts-3d-frame-top",zIndex:i.top.frontFacing?-1e3:1e3,faces:[{fill:Z(i.top.color).brighten(.1).get(),vertexes:[{x:h,y:p,z:x},{x:l,y:p,z:x},{x:l,y:p,z:d},{x:h,y:p,z:d}],enabled:i.top.visible},{fill:Z(i.top.color).brighten(.1).get(),vertexes:[{x:s,y:r,z:0},{x:o,y:r,z:0},{x:o,y:r,z:n},{x:s,y:r,z:n}],enabled:i.top.visible},{fill:Z(i.top.color).brighten(-.1).get(),vertexes:[{x:h,y:p,z:x},{x:h,y:p,z:d},{x:s,y:r,z:0},{x:s,y:r,z:n}],enabled:i.top.visible&&!i.left.visible},{fill:Z(i.top.color).brighten(-.1).get(),vertexes:[{x:l,y:p,z:d},{x:l,y:p,z:x},{x:o,y:r,z:n},{x:o,y:r,z:0}],enabled:i.top.visible&&!i.right.visible},{fill:Z(i.top.color).get(),vertexes:[{x:h,y:p,z:d},{x:l,y:p,z:d},{x:o,y:r,z:0},{x:s,y:r,z:0}],enabled:i.top.visible&&!i.front.visible},{fill:Z(i.top.color).get(),vertexes:[{x:l,y:p,z:x},{x:h,y:p,z:x},{x:s,y:r,z:n},{x:o,y:r,z:n}],enabled:i.top.visible&&!i.back.visible}]}),this.frameShapes.left[y]({class:"highcharts-3d-frame highcharts-3d-frame-left",zIndex:i.left.frontFacing?-1e3:1e3,faces:[{fill:Z(i.left.color).brighten(.1).get(),vertexes:[{x:h,y:c,z:d},{x:s,y:a,z:0},{x:s,y:a,z:n},{x:h,y:c,z:x}],enabled:i.left.visible&&!i.bottom.visible},{fill:Z(i.left.color).brighten(.1).get(),vertexes:[{x:h,y:p,z:x},{x:s,y:r,z:n},{x:s,y:r,z:0},{x:h,y:p,z:d}],enabled:i.left.visible&&!i.top.visible},{fill:Z(i.left.color).brighten(-.1).get(),vertexes:[{x:h,y:c,z:x},{x:h,y:p,z:x},{x:h,y:p,z:d},{x:h,y:c,z:d}],enabled:i.left.visible},{fill:Z(i.left.color).brighten(-.1).get(),vertexes:[{x:s,y:r,z:n},{x:s,y:a,z:n},{x:s,y:a,z:0},{x:s,y:r,z:0}],enabled:i.left.visible},{fill:Z(i.left.color).get(),vertexes:[{x:h,y:c,z:d},{x:h,y:p,z:d},{x:s,y:r,z:0},{x:s,y:a,z:0}],enabled:i.left.visible&&!i.front.visible},{fill:Z(i.left.color).get(),vertexes:[{x:h,y:p,z:x},{x:h,y:c,z:x},{x:s,y:a,z:n},{x:s,y:r,z:n}],enabled:i.left.visible&&!i.back.visible}]}),this.frameShapes.right[y]({class:"highcharts-3d-frame highcharts-3d-frame-right",zIndex:i.right.frontFacing?-1e3:1e3,faces:[{fill:Z(i.right.color).brighten(.1).get(),vertexes:[{x:l,y:c,z:x},{x:o,y:a,z:n},{x:o,y:a,z:0},{x:l,y:c,z:d}],enabled:i.right.visible&&!i.bottom.visible},{fill:Z(i.right.color).brighten(.1).get(),vertexes:[{x:l,y:p,z:d},{x:o,y:r,z:0},{x:o,y:r,z:n},{x:l,y:p,z:x}],enabled:i.right.visible&&!i.top.visible},{fill:Z(i.right.color).brighten(-.1).get(),vertexes:[{x:o,y:r,z:0},{x:o,y:a,z:0},{x:o,y:a,z:n},{x:o,y:r,z:n}],enabled:i.right.visible},{fill:Z(i.right.color).brighten(-.1).get(),vertexes:[{x:l,y:c,z:d},{x:l,y:p,z:d},{x:l,y:p,z:x},{x:l,y:c,z:x}],enabled:i.right.visible},{fill:Z(i.right.color).get(),vertexes:[{x:l,y:p,z:d},{x:l,y:c,z:d},{x:o,y:a,z:0},{x:o,y:r,z:0}],enabled:i.right.visible&&!i.front.visible},{fill:Z(i.right.color).get(),vertexes:[{x:l,y:c,z:x},{x:l,y:p,z:x},{x:o,y:r,z:n},{x:o,y:a,z:n}],enabled:i.right.visible&&!i.back.visible}]}),this.frameShapes.back[y]({class:"highcharts-3d-frame highcharts-3d-frame-back",zIndex:i.back.frontFacing?-1e3:1e3,faces:[{fill:Z(i.back.color).brighten(.1).get(),vertexes:[{x:l,y:c,z:x},{x:h,y:c,z:x},{x:s,y:a,z:n},{x:o,y:a,z:n}],enabled:i.back.visible&&!i.bottom.visible},{fill:Z(i.back.color).brighten(.1).get(),vertexes:[{x:h,y:p,z:x},{x:l,y:p,z:x},{x:o,y:r,z:n},{x:s,y:r,z:n}],enabled:i.back.visible&&!i.top.visible},{fill:Z(i.back.color).brighten(-.1).get(),vertexes:[{x:h,y:c,z:x},{x:h,y:p,z:x},{x:s,y:r,z:n},{x:s,y:a,z:n}],enabled:i.back.visible&&!i.left.visible},{fill:Z(i.back.color).brighten(-.1).get(),vertexes:[{x:l,y:p,z:x},{x:l,y:c,z:x},{x:o,y:a,z:n},{x:o,y:r,z:n}],enabled:i.back.visible&&!i.right.visible},{fill:Z(i.back.color).get(),vertexes:[{x:s,y:r,z:n},{x:o,y:r,z:n},{x:o,y:a,z:n},{x:s,y:a,z:n}],enabled:i.back.visible},{fill:Z(i.back.color).get(),vertexes:[{x:h,y:c,z:x},{x:l,y:c,z:x},{x:l,y:p,z:x},{x:h,y:p,z:x}],enabled:i.back.visible}]}),this.frameShapes.front[y]({class:"highcharts-3d-frame highcharts-3d-frame-front",zIndex:i.front.frontFacing?-1e3:1e3,faces:[{fill:Z(i.front.color).brighten(.1).get(),vertexes:[{x:h,y:c,z:d},{x:l,y:c,z:d},{x:o,y:a,z:0},{x:s,y:a,z:0}],enabled:i.front.visible&&!i.bottom.visible},{fill:Z(i.front.color).brighten(.1).get(),vertexes:[{x:l,y:p,z:d},{x:h,y:p,z:d},{x:s,y:r,z:0},{x:o,y:r,z:0}],enabled:i.front.visible&&!i.top.visible},{fill:Z(i.front.color).brighten(-.1).get(),vertexes:[{x:h,y:p,z:d},{x:h,y:c,z:d},{x:s,y:a,z:0},{x:s,y:r,z:0}],enabled:i.front.visible&&!i.left.visible},{fill:Z(i.front.color).brighten(-.1).get(),vertexes:[{x:l,y:c,z:d},{x:l,y:p,z:d},{x:o,y:r,z:0},{x:o,y:a,z:0}],enabled:i.front.visible&&!i.right.visible},{fill:Z(i.front.color).get(),vertexes:[{x:o,y:r,z:0},{x:s,y:r,z:0},{x:s,y:a,z:0},{x:o,y:a,z:0}],enabled:i.front.visible},{fill:Z(i.front.color).get(),vertexes:[{x:l,y:c,z:d},{x:h,y:c,z:d},{x:h,y:p,z:d},{x:l,y:p,z:d}],enabled:i.front.visible}]})}}function s(){this.styledMode&&[{name:"darker",slope:.6},{name:"brighter",slope:1.4}].forEach(function(t){this.renderer.definition({tagName:"filter",attributes:{id:"highcharts-"+t.name},children:[{tagName:"feComponentTransfer",children:[{tagName:"feFuncR",attributes:{type:"linear",slope:t.slope}},{tagName:"feFuncG",attributes:{type:"linear",slope:t.slope}},{tagName:"feFuncB",attributes:{type:"linear",slope:t.slope}}]}]})},this)}function o(){let t=this.options;this.is3d()&&(t.series||[]).forEach(function(e){"scatter"===(e.type||t.chart.type||t.chart.defaultSeriesType)&&(e.type="scatter3d")})}function r(){let t=this.options.chart.options3d;if(this.chart3d&&this.is3d()){t&&(t.alpha=t.alpha%360+(t.alpha>=0?0:360),t.beta=t.beta%360+(t.beta>=0?0:360));let e=this.inverted,i=this.clipBox,s=this.margin;i[e?"y":"x"]=-(s[3]||0),i[e?"x":"y"]=-(s[0]||0),i[e?"height":"width"]=this.chartWidth+(s[3]||0)+(s[1]||0),i[e?"width":"height"]=this.chartHeight+(s[0]||0)+(s[2]||0),this.scale3d=1,!0===t.fitToPlot&&(this.scale3d=this.chart3d.getScale(t.depth)),this.chart3d.frame3d=this.chart3d.get3dFrame()}}function a(){this.is3d()&&(this.isDirtyBox=!0)}function n(){this.chart3d&&this.is3d()&&(this.chart3d.frame3d=this.chart3d.get3dFrame())}function h(){this.chart3d||(this.chart3d=new d(this))}function l(t){return this.is3d()||t.apply(this,[].slice.call(arguments,1))}function p(t){let e,i=this.series.length;if(this.is3d())for(;i--;)(e=this.series[i]).translate(),e.render();else t.call(this)}function c(t){t.apply(this,[].slice.call(arguments,1)),this.is3d()&&(this.container.className+=" highcharts-3d-chart")}t.defaultOptions={chart:{options3d:{enabled:!1,alpha:0,beta:0,depth:100,fitToPlot:!0,viewDistance:25,axisLabelPosition:null,frame:{visible:"default",size:1,bottom:{},top:{},left:{},right:{},back:{},front:{}}}}},t.compose=function(d,x){let y=d.prototype,f=x.prototype;y.is3d=function(){return!!this.options.chart.options3d?.enabled},y.propsRequireDirtyBox.push("chart.options3d"),y.propsRequireUpdateSeries.push("chart.options3d"),f.matrixSetter=function(){let t;if(this.pos<1&&(A(this.start)||A(this.end))){let e=this.start||[1,0,0,1,0,0],i=this.end||[1,0,0,1,0,0];t=[];for(let s=0;s<6;s++)t.push(this.pos*i[s]+(1-this.pos)*e[s])}else t=this.end;this.elem.attr(this.prop,t,null,!0)},k(!0,E,t.defaultOptions),m(d,"init",h),m(d,"addSeries",e),m(d,"afterDrawChartBox",i),m(d,"afterGetContainer",s),m(d,"afterInit",o),m(d,"afterSetChartSize",r),m(d,"beforeRedraw",a),m(d,"beforeRender",n),I(y,"isInsidePlot",l),I(y,"renderSeries",p),I(y,"setClassName",c)};class d{constructor(t){this.chart=t}get3dFrame(){let t=this.chart,e=t.options.chart.options3d,i=e.frame,s=t.plotLeft,o=t.plotLeft+t.plotWidth,r=t.plotTop,a=t.plotTop+t.plotHeight,n=e.depth,h=function(e){let i=R(e,t);return i>.5?1:i<-.5?-1:0},l=h([{x:s,y:a,z:n},{x:o,y:a,z:n},{x:o,y:a,z:0},{x:s,y:a,z:0}]),p=h([{x:s,y:r,z:0},{x:o,y:r,z:0},{x:o,y:r,z:n},{x:s,y:r,z:n}]),c=h([{x:s,y:r,z:0},{x:s,y:r,z:n},{x:s,y:a,z:n},{x:s,y:a,z:0}]),d=h([{x:o,y:r,z:n},{x:o,y:r,z:0},{x:o,y:a,z:0},{x:o,y:a,z:n}]),x=h([{x:s,y:a,z:0},{x:o,y:a,z:0},{x:o,y:r,z:0},{x:s,y:r,z:0}]),y=h([{x:s,y:r,z:n},{x:o,y:r,z:n},{x:o,y:a,z:n},{x:s,y:a,z:n}]),f=!1,u=!1,z=!1,b=!1;[].concat(t.xAxis,t.yAxis,t.zAxis).forEach(function(t){t&&(t.horiz?t.opposite?u=!0:f=!0:t.opposite?b=!0:z=!0)});let g=function(t,e,i){let s=["size","color","visible"],o={};for(let e=0;e<s.length;e++){let i=s[e];for(let e=0;e<t.length;e++)if("object"==typeof t[e]){let s=t[e][i];if(null!=s){o[i]=s;break}}}let r=i;return!0===o.visible||!1===o.visible?r=o.visible:"auto"===o.visible&&(r=e>0),{size:L(o.size,1),color:L(o.color,"none"),frontFacing:e>0,visible:r}},m={axes:{},bottom:g([i.bottom,i.top,i],l,f),top:g([i.top,i.bottom,i],p,u),left:g([i.left,i.right,i.side,i],c,z),right:g([i.right,i.left,i.side,i],d,b),back:g([i.back,i.front,i],y,!0),front:g([i.front,i.back,i],x,!1)};if("auto"===e.axisLabelPosition){let e=function(t,e){return t.visible!==e.visible||t.visible&&e.visible&&t.frontFacing!==e.frontFacing},i=[];e(m.left,m.front)&&i.push({y:(r+a)/2,x:s,z:0,xDir:{x:1,y:0,z:0}}),e(m.left,m.back)&&i.push({y:(r+a)/2,x:s,z:n,xDir:{x:0,y:0,z:-1}}),e(m.right,m.front)&&i.push({y:(r+a)/2,x:o,z:0,xDir:{x:0,y:0,z:1}}),e(m.right,m.back)&&i.push({y:(r+a)/2,x:o,z:n,xDir:{x:-1,y:0,z:0}});let h=[];e(m.bottom,m.front)&&h.push({x:(s+o)/2,y:a,z:0,xDir:{x:1,y:0,z:0}}),e(m.bottom,m.back)&&h.push({x:(s+o)/2,y:a,z:n,xDir:{x:-1,y:0,z:0}});let l=[];e(m.top,m.front)&&l.push({x:(s+o)/2,y:r,z:0,xDir:{x:1,y:0,z:0}}),e(m.top,m.back)&&l.push({x:(s+o)/2,y:r,z:n,xDir:{x:-1,y:0,z:0}});let p=[];e(m.bottom,m.left)&&p.push({z:(0+n)/2,y:a,x:s,xDir:{x:0,y:0,z:-1}}),e(m.bottom,m.right)&&p.push({z:(0+n)/2,y:a,x:o,xDir:{x:0,y:0,z:1}});let c=[];e(m.top,m.left)&&c.push({z:(0+n)/2,y:r,x:s,xDir:{x:0,y:0,z:-1}}),e(m.top,m.right)&&c.push({z:(0+n)/2,y:r,x:o,xDir:{x:0,y:0,z:1}});let d=function(e,i,s){if(0===e.length)return null;if(1===e.length)return e[0];let o=C(e,t,!1),r=0;for(let t=1;t<o.length;t++)s*o[t][i]>s*o[r][i]?r=t:s*o[t][i]==s*o[r][i]&&o[t].z<o[r].z&&(r=t);return e[r]};m.axes={y:{left:d(i,"x",-1),right:d(i,"x",1)},x:{top:d(l,"y",-1),bottom:d(h,"y",1)},z:{top:d(c,"y",-1),bottom:d(p,"y",1)}}}else m.axes={y:{left:{x:s,z:0,xDir:{x:1,y:0,z:0}},right:{x:o,z:0,xDir:{x:0,y:0,z:1}}},x:{top:{y:r,z:0,xDir:{x:1,y:0,z:0}},bottom:{y:a,z:0,xDir:{x:1,y:0,z:0}}},z:{top:{x:z?o:s,y:r,xDir:z?{x:0,y:0,z:1}:{x:0,y:0,z:-1}},bottom:{x:z?o:s,y:a,xDir:z?{x:0,y:0,z:1}:{x:0,y:0,z:-1}}}};return m}getScale(t){let e=this.chart,i=e.plotLeft,s=e.plotWidth+i,o=e.plotTop,r=e.plotHeight+o,a=i+e.plotWidth/2,n=o+e.plotHeight/2,h={minX:Number.MAX_VALUE,maxX:-Number.MAX_VALUE,minY:Number.MAX_VALUE,maxY:-Number.MAX_VALUE},l,p=1;return l=[{x:i,y:o,z:0},{x:i,y:o,z:t}],[0,1].forEach(function(t){l.push({x:s,y:l[t].y,z:l[t].z})}),[0,1,2,3].forEach(function(t){l.push({x:l[t].x,y:r,z:l[t].z})}),(l=C(l,e,!1)).forEach(function(t){h.minX=Math.min(h.minX,t.x),h.maxX=Math.max(h.maxX,t.x),h.minY=Math.min(h.minY,t.y),h.maxY=Math.max(h.maxY,t.y)}),i>h.minX&&(p=Math.min(p,1-Math.abs((i+a)/(h.minX+a))%1)),s<h.maxX&&(p=Math.min(p,(s-a)/(h.maxX-a))),o>h.minY&&(p=h.minY<0?Math.min(p,(o+n)/(-h.minY+o+n)):Math.min(p,1-(o+n)/(h.minY+n)%1)),r<h.maxY&&(p=Math.min(p,Math.abs((r-n)/(h.maxY-n)))),p}}t.Additions=d}(h||(h={}));let F=h;var _=d(512),j=d.n(_);let{composed:W}=f(),{perspective:B}=Y,{line:{prototype:G}}=j().seriesTypes;function N(t){let e=t.apply(this,[].slice.call(arguments,1));if(!this.chart.is3d())return e;let i=G.getGraphPath,s=this.options,o=Math.round(this.yAxis.getThreshold(s.threshold)),r=[];if(this.rawPointsX)for(let t=0;t<this.points.length;t++)r.push({x:this.rawPointsX[t],y:s.stacking?this.points[t].yBottom:o,z:this.zPadding});let a=this.chart.options.chart.options3d;r=B(r,this.chart,!0).map(t=>({plotX:t.x,plotY:t.y,plotZ:t.z})),this.group&&a&&a.depth&&a.beta&&(this.markerGroup&&(this.markerGroup.add(this.group),this.markerGroup.attr({translateX:0,translateY:0})),this.group.attr({zIndex:Math.max(1,a.beta>270||a.beta<90?a.depth-Math.round(this.zPadding||0):Math.round(this.zPadding||0))})),r.reversed=!0;let n=i.call(this,r,!0,!0);if(n[0]&&"M"===n[0][0]&&(n[0]=["L",n[0][1],n[0][2]]),this.areaPath){let t=this.areaPath.splice(0,this.areaPath.length/2).concat(n);t.xMap=this.areaPath.xMap,this.areaPath=t}return this.graphPath=e,e}let V={labels:{position3d:"offset",skew3d:!1},title:{position3d:null,skew3d:null}},{composed:U}=f();function q(t){let e=this.axis.axis3D;e&&M(t.pos,e.fix3dPosition(t.pos))}function J(t){let e=this.axis.axis3D,i=t.apply(this,[].slice.call(arguments,1));if(e){let t=i[0],s=i[1];if("M"===t[0]&&"L"===s[0]){let i=[e.fix3dPosition({x:t[1],y:t[2],z:0}),e.fix3dPosition({x:s[1],y:s[2],z:0})];return this.axis.chart.renderer.toLineSegments(i)}}return i}let K=function(t){D(U,"Axis.Tick3D")&&(m(t,"afterGetLabelPosition",q),I(t.prototype,"getMarkPath",J))},{defaultOptions:Q}=f(),{deg2rad:$}=f(),{perspective:tt,perspective3D:te,shapeArea:ti}=Y;function ts(){let t=this.chart,e=this.options;t.is3d?.()&&"colorAxis"!==this.coll&&(e.tickWidth=L(e.tickWidth,0),e.gridLineWidth=L(e.gridLineWidth,1))}function to(t){this.chart.is3d()&&"colorAxis"!==this.coll&&t.point&&(t.point.crosshairPos=this.isXAxis?t.point.axisXpos:this.len-t.point.axisYpos)}function tr(){this.axis3D||(this.axis3D=new tc(this))}function ta(t){return this.chart.is3d()&&"colorAxis"!==this.coll?[]:t.apply(this,[].slice.call(arguments,1))}function tn(t){if(!this.chart.is3d()||"colorAxis"===this.coll)return t.apply(this,[].slice.call(arguments,1));let e=arguments,i=e[1],s=e[2],o=[],r=this.getPlotLinePath({value:i}),a=this.getPlotLinePath({value:s});if(r&&a)for(let t=0;t<r.length;t+=2){let e=r[t],i=r[t+1],s=a[t],n=a[t+1];"M"===e[0]&&"L"===i[0]&&"M"===s[0]&&"L"===n[0]&&o.push(e,i,n,["L",s[1],s[2]],["Z"])}return o}function th(t){let e=this.axis3D,i=this.chart,s=t.apply(this,[].slice.call(arguments,1));if("colorAxis"===this.coll||!i.chart3d||!i.is3d()||null===s)return s;let o=i.options.chart.options3d,r=this.isZAxis?i.plotWidth:o.depth,a=i.chart3d.frame3d,n=s[0],h=s[1],l,p=[];return"M"===n[0]&&"L"===h[0]&&(l=[e.swapZ({x:n[1],y:n[2],z:0}),e.swapZ({x:n[1],y:n[2],z:r}),e.swapZ({x:h[1],y:h[2],z:0}),e.swapZ({x:h[1],y:h[2],z:r})],this.horiz?(this.isZAxis?(a.left.visible&&p.push(l[0],l[2]),a.right.visible&&p.push(l[1],l[3])):(a.front.visible&&p.push(l[0],l[2]),a.back.visible&&p.push(l[1],l[3])),a.top.visible&&p.push(l[0],l[1]),a.bottom.visible&&p.push(l[2],l[3])):(a.front.visible&&p.push(l[0],l[2]),a.back.visible&&p.push(l[1],l[3]),a.left.visible&&p.push(l[0],l[1]),a.right.visible&&p.push(l[2],l[3])),p=tt(p,this.chart,!1)),i.renderer.toLineSegments(p)}function tl(t,e){let{chart:i,gridGroup:s,tickPositions:o,ticks:r}=this;if(this.categories&&i.frameShapes&&i.is3d()&&s&&e&&e.label){let t,a,n,h=s.element.childNodes[0].getBBox(),l=i.frameShapes.left.getBBox(),p=i.options.chart.options3d,c={x:i.plotWidth/2,y:i.plotHeight/2,z:p.depth/2,vd:L(p.depth,1)*L(p.viewDistance,0)},d=o.indexOf(e.pos),x=r[o[d-1]],y=r[o[d+1]];return x?.label?.xy&&(a=te({x:x.label.xy.x,y:x.label.xy.y,z:null},c,c.vd)),y?.label?.xy&&(n=te({x:y.label.xy.x,y:y.label.xy.y,z:null},c,c.vd)),t=te(t={x:e.label.xy.x,y:e.label.xy.y,z:null},c,c.vd),Math.abs(a?t.x-a.x:n?n.x-t.x:h.x-l.x)}return t.apply(this,[].slice.call(arguments,1))}function tp(t){let e=t.apply(this,[].slice.call(arguments,1));return this.axis3D?this.axis3D.fix3dPosition(e,!0):e}class tc{static compose(t,e){if(K(e),!t.keepProps.includes("axis3D")){k(!0,Q.xAxis,V),t.keepProps.push("axis3D"),m(t,"init",tr),m(t,"afterSetOptions",ts),m(t,"drawCrosshair",to);let e=t.prototype;I(e,"getLinePath",ta),I(e,"getPlotBandPath",tn),I(e,"getPlotLinePath",th),I(e,"getSlotWidth",tl),I(e,"getTitlePosition",tp)}}constructor(t){this.axis=t}fix3dPosition(t,e){let i=this.axis,s=i.chart;if("colorAxis"===i.coll||!s.chart3d||!s.is3d())return t;let o=$*s.options.chart.options3d.alpha,r=$*s.options.chart.options3d.beta,a=L(e&&i.options.title.position3d,i.options.labels.position3d),n=L(e&&i.options.title.skew3d,i.options.labels.skew3d),h=s.chart3d.frame3d,l=s.plotLeft,p=s.plotWidth+l,c=s.plotTop,d=s.plotHeight+c,x=0,y=0,f,u={x:0,y:1,z:0},z=!1;if(t=i.axis3D.swapZ({x:t.x,y:t.y,z:0}),i.isZAxis)if(i.opposite){if(null===h.axes.z.top)return{};y=t.y-c,t.x=h.axes.z.top.x,t.y=h.axes.z.top.y,f=h.axes.z.top.xDir,z=!h.top.frontFacing}else{if(null===h.axes.z.bottom)return{};y=t.y-d,t.x=h.axes.z.bottom.x,t.y=h.axes.z.bottom.y,f=h.axes.z.bottom.xDir,z=!h.bottom.frontFacing}else if(i.horiz)if(i.opposite){if(null===h.axes.x.top)return{};y=t.y-c,t.y=h.axes.x.top.y,t.z=h.axes.x.top.z,f=h.axes.x.top.xDir,z=!h.top.frontFacing}else{if(null===h.axes.x.bottom)return{};y=t.y-d,t.y=h.axes.x.bottom.y,t.z=h.axes.x.bottom.z,f=h.axes.x.bottom.xDir,z=!h.bottom.frontFacing}else if(i.opposite){if(null===h.axes.y.right)return{};x=t.x-p,t.x=h.axes.y.right.x,t.z=h.axes.y.right.z,f={x:(f=h.axes.y.right.xDir).z,y:f.y,z:-f.x}}else{if(null===h.axes.y.left)return{};x=t.x-l,t.x=h.axes.y.left.x,t.z=h.axes.y.left.z,f=h.axes.y.left.xDir}if("chart"===a);else if("flap"===a)if(i.horiz){let t=Math.sin(o),e=Math.cos(o);z&&(t=-t),u={x:f.z*t,y:e,z:-f.x*t}}else f={x:Math.cos(r),y:0,z:Math.sin(r)};else if("ortho"===a)if(i.horiz){let t=Math.sin(o),e=Math.cos(o),i={x:Math.sin(r)*e,y:-t,z:-e*Math.cos(r)},s=1/Math.sqrt((u={x:f.y*i.z-f.z*i.y,y:f.z*i.x-f.x*i.z,z:f.x*i.y-f.y*i.x}).x*u.x+u.y*u.y+u.z*u.z);z&&(s=-s),u={x:s*u.x,y:s*u.y,z:s*u.z}}else f={x:Math.cos(r),y:0,z:Math.sin(r)};else i.horiz?u={x:Math.sin(r)*Math.sin(o),y:Math.cos(o),z:-Math.cos(r)*Math.sin(o)}:f={x:Math.cos(r),y:0,z:Math.sin(r)};t.x+=x*f.x+y*u.x,t.y+=x*f.y+y*u.y,t.z+=x*f.z+y*u.z;let b=tt([t],i.chart)[0];if(n){0>ti(tt([t,{x:t.x+f.x,y:t.y+f.y,z:t.z+f.z},{x:t.x+u.x,y:t.y+u.y,z:t.z+u.z}],i.chart))&&(f={x:-f.x,y:-f.y,z:-f.z});let e=tt([{x:t.x,y:t.y,z:t.z},{x:t.x+f.x,y:t.y+f.y,z:t.z+f.z},{x:t.x+u.x,y:t.y+u.y,z:t.z+u.z}],i.chart);b.matrix=[e[1].x-e[0].x,e[1].y-e[0].y,e[2].x-e[0].x,e[2].y-e[0].y,b.x,b.y],b.matrix[4]-=b.x*b.matrix[0]+b.y*b.matrix[2],b.matrix[5]-=b.x*b.matrix[1]+b.y*b.matrix[3]}return b}swapZ(t,e){let i=this.axis;if(i.isZAxis){let s=e?0:i.chart.plotLeft;return{x:s+t.z,y:t.y,z:t.x-s}}return t}}var td=d(608),tx=d.n(td),ty=d(820),tf=d.n(ty);let{composed:tu}=f(),{perspective:tz}=Y;class tb extends tf(){static compose(t){D(tu,"Core.Series3D")&&(m(t,"afterTranslate",function(){this.chart.is3d()&&this.translate3dPoints()}),M(t.prototype,{translate3dPoints:tb.prototype.translate3dPoints}))}translate3dPoints(){var t;let e,i,s=this,o=s.options,r=s.chart,a=L(s.zAxis,r.options.zAxis[0]),n=[],h=[],l=o.stacking?"number"==typeof(t=o.stack)&&!isNaN(t)&&t<1/0&&t>-1/0?o.stack:0:s.index||0;s.zPadding=l*(o.depth||0+(o.groupZPadding||1)),s.points.forEach(t=>{a?.translate?(i=a.logarithmic&&a.val2lin?a.val2lin(t.z):t.z,t.plotZ=a.translate(i),t.isInside=!!t.isInside&&i>=a.min&&i<=a.max):t.plotZ=s.zPadding,t.axisXpos=t.plotX,t.axisYpos=t.plotY,t.axisZpos=t.plotZ,n.push({x:t.plotX,y:t.plotY,z:t.plotZ}),h.push(t.plotX||0)}),s.rawPointsX=h;let p=tz(n,r,!0);s.points.forEach((t,i)=>{t.plotX=(e=p[i]).x,t.plotY=e.y,t.plotZ=e.z})}}tb.defaultOptions=k(tf().defaultOptions);var tg=d(184),tm=d.n(tg);let{parse:tv}=z(),{Element:tM}=tx().getRendererType().prototype;class tP extends tM{constructor(){super(...arguments),this.parts=["front","top","side"],this.pathType="cuboid"}initArgs(t){let e=this.renderer,i=e[this.pathType+"Path"](t),s=i.zIndexes;for(let t of this.parts){let o={class:"highcharts-3d-"+t,zIndex:s[t]||0};e.styledMode&&("top"===t?o.filter="url(#highcharts-brighter)":"side"===t&&(o.filter="url(#highcharts-darker)")),this[t]=e.path(i[t]).attr(o).add(this)}this.attr({"stroke-linejoin":"round",zIndex:s.group}),this.forcedSides=i.forcedSides}singleSetterForParts(t,e,i,s,o,r){let a={},n=[null,null,s||"attr",o,r],h=i?.zIndexes;if(i){for(let e of(h?.group&&this.attr({zIndex:h.group}),Object.keys(i)))a[e]={},a[e][t]=i[e],h&&(a[e].zIndex=i.zIndexes[e]||0);n[1]=a}else a[t]=e,n[0]=a;return this.processParts.apply(this,n)}processParts(t,e,i,s,o){for(let r of this.parts)e&&(t=L(e[r],!1)),!1!==t&&this[r][i](t,s,o);return this}destroy(){return this.processParts(null,null,"destroy"),super.destroy()}attr(t,e,i,s){if("string"==typeof t&&void 0!==e){let i=t;(t={})[i]=e}return t.shapeArgs||v(t.x)?this.singleSetterForParts("d",null,this.renderer[this.pathType+"Path"](t.shapeArgs||t)):super.attr(t,void 0,i,s)}animate(t,e,i){if(v(t.x)&&v(t.y)){let s=this.renderer[this.pathType+"Path"](t),o=s.forcedSides;this.singleSetterForParts("d",null,s,"animate",e,i),this.attr({zIndex:s.zIndexes.group}),o!==this.forcedSides&&(this.forcedSides=o,this.renderer.styledMode||this.fillSetter(this.fill))}else super.animate(t,e,i);return this}fillSetter(t){return this.forcedSides=this.forcedSides||[],this.singleSetterForParts("fill",null,{front:t,top:tv(t).brighten(this.forcedSides.indexOf("top")>=0?0:.1).get(),side:tv(t).brighten(this.forcedSides.indexOf("side")>=0?0:-.1).get()}),this.color=this.fill=t,this}}tP.types={base:tP,cuboid:tP};let{animObject:tA}=f(),{parse:tS}=z(),{charts:tk,deg2rad:tw}=f(),{perspective:tL,shapeArea:tD}=Y,tI=Math.cos,tT=Math.sin,tO=Math.PI,tX=4*(Math.sqrt(2)-1)/3/(tO/2);function tH(t,e,i,s,o,r,a,n){let h=r-o,l=[];return r>o&&r-o>Math.PI/2+1e-4?l=(l=l.concat(tH(t,e,i,s,o,o+Math.PI/2,a,n))).concat(tH(t,e,i,s,o+Math.PI/2,r,a,n)):r<o&&o-r>Math.PI/2+1e-4?l=(l=l.concat(tH(t,e,i,s,o,o-Math.PI/2,a,n))).concat(tH(t,e,i,s,o-Math.PI/2,r,a,n)):[["C",t+i*Math.cos(o)-i*tX*h*Math.sin(o)+a,e+s*Math.sin(o)+s*tX*h*Math.cos(o)+n,t+i*Math.cos(r)+i*tX*h*Math.sin(r)+a,e+s*Math.sin(r)-s*tX*h*Math.cos(r)+n,t+i*Math.cos(r)+a,e+s*Math.sin(r)+n]]}!function(t){function e(t,e){let i=[];for(let e of t)i.push(["L",e.x,e.y]);return t.length&&(i[0][0]="M",e&&i.push(["Z"])),i}function i(t){let e=[],i=!0;for(let s of t)e.push(i?["M",s.x,s.y]:["L",s.x,s.y]),i=!i;return e}function s(t){let e=this,i=e.Element.prototype,s=e.createElement("path");return s.vertexes=[],s.insidePlotArea=!1,s.enabled=!0,s.attr=function(t){if("object"==typeof t&&(v(t.enabled)||v(t.vertexes)||v(t.insidePlotArea))){this.enabled=L(t.enabled,this.enabled),this.vertexes=L(t.vertexes,this.vertexes),this.insidePlotArea=L(t.insidePlotArea,this.insidePlotArea),delete t.enabled,delete t.vertexes,delete t.insidePlotArea;let i=tk[e.chartIndex],s=tL(this.vertexes,i,this.insidePlotArea),o=e.toLinePath(s,!0),r=tD(s);t.d=o,t.visibility=this.enabled&&r>0?"inherit":"hidden"}return i.attr.apply(this,arguments)},s.animate=function(t){if("object"==typeof t&&(v(t.enabled)||v(t.vertexes)||v(t.insidePlotArea))){this.enabled=L(t.enabled,this.enabled),this.vertexes=L(t.vertexes,this.vertexes),this.insidePlotArea=L(t.insidePlotArea,this.insidePlotArea),delete t.enabled,delete t.vertexes,delete t.insidePlotArea;let i=tk[e.chartIndex],s=tL(this.vertexes,i,this.insidePlotArea),o=e.toLinePath(s,!0),r=tD(s),a=this.enabled&&r>0?"visible":"hidden";t.d=o,this.attr("visibility",a)}return i.animate.apply(this,arguments)},s.attr(t)}function o(t){let e=this,i=e.Element.prototype,s=e.g(),o=s.destroy;return this.styledMode||s.attr({"stroke-linejoin":"round"}),s.faces=[],s.destroy=function(){for(let t=0;t<s.faces.length;t++)s.faces[t].destroy();return o.call(this)},s.attr=function(t,o,r,a){if("object"==typeof t&&v(t.faces)){for(;s.faces.length>t.faces.length;)s.faces.pop().destroy();for(;s.faces.length<t.faces.length;)s.faces.push(e.face3d().add(s));for(let i=0;i<t.faces.length;i++)e.styledMode&&delete t.faces[i].fill,s.faces[i].attr(t.faces[i],null,r,a);delete t.faces}return i.attr.apply(this,arguments)},s.animate=function(t,o,r){if(t?.faces){for(;s.faces.length>t.faces.length;)s.faces.pop().destroy();for(;s.faces.length<t.faces.length;)s.faces.push(e.face3d().add(s));for(let e=0;e<t.faces.length;e++)s.faces[e].animate(t.faces[e],o,r);delete t.faces}return i.animate.apply(this,arguments)},s.attr(t)}function r(t,e){let i=new tP.types[t](this,"g");return i.initArgs(e),i}function a(t){return this.element3d("cuboid",t)}function n(t){let e=t.x||0,i=t.y||0,s=t.z||0,o=t.height||0,r=t.width||0,a=t.depth||0,n=tk[this.chartIndex],h=n.options.chart.options3d.alpha,l=[],p,c=0,d=[{x:e,y:i,z:s},{x:e+r,y:i,z:s},{x:e+r,y:i+o,z:s},{x:e,y:i+o,z:s},{x:e,y:i+o,z:s+a},{x:e+r,y:i+o,z:s+a},{x:e+r,y:i,z:s+a},{x:e,y:i,z:s+a}];d=tL(d,n,t.insidePlotArea);let x=t=>0===o&&t>1&&t<6?{x:d[t].x,y:d[t].y+10,z:d[t].z}:d[0].x===d[7].x&&t>=4?{x:d[t].x+10,y:d[t].y,z:d[t].z}:0===a&&t<2||t>5?{x:d[t].x,y:d[t].y,z:d[t].z+10}:d[t],y=t=>d[t],f=(t,e,i)=>{let s=t.map(y),o=e.map(y),r=t.map(x),a=e.map(x),n=[[],-1];return 0>tD(s)?n=[s,0]:0>tD(o)?n=[o,1]:i&&(l.push(i),n=0>tD(r)?[s,0]:0>tD(a)?[o,1]:[s,0]),n},u=(p=f([3,2,1,0],[7,6,5,4],"front"))[0],z=p[1],b=(p=f([1,6,7,0],[4,5,2,3],"top"))[0],g=p[1],m=(p=f([1,2,5,6],[0,7,4,3],"side"))[0],v=p[1];return 1===v?c+=1e6*(n.plotWidth-e):v||(c+=1e6*e),c+=10*(!g||h>=0&&h<=180||h<360&&h>357.5?n.plotHeight-i:10+i),1===z?c+=100*s:z||(c+=100*(1e3-s)),{front:this.toLinePath(u,!0),top:this.toLinePath(b,!0),side:this.toLinePath(m,!0),zIndexes:{group:Math.round(c)},forcedSides:l,isFront:z,isTop:g}}function h(t){let e=this.g(),i=this.Element.prototype,s=["alpha","beta","x","y","r","innerR","start","end","depth"];function o(t){let e,i={};for(e in t=k(t))-1!==s.indexOf(e)&&(i[e]=t[e],delete t[e]);return!!Object.keys(i).length&&[i,t]}for(let i of((t=k(t)).alpha=(t.alpha||0)*tw,t.beta=(t.beta||0)*tw,e.top=this.path(),e.side1=this.path(),e.side2=this.path(),e.inn=this.path(),e.out=this.path(),e.onAdd=function(){let t=e.parentGroup,i=e.attr("class");for(let s of(e.top.add(e),["out","inn","side1","side2"]))e[s].attr({class:i+" highcharts-3d-side"}).add(t)},["addClass","removeClass"]))e[i]=function(){let t=arguments;for(let s of["top","out","inn","side1","side2"])e[s][i].apply(e[s],t)};for(let i of(e.setPaths=function(t){let i=e.renderer.arc3dPath(t),s=100*i.zTop;e.attribs=t,e.top.attr({d:i.top,zIndex:i.zTop}),e.inn.attr({d:i.inn,zIndex:i.zInn}),e.out.attr({d:i.out,zIndex:i.zOut}),e.side1.attr({d:i.side1,zIndex:i.zSide1}),e.side2.attr({d:i.side2,zIndex:i.zSide2}),e.zIndex=s,e.attr({zIndex:s}),t.center&&(e.top.setRadialReference(t.center),delete t.center)},e.setPaths(t),e.fillSetter=function(t){let e=tS(t).brighten(-.1).get();return this.fill=t,this.side1.attr({fill:e}),this.side2.attr({fill:e}),this.inn.attr({fill:e}),this.out.attr({fill:e}),this.top.attr({fill:t}),this},["opacity","translateX","translateY","visibility"]))e[i+"Setter"]=function(t,i){for(let s of(e[i]=t,["out","inn","side1","side2","top"]))e[s].attr(i,t)};return e.attr=function(t){if("object"==typeof t){let i=o(t);if(i){let t=i[0];arguments[0]=i[1],void 0!==t.alpha&&(t.alpha*=tw),void 0!==t.beta&&(t.beta*=tw),M(e.attribs,t),e.attribs&&e.setPaths(e.attribs)}}return i.attr.apply(e,arguments)},e.animate=function(t,s,r){let a=this.attribs,n="data-"+Math.random().toString(26).substring(2,9);delete t.center,delete t.z;let h=tA(L(s,this.renderer.globalAnimation));if(h.duration){let i=o(t);if(e[n]=0,t[n]=1,e[n+"Setter"]=f().noop,i){let t=i[0],e=(e,i)=>a[e]+(L(t[e],a[e])-a[e])*i;h.step=function(t,i){i.prop===n&&i.elem.setPaths(k(a,{x:e("x",i.pos),y:e("y",i.pos),r:e("r",i.pos),innerR:e("innerR",i.pos),start:e("start",i.pos),end:e("end",i.pos),depth:e("depth",i.pos)}))}}s=h}return i.animate.call(this,t,s,r)},e.destroy=function(){return this.top.destroy(),this.out.destroy(),this.inn.destroy(),this.side1.destroy(),this.side2.destroy(),i.destroy.call(this)},e.hide=function(){this.top.hide(),this.out.hide(),this.inn.hide(),this.side1.hide(),this.side2.hide()},e.show=function(t){this.top.show(t),this.out.show(t),this.inn.show(t),this.side1.show(t),this.side2.show(t)},e}function l(t){let e=t.x||0,i=t.y||0,s=t.start||0,o=(t.end||0)-1e-5,r=t.r||0,a=t.innerR||0,n=t.depth||0,h=t.alpha||0,l=t.beta||0,p=Math.cos(s),c=Math.sin(s),d=Math.cos(o),x=Math.sin(o),y=r*Math.cos(l),f=r*Math.cos(h),u=a*Math.cos(l),z=a*Math.cos(h),b=n*Math.sin(l),g=n*Math.sin(h),m=[["M",e+y*p,i+f*c]];(m=m.concat(tH(e,i,y,f,s,o,0,0))).push(["L",e+u*d,i+z*x]),(m=m.concat(tH(e,i,u,z,o,s,0,0))).push(["Z"]);let v=l>0?Math.PI/2:0,M=h>0?0:Math.PI/2,P=s>-v?s:o>-v?-v:s,A=o<tO-M?o:s<tO-M?tO-M:o,S=2*tO-M,k=[["M",e+y*tI(P),i+f*tT(P)]];k=k.concat(tH(e,i,y,f,P,A,0,0)),o>S&&s<S?(k.push(["L",e+y*tI(A)+b,i+f*tT(A)+g]),(k=k.concat(tH(e,i,y,f,A,S,b,g))).push(["L",e+y*tI(S),i+f*tT(S)]),(k=k.concat(tH(e,i,y,f,S,o,0,0))).push(["L",e+y*tI(o)+b,i+f*tT(o)+g]),(k=k.concat(tH(e,i,y,f,o,S,b,g))).push(["L",e+y*tI(S),i+f*tT(S)]),k=k.concat(tH(e,i,y,f,S,A,0,0))):o>tO-M&&s<tO-M&&(k.push(["L",e+y*Math.cos(A)+b,i+f*Math.sin(A)+g]),(k=k.concat(tH(e,i,y,f,A,o,b,g))).push(["L",e+y*Math.cos(o),i+f*Math.sin(o)]),k=k.concat(tH(e,i,y,f,o,A,0,0))),k.push(["L",e+y*Math.cos(A)+b,i+f*Math.sin(A)+g]),(k=k.concat(tH(e,i,y,f,A,P,b,g))).push(["Z"]);let w=[["M",e+u*p,i+z*c]];(w=w.concat(tH(e,i,u,z,s,o,0,0))).push(["L",e+u*Math.cos(o)+b,i+z*Math.sin(o)+g]),(w=w.concat(tH(e,i,u,z,o,s,b,g))).push(["Z"]);let L=[["M",e+y*p,i+f*c],["L",e+y*p+b,i+f*c+g],["L",e+u*p+b,i+z*c+g],["L",e+u*p,i+z*c],["Z"]],D=[["M",e+y*d,i+f*x],["L",e+y*d+b,i+f*x+g],["L",e+u*d+b,i+z*x+g],["L",e+u*d,i+z*x],["Z"]],I=Math.atan2(g,-b),T=Math.abs(o+I),O=Math.abs(s+I),X=Math.abs((s+o)/2+I);function H(t){return(t%=2*Math.PI)>Math.PI&&(t=2*Math.PI-t),t}T=H(T),O=H(O);let Y=1e5*(X=H(X)),Z=1e5*O,E=1e5*T;return{top:m,zTop:1e5*Math.PI+1,out:k,zOut:Math.max(Y,Z,E),inn:w,zInn:Math.max(Y,Z,E),side1:L,zSide1:.99*E,side2:D,zSide2:.99*Z}}t.compose=function(t){let p=t.prototype;p.element3d||M(p,{Element3D:tP,arc3d:h,arc3dPath:l,cuboid:a,cuboidPath:n,element3d:r,face3d:s,polyhedron:o,toLinePath:e,toLineSegments:i})}}(l||(l={}));let tY=l;var tZ=d(532),tE=d.n(tZ);let{defaultOptions:tC}=f();function tR(t){return new t_(this,t)}function tF(){var t;let e=this.options.zAxis=A(t=this.options.zAxis||{})?t:[t];this.is3d()&&(this.zAxis=[],e.forEach(t=>{this.addZAxis(t).setScale()}))}class t_ extends tE(){constructor(){super(...arguments),this.isZAxis=!0}static compose(t){let e=t.prototype;e.addZAxis||(tC.zAxis=k(tC.xAxis,{offset:0,lineWidth:0}),e.addZAxis=tR,e.collectionsWithInit.zAxis=[e.addZAxis],e.collectionsWithUpdate.push("zAxis"),m(t,"afterCreateAxes",tF))}init(t,e){this.isZAxis=!0,super.init(t,e,"zAxis")}getSeriesExtremes(){this.hasVisibleSeries=!1,this.dataMin=this.dataMax=this.ignoreMinPadding=this.ignoreMaxPadding=void 0,this.stacking&&this.stacking.buildStacks(),this.series.forEach(t=>{if(t.reserveSpace()){let e=t.options.threshold;this.hasVisibleSeries=!0,this.positiveValuesOnly&&e<=0&&(e=void 0);let i=t.getColumn("z");i.length&&(this.dataMin=Math.min(L(this.dataMin,i[0]),Math.min.apply(null,i)),this.dataMax=Math.max(L(this.dataMax,i[0]),Math.max.apply(null,i)))}})}setAxisSize(){let t=this.chart;super.setAxisSize(),this.width=this.len=t.options.chart.options3d?.depth||0,this.right=t.chartWidth-this.width-this.left}}let{composed:tj}=f(),{perspective:tW}=Y;function tB(){let t=this.chart,e=this.options,i=e.depth,s=(e.stacking?e.stack||0:this.index)*(i+(e.groupZPadding||1)),o=this.borderWidth%2?.5:0,r;for(let a of(t.inverted&&!this.yAxis.reversed&&(o*=-1),!1!==e.grouping&&(s=0),s+=e.groupZPadding||1,this.points))if(a.outside3dPlot=null,null!==a.y){let e,n=M({x:0,y:0,width:0,height:0},a.shapeArgs||{}),h=[["x","width"],["y","height"]],l=a.tooltipPos;for(let t of h)if((e=n[t[0]]-o)<0&&(n[t[1]]+=n[t[0]]+o,n[t[0]]=-o,e=0),e+n[t[1]]>this[t[0]+"Axis"].len&&0!==n[t[1]]&&(n[t[1]]=this[t[0]+"Axis"].len-n[t[0]]),0!==n[t[1]]&&(n[t[0]]>=this[t[0]+"Axis"].len||n[t[0]]+n[t[1]]<=o)){for(let t in n)n[t]="y"===t?-9999:0;a.outside3dPlot=!0}if("roundedRect"===a.shapeType&&(a.shapeType="cuboid"),a.shapeArgs=M(n,{z:s,depth:i,insidePlotArea:!0}),r={x:n.x+n.width/2,y:n.y,z:s+i/2},t.inverted&&(r.x=n.height,r.y=a.clientX||0),a.axisXpos=r.x,a.axisYpos=r.y,a.axisZpos=r.z,a.plot3d=tW([r],t,!0,!1)[0],l){let e=tW([{x:l[0],y:l[1],z:s+i/2}],t,!0,!1)[0];a.tooltipPos=[e.x,e.y]}}this.z=s}function tG(){if(this.chart.is3d()){let i=this.options,s=i.grouping,o=i.stacking,r=this.yAxis.options.reversedStacks,a=0;if(!(void 0!==s&&!s)){var t,e;let s,n,h,l,p,c=(t=this.chart,e=o||void 0,n=t.series,h={totalStacks:0},p=1,n.forEach(function(t){h[l=L(t.options.stack,e?0:n.length-1-t.index)]?h[l].series.push(t):(h[l]={series:[t],position:p},p++)}),h.totalStacks=p+1,h),d=i.stack||0;for(s=0;s<c[d].series.length&&c[d].series[s]!==this;s++);a=10*(c.totalStacks-c[d].position)+(r?s:-s),this.xAxis.reversed||(a=10*c.totalStacks-a)}i.depth=i.depth||25,this.z=this.z||0,i.zIndex=a}}function tN(t,...e){return this.series.chart.is3d()?this.graphic&&"g"!==this.graphic.element.nodeName:t.apply(this,e)}function tV(t){if(this.chart.is3d()){let t=arguments,e=t[1],i=this.yAxis,s=this.yAxis.reversed;if(e)for(let t of this.points)null!==t.y&&(t.height=t.shapeArgs.height,t.shapey=t.shapeArgs.y,t.shapeArgs.height=1,s||(t.stackY?t.shapeArgs.y=t.plotY+i.translate(t.stackY):t.shapeArgs.y=t.plotY+(t.negative?-t.height:t.height)));else{for(let t of this.points)null!==t.y&&(t.shapeArgs.height=t.height,t.shapeArgs.y=t.shapey,t.graphic&&t.graphic[t.outside3dPlot?"attr":"animate"](t.shapeArgs,this.options.animation));this.drawDataLabels()}}else t.apply(this,[].slice.call(arguments,1))}function tU(t,e,i,s,o,r){return"dataLabelsGroup"!==e&&"markerGroup"!==e&&this.chart.is3d()&&(this[e]&&delete this[e],r&&(this.chart.columnGroup||(this.chart.columnGroup=this.chart.renderer.g("columnGroup").add(r)),this[e]=this.chart.columnGroup,this.chart.columnGroup.attr(this.getPlotBox()),this[e].survive=!0,"group"===e&&(arguments[3]="visible"))),t.apply(this,Array.prototype.slice.call(arguments,1))}function tq(t){let e=t.apply(this,[].slice.call(arguments,1));return this.chart.is3d&&this.chart.is3d()&&(e.stroke=this.options.edgeColor||e.fill,e["stroke-width"]=L(this.options.edgeWidth,1)),e}function tJ(t,e,i){let s=this.chart.is3d&&this.chart.is3d();s&&(this.options.inactiveOtherPoints=!0),t.call(this,e,i),s&&(this.options.inactiveOtherPoints=!1)}function tK(t,e){if(this.chart.is3d())for(let t of this.points)t.visible=t.options.visible=e=void 0===e?!L(this.visible,t.visible):e,this.options.data[this.data.indexOf(t)]=t.options,t.graphic&&t.graphic.attr({visibility:e?"visible":"hidden"});t.apply(this,Array.prototype.slice.call(arguments,1))}function tQ(t){t.apply(this,[].slice.call(arguments,1)),this.chart.is3d()&&this.translate3dShapes()}function t$(t,e,i,s,o){let r=this.chart;if(s.outside3dPlot=e.outside3dPlot,r.is3d()&&this.is("column")){let t=this.options,i=L(s.inside,!!this.options.stacking),a=r.options.chart.options3d,n=(e.pointWidth||0)/2,h={x:o.x+n,y:o.y,z:this.z+t.depth/2};r.inverted&&(i&&(o.width=0,h.x+=e.shapeArgs.height/2),a.alpha>=90&&a.alpha<=270&&(h.y+=e.shapeArgs.width)),o.x=(h=tW([h],r,!0,!1)[0]).x-n,o.y=e.outside3dPlot?-9e9:h.y}t.apply(this,[].slice.call(arguments,1))}function t0(t){return!arguments[2].outside3dPlot&&t.apply(this,[].slice.call(arguments,1))}function t1(t,e){let i=t.apply(this,[].slice.call(arguments,1)),s=this.axis.chart,{width:o}=e;if(s.is3d()&&this.base){let t=+this.base.split(",")[0],e=s.series[t],r=s.options.chart.options3d;if(e&&"column"===e.type){let t={x:i.x+(s.inverted?i.height:o/2),y:i.y,z:e.options.depth/2};s.inverted&&(i.width=0,r.alpha>=90&&r.alpha<=270&&(t.y+=o)),i.x=(t=tW([t],s,!0,!1)[0]).x-o/2,i.y=t.y}}return i}let{pie:{prototype:{pointClass:t3}}}=j().seriesTypes,t2=class extends t3{haloPath(){return this.series?.chart.is3d()?[]:super.haloPath.apply(this,arguments)}},{composed:t5,deg2rad:t6}=f(),{pie:t9}=j().seriesTypes;class t4 extends t9{static compose(t){D(t5,"Pie3D")&&(t.types.pie=t4)}addPoint(){super.addPoint.apply(this,arguments),this.chart.is3d()&&this.update(this.userOptions,!0)}animate(t){if(this.chart.is3d()){let e=this.center,i=this.group,s=this.markerGroup,o=this.options.animation,r;!0===o&&(o={}),t?(i.oldtranslateX=L(i.oldtranslateX,i.translateX),i.oldtranslateY=L(i.oldtranslateY,i.translateY),r={translateX:e[0],translateY:e[1],scaleX:.001,scaleY:.001},i.attr(r),s&&(s.attrSetters=i.attrSetters,s.attr(r))):(r={translateX:i.oldtranslateX,translateY:i.oldtranslateY,scaleX:1,scaleY:1},i.animate(r,o),s&&s.animate(r,o))}else super.animate.apply(this,arguments)}getDataLabelPosition(t,e){let i=super.getDataLabelPosition(t,e);if(this.chart.is3d()){let e=this.chart.options.chart.options3d,s=t.shapeArgs,o=s.r,r=(s.alpha||e?.alpha)*t6,a=(s.beta||e?.beta)*t6,n=(s.start+s.end)/2,h=i.connectorPosition,l=-o*(1-Math.cos(r))*Math.sin(n),p=o*(Math.cos(a)-1)*Math.cos(n);for(let t of[i?.natural,h.breakAt,h.touchingSliceAt])t.x+=p,t.y+=l}return i}pointAttribs(t){let e=super.pointAttribs.apply(this,arguments),i=this.options;return this.chart.is3d()&&!this.chart.styledMode&&(e.stroke=i.edgeColor||t.color||this.color,e["stroke-width"]=L(i.edgeWidth,1)),e}translate(){if(super.translate.apply(this,arguments),!this.chart.is3d())return;let t=this.options,e=t.depth||0,i=this.chart.options.chart.options3d,s=i.alpha,o=i.beta,r=t.stacking?(t.stack||0)*e:this._i*e;for(let i of(r+=e/2,!1!==t.grouping&&(r=0),this.points)){let a=i.shapeArgs;i.shapeType="arc3d",a.z=r,a.depth=.75*e,a.alpha=s,a.beta=o,a.center=this.center;let n=(a.end+a.start)/2;i.slicedTranslation={translateX:Math.round(Math.cos(n)*t.slicedOffset*Math.cos(s*t6)),translateY:Math.round(Math.sin(n)*t.slicedOffset*Math.cos(s*t6))}}}drawTracker(){if(super.drawTracker.apply(this,arguments),this.chart.is3d()){for(let t of this.points)if(t.graphic)for(let e of["out","inn","side1","side2"])t.graphic&&(t.graphic[e].element.point=t)}}}M(t4.prototype,{pointClass:t2});var t7=d(632),t8=d.n(t7);let{pointClass:et}=t8().prototype,ee=class extends et{applyOptions(){return super.applyOptions.apply(this,arguments),v(this.z)||(this.z=0),this}},{pointCameraDistance:ei}=Y;class es extends t8(){pointAttribs(t){let e=super.pointAttribs.apply(this,arguments);return this.chart.is3d()&&t&&(e.zIndex=ei(t,this.chart)),e}}es.defaultOptions=k(t8().defaultOptions,{tooltip:{pointFormat:"x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>z: <b>{point.z}</b><br/>"}}),M(es.prototype,{axisTypes:["xAxis","yAxis","zAxis"],directTouch:!0,parallelArrays:["x","y","z"],pointArrayMap:["x","y","z"],pointClass:ee}),j().registerSeriesType("scatter3d",es);let eo=f();({compose:function(t){D(W,"Area3DSeries")&&I(t.prototype,"getGraphPath",N)}}).compose(eo.Series.types.area),tc.compose(eo.Axis,eo.Tick),F.compose(eo.Chart,eo.Fx),({compose:function(t,e){if(D(tj,"Column3D")){let i=t.prototype,s=e.prototype,{column:o,columnRange:r}=t.types;if(I(i,"alignDataLabel",t$),I(i,"justifyDataLabel",t0),I(s,"getStackBox",t1),o){let t=o.prototype,e=t.pointClass.prototype;t.translate3dPoints=()=>void 0,t.translate3dShapes=tB,m(t,"afterInit",tG),I(e,"hasNewShapeType",tN),I(t,"animate",tV),I(t,"plotGroup",tU),I(t,"pointAttribs",tq),I(t,"setState",tJ),I(t,"setVisible",tK),I(t,"translate",tQ)}if(r){let t=r.prototype;I(t.pointClass.prototype,"hasNewShapeType",tN),I(t,"plotGroup",tU),I(t,"pointAttribs",tq),I(t,"setState",tJ),I(t,"setVisible",tK)}}}}).compose(eo.Series,tm()),t4.compose(eo.Series),tb.compose(eo.Series),tY.compose(tx().getRendererType()),t_.compose(eo.Chart);let er=eo;return x.default})());