Hacked By AnonymousFox

Current Path : C:/AppServ/www/financial/stacked/code/es5/modules/
Upload File :
Current File : C:/AppServ/www/financial/stacked/code/es5/modules/funnel3d.js.map

{"version":3,"sources":["<anon>"],"sourcesContent":["/**\n * @license Highcharts JS v12.1.2 (2025-01-09)\n * @module highcharts/modules/funnel3d\n * @requires highcharts\n * @requires highcharts/highcharts-3d\n * @requires highcharts/modules/cylinder\n *\n * Highcharts funnel module\n *\n * (c) 2010-2024 Kacper Madej\n *\n * License: www.highcharts.com/license\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"highcharts\"), require(\"highcharts\")[\"Color\"], require(\"highcharts\")[\"RendererRegistry\"], require(\"highcharts\")[\"SeriesRegistry\"]);\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"highcharts/modules/funnel3d\", [[\"highcharts/highcharts\"], [\"highcharts/highcharts\",\"Color\"], [\"highcharts/highcharts\",\"RendererRegistry\"], [\"highcharts/highcharts\",\"SeriesRegistry\"]], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"highcharts/modules/funnel3d\"] = factory(require(\"highcharts\"), require(\"highcharts\")[\"Color\"], require(\"highcharts\")[\"RendererRegistry\"], require(\"highcharts\")[\"SeriesRegistry\"]);\n\telse\n\t\troot[\"Highcharts\"] = factory(root[\"Highcharts\"], root[\"Highcharts\"][\"Color\"], root[\"Highcharts\"][\"RendererRegistry\"], root[\"Highcharts\"][\"SeriesRegistry\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE__944__, __WEBPACK_EXTERNAL_MODULE__620__, __WEBPACK_EXTERNAL_MODULE__608__, __WEBPACK_EXTERNAL_MODULE__512__) {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 620:\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__620__;\n\n/***/ }),\n\n/***/ 608:\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__608__;\n\n/***/ }),\n\n/***/ 512:\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__512__;\n\n/***/ }),\n\n/***/ 944:\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__944__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n  \"default\": function() { return /* binding */ funnel3d_src; }\n});\n\n// EXTERNAL MODULE: external {\"amd\":[\"highcharts/highcharts\"],\"commonjs\":[\"highcharts\"],\"commonjs2\":[\"highcharts\"],\"root\":[\"Highcharts\"]}\nvar highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_ = __webpack_require__(944);\nvar highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default = /*#__PURE__*/__webpack_require__.n(highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_);\n// EXTERNAL MODULE: external {\"amd\":[\"highcharts/highcharts\",\"Color\"],\"commonjs\":[\"highcharts\",\"Color\"],\"commonjs2\":[\"highcharts\",\"Color\"],\"root\":[\"Highcharts\",\"Color\"]}\nvar highcharts_Color_commonjs_highcharts_Color_commonjs2_highcharts_Color_root_Highcharts_Color_ = __webpack_require__(620);\nvar highcharts_Color_commonjs_highcharts_Color_commonjs2_highcharts_Color_root_Highcharts_Color_default = /*#__PURE__*/__webpack_require__.n(highcharts_Color_commonjs_highcharts_Color_commonjs2_highcharts_Color_root_Highcharts_Color_);\n// EXTERNAL MODULE: external {\"amd\":[\"highcharts/highcharts\",\"RendererRegistry\"],\"commonjs\":[\"highcharts\",\"RendererRegistry\"],\"commonjs2\":[\"highcharts\",\"RendererRegistry\"],\"root\":[\"Highcharts\",\"RendererRegistry\"]}\nvar highcharts_RendererRegistry_commonjs_highcharts_RendererRegistry_commonjs2_highcharts_RendererRegistry_root_Highcharts_RendererRegistry_ = __webpack_require__(608);\nvar highcharts_RendererRegistry_commonjs_highcharts_RendererRegistry_commonjs2_highcharts_RendererRegistry_root_Highcharts_RendererRegistry_default = /*#__PURE__*/__webpack_require__.n(highcharts_RendererRegistry_commonjs_highcharts_RendererRegistry_commonjs2_highcharts_RendererRegistry_root_Highcharts_RendererRegistry_);\n;// ./code/es5/es-modules/Series/Funnel3D/SVGElement3DFunnel.js\n/* *\n *\n *  Highcharts funnel3d series module\n *\n *  (c) 2010-2024 Highsoft AS\n *\n *  Author: Kacper Madej\n *\n *  License: www.highcharts.com/license\n *\n *  !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!\n *\n * */\n\nvar __extends = (undefined && undefined.__extends) || (function () {\n    var extendStatics = function (d,\n        b) {\n            extendStatics = Object.setPrototypeOf ||\n                ({ __proto__: [] } instanceof Array && function (d,\n        b) { d.__proto__ = b; }) ||\n                function (d,\n        b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n        return extendStatics(d, b);\n    };\n    return function (d, b) {\n        extendStatics(d, b);\n        function __() { this.constructor = d; }\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n    };\n})();\n\nvar color = (highcharts_Color_commonjs_highcharts_Color_commonjs2_highcharts_Color_root_Highcharts_Color_default()).parse;\n\nvar charts = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).charts;\n\nvar SVGElement3D = highcharts_RendererRegistry_commonjs_highcharts_RendererRegistry_commonjs2_highcharts_RendererRegistry_root_Highcharts_RendererRegistry_default().getRendererType().prototype.Element3D;\n\nvar merge = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).merge;\n/* *\n *\n *  Class\n *\n * */\nvar SVGElement3DFunnel = /** @class */ (function (_super) {\n    __extends(SVGElement3DFunnel, _super);\n    function SVGElement3DFunnel() {\n        /* *\n         *\n         *  Properties\n         *\n         * */\n        var _this = _super !== null && _super.apply(this,\n            arguments) || this;\n        _this.mainParts = ['top', 'bottom'];\n        _this.parts = [\n            'top', 'bottom',\n            'frontUpper', 'backUpper',\n            'frontLower', 'backLower',\n            'rightUpper', 'rightLower'\n        ];\n        _this.sideGroups = [\n            'upperGroup', 'lowerGroup'\n        ];\n        _this.sideParts = {\n            upperGroup: ['frontUpper', 'backUpper', 'rightUpper'],\n            lowerGroup: ['frontLower', 'backLower', 'rightLower']\n        };\n        _this.pathType = 'funnel3d';\n        return _this;\n    }\n    /* *\n     *\n     *  Functions\n     *\n     * */\n    // override opacity and color setters to control opacity\n    SVGElement3DFunnel.prototype.opacitySetter = function (value) {\n        var funnel3d = this,\n            opacity = parseFloat(value),\n            parts = funnel3d.parts,\n            chart = charts[funnel3d.renderer.chartIndex],\n            filterId = 'group-opacity-' + opacity + '-' + chart.index;\n        // Use default for top and bottom\n        funnel3d.parts = funnel3d.mainParts;\n        funnel3d.singleSetterForParts('opacity', opacity);\n        // Restore\n        funnel3d.parts = parts;\n        if (!chart.renderer.filterId) {\n            chart.renderer.definition({\n                tagName: 'filter',\n                attributes: {\n                    id: filterId\n                },\n                children: [{\n                        tagName: 'feComponentTransfer',\n                        children: [{\n                                tagName: 'feFuncA',\n                                attributes: {\n                                    type: 'table',\n                                    tableValues: '0 ' + opacity\n                                }\n                            }]\n                    }]\n            });\n            for (var _i = 0, _a = funnel3d.sideGroups; _i < _a.length; _i++) {\n                var groupName = _a[_i];\n                funnel3d[groupName].attr({\n                    filter: 'url(#' + filterId + ')'\n                });\n            }\n            // Styled mode\n            if (funnel3d.renderer.styledMode) {\n                chart.renderer.definition({\n                    tagName: 'style',\n                    textContent: '.highcharts-' + filterId +\n                        ' {filter:url(#' + filterId + ')}'\n                });\n                for (var _b = 0, _c = funnel3d.sideGroups; _b < _c.length; _b++) {\n                    var groupName = _c[_b];\n                    funnel3d[groupName].addClass('highcharts-' + filterId);\n                }\n            }\n        }\n        return funnel3d;\n    };\n    SVGElement3DFunnel.prototype.fillSetter = function (fill) {\n        var fillColor = color(fill);\n        // Extract alpha channel to use the opacitySetter\n        var funnel3d = this,\n            alpha = fillColor.rgba[3],\n            partsWithColor = {\n                // Standard color for top and bottom\n                top: color(fill).brighten(0.1).get(),\n                bottom: color(fill).brighten(-0.2).get()\n            };\n        if (alpha < 1) {\n            fillColor.rgba[3] = 1;\n            fillColor = fillColor.get('rgb');\n            // Set opacity through the opacitySetter\n            funnel3d.attr({\n                opacity: alpha\n            });\n        }\n        else {\n            // Use default for full opacity\n            fillColor = fill;\n        }\n        // Add gradient for sides\n        if (!fillColor.linearGradient &&\n            !fillColor.radialGradient &&\n            funnel3d.gradientForSides) {\n            fillColor = {\n                linearGradient: { x1: 0, x2: 1, y1: 1, y2: 1 },\n                stops: [\n                    [0, color(fill).brighten(-0.2).get()],\n                    [0.5, fill],\n                    [1, color(fill).brighten(-0.2).get()]\n                ]\n            };\n        }\n        // Gradient support\n        if (fillColor.linearGradient) {\n            // Color in steps, as each gradient will generate a key\n            for (var _i = 0, _a = funnel3d.sideGroups; _i < _a.length; _i++) {\n                var sideGroupName = _a[_i];\n                var box = funnel3d[sideGroupName].gradientBox,\n                    gradient = fillColor.linearGradient,\n                    alteredGradient = merge(fillColor, {\n                        linearGradient: {\n                            x1: box.x + gradient.x1 * box.width,\n                            y1: box.y + gradient.y1 * box.height,\n                            x2: box.x + gradient.x2 * box.width,\n                            y2: box.y + gradient.y2 * box.height\n                        }\n                    });\n                for (var _b = 0, _c = funnel3d.sideParts[sideGroupName]; _b < _c.length; _b++) {\n                    var partName = _c[_b];\n                    partsWithColor[partName] = alteredGradient;\n                }\n            }\n        }\n        else {\n            merge(true, partsWithColor, {\n                frontUpper: fillColor,\n                backUpper: fillColor,\n                rightUpper: fillColor,\n                frontLower: fillColor,\n                backLower: fillColor,\n                rightLower: fillColor\n            });\n            if (fillColor.radialGradient) {\n                for (var _d = 0, _e = funnel3d.sideGroups; _d < _e.length; _d++) {\n                    var sideGroupName = _e[_d];\n                    var gradBox = funnel3d[sideGroupName].gradientBox, centerX = gradBox.x + gradBox.width / 2, centerY = gradBox.y + gradBox.height / 2, diameter = Math.min(gradBox.width, gradBox.height);\n                    for (var _f = 0, _g = funnel3d.sideParts[sideGroupName]; _f < _g.length; _f++) {\n                        var partName = _g[_f];\n                        funnel3d[partName].setRadialReference([\n                            centerX, centerY, diameter\n                        ]);\n                    }\n                }\n            }\n        }\n        funnel3d.singleSetterForParts('fill', null, partsWithColor);\n        // Fill for animation getter (#6776)\n        funnel3d.color = funnel3d.fill = fill;\n        // Change gradientUnits to userSpaceOnUse for linearGradient\n        if (fillColor.linearGradient) {\n            for (var _h = 0, _j = [funnel3d.frontLower, funnel3d.frontUpper]; _h < _j.length; _h++) {\n                var part = _j[_h];\n                var elem = part.element,\n                    grad = (elem &&\n                        funnel3d.renderer.gradients[elem.gradient]);\n                if (grad &&\n                    grad.attr('gradientUnits') !== 'userSpaceOnUse') {\n                    grad.attr({\n                        gradientUnits: 'userSpaceOnUse'\n                    });\n                }\n            }\n        }\n        return funnel3d;\n    };\n    SVGElement3DFunnel.prototype.adjustForGradient = function () {\n        var funnel3d = this;\n        var bbox;\n        for (var _i = 0, _a = funnel3d.sideGroups; _i < _a.length; _i++) {\n            var sideGroupName = _a[_i];\n            // Use common extremes for groups for matching gradients\n            var topLeftEdge = {\n                    x: Number.MAX_VALUE,\n                    y: Number.MAX_VALUE\n                },\n                bottomRightEdge = {\n                    x: -Number.MAX_VALUE,\n                    y: -Number.MAX_VALUE\n                };\n            // Get extremes\n            for (var _b = 0, _c = funnel3d.sideParts[sideGroupName]; _b < _c.length; _b++) {\n                var partName = _c[_b];\n                var part = funnel3d[partName];\n                bbox = part.getBBox(true);\n                topLeftEdge = {\n                    x: Math.min(topLeftEdge.x, bbox.x),\n                    y: Math.min(topLeftEdge.y, bbox.y)\n                };\n                bottomRightEdge = {\n                    x: Math.max(bottomRightEdge.x, bbox.x + bbox.width),\n                    y: Math.max(bottomRightEdge.y, bbox.y + bbox.height)\n                };\n            }\n            // Store for color fillSetter\n            funnel3d[sideGroupName].gradientBox = {\n                x: topLeftEdge.x,\n                width: bottomRightEdge.x - topLeftEdge.x,\n                y: topLeftEdge.y,\n                height: bottomRightEdge.y - topLeftEdge.y\n            };\n        }\n    };\n    SVGElement3DFunnel.prototype.zIndexSetter = function () {\n        // `this.added` won't work, because zIndex is set after the prop is set,\n        // but before the graphic is really added\n        if (this.finishedOnAdd) {\n            this.adjustForGradient();\n        }\n        // Run default\n        return this.renderer.Element.prototype.zIndexSetter.apply(this, arguments);\n    };\n    SVGElement3DFunnel.prototype.onAdd = function () {\n        this.adjustForGradient();\n        this.finishedOnAdd = true;\n    };\n    return SVGElement3DFunnel;\n}(SVGElement3D));\n/* *\n *\n *  Default Export\n *\n * */\n/* harmony default export */ var Funnel3D_SVGElement3DFunnel = (SVGElement3DFunnel);\n\n;// ./code/es5/es-modules/Series/Funnel3D/Funnel3DComposition.js\n/* *\n *\n *  Highcharts funnel3d series module\n *\n *  (c) 2010-2024 Highsoft AS\n *\n *  Author: Kacper Madej\n *\n *  License: www.highcharts.com/license\n *\n *  !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!\n *\n * */\n\n\n\nvar Funnel3DComposition_charts = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).charts;\n\nvar error = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).error, extend = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).extend, Funnel3DComposition_merge = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).merge;\n/* *\n *\n *  Functions\n *\n * */\n/** @private */\nfunction compose(SVGRendererClass) {\n    var rendererProto = SVGRendererClass.prototype;\n    if (!rendererProto.funnel3d) {\n        rendererProto.Element3D.types.funnel3d = Funnel3D_SVGElement3DFunnel;\n        extend(rendererProto, {\n            funnel3d: rendererFunnel3d,\n            funnel3dPath: rendererFunnel3dPath\n        });\n    }\n}\n/** @private */\nfunction rendererFunnel3d(shapeArgs) {\n    var renderer = this,\n        funnel3d = renderer.element3d('funnel3d',\n        shapeArgs),\n        styledMode = renderer.styledMode, \n        // Hide stroke for Firefox\n        strokeAttrs = {\n            'stroke-width': 1,\n            stroke: 'none'\n        };\n    // Create groups for sides for opacity setter\n    funnel3d.upperGroup = renderer.g('funnel3d-upper-group').attr({\n        zIndex: funnel3d.frontUpper.zIndex\n    }).add(funnel3d);\n    for (var _i = 0, _a = [funnel3d.frontUpper, funnel3d.backUpper, funnel3d.rightUpper]; _i < _a.length; _i++) {\n        var upperElem = _a[_i];\n        if (!styledMode) {\n            upperElem.attr(strokeAttrs);\n        }\n        upperElem.add(funnel3d.upperGroup);\n    }\n    funnel3d.lowerGroup = renderer.g('funnel3d-lower-group').attr({\n        zIndex: funnel3d.frontLower.zIndex\n    }).add(funnel3d);\n    for (var _b = 0, _c = [funnel3d.frontLower, funnel3d.backLower, funnel3d.rightLower]; _b < _c.length; _b++) {\n        var lowerElem = _c[_b];\n        if (!styledMode) {\n            lowerElem.attr(strokeAttrs);\n        }\n        lowerElem.add(funnel3d.lowerGroup);\n    }\n    funnel3d.gradientForSides = shapeArgs.gradientForSides;\n    return funnel3d;\n}\n/**\n * Generates paths and zIndexes.\n * @private\n */\nfunction rendererFunnel3dPath(shapeArgs) {\n    // Check getCylinderEnd for better error message if\n    // the cylinder module is missing\n    if (!this.getCylinderEnd) {\n        error('A required Highcharts module is missing: cylinder.js', true, Funnel3DComposition_charts[this.chartIndex]);\n    }\n    var renderer = this,\n        chart = Funnel3DComposition_charts[renderer.chartIndex], \n        // Adjust angles for visible edges\n        // based on alpha, selected through visual tests\n        alphaCorrection = shapeArgs.alphaCorrection = 90 - Math.abs((chart.options.chart.options3d.alpha % 180) -\n            90), \n        // Set zIndexes of parts based on cuboid logic, for\n        // consistency\n        cuboidData = this.cuboidPath.call(renderer,\n        Funnel3DComposition_merge(shapeArgs, {\n            depth: shapeArgs.width,\n            width: (shapeArgs.width + shapeArgs.bottom.width) / 2\n        })),\n        isTopFirst = cuboidData.isTop,\n        isFrontFirst = !cuboidData.isFront,\n        hasMiddle = !!shapeArgs.middle, \n        //\n        top = renderer.getCylinderEnd(chart,\n        Funnel3DComposition_merge(shapeArgs, {\n            x: shapeArgs.x - shapeArgs.width / 2,\n            z: shapeArgs.z - shapeArgs.width / 2,\n            alphaCorrection: alphaCorrection\n        })),\n        bottomWidth = shapeArgs.bottom.width,\n        bottomArgs = Funnel3DComposition_merge(shapeArgs, {\n            width: bottomWidth,\n            x: shapeArgs.x - bottomWidth / 2,\n            z: shapeArgs.z - bottomWidth / 2,\n            alphaCorrection: alphaCorrection\n        }),\n        bottom = renderer.getCylinderEnd(chart,\n        bottomArgs,\n        true);\n    var middleWidth = bottomWidth,\n        middleTopArgs = bottomArgs,\n        middleTop = bottom,\n        middleBottom = bottom, \n        // Masking for cylinders or a missing part of a side shape\n        useAlphaCorrection;\n    if (hasMiddle) {\n        middleWidth = shapeArgs.middle.width;\n        middleTopArgs = Funnel3DComposition_merge(shapeArgs, {\n            y: (shapeArgs.y +\n                shapeArgs.middle.fraction * shapeArgs.height),\n            width: middleWidth,\n            x: shapeArgs.x - middleWidth / 2,\n            z: shapeArgs.z - middleWidth / 2\n        });\n        middleTop = renderer.getCylinderEnd(chart, middleTopArgs, false);\n        middleBottom = renderer.getCylinderEnd(chart, middleTopArgs, false);\n    }\n    var ret = {\n            top: top,\n            bottom: bottom,\n            frontUpper: renderer.getCylinderFront(top,\n        middleTop),\n            zIndexes: {\n                group: cuboidData.zIndexes.group,\n                top: isTopFirst !== 0 ? 0 : 3,\n                bottom: isTopFirst !== 1 ? 0 : 3,\n                frontUpper: isFrontFirst ? 2 : 1,\n                backUpper: isFrontFirst ? 1 : 2,\n                rightUpper: isFrontFirst ? 2 : 1\n            }\n        };\n    ret.backUpper = renderer.getCylinderBack(top, middleTop);\n    useAlphaCorrection = (Math.min(middleWidth, shapeArgs.width) /\n        Math.max(middleWidth, shapeArgs.width)) !== 1;\n    ret.rightUpper = renderer.getCylinderFront(renderer.getCylinderEnd(chart, Funnel3DComposition_merge(shapeArgs, {\n        x: shapeArgs.x - shapeArgs.width / 2,\n        z: shapeArgs.z - shapeArgs.width / 2,\n        alphaCorrection: useAlphaCorrection ?\n            -alphaCorrection : 0\n    }), false), renderer.getCylinderEnd(chart, Funnel3DComposition_merge(middleTopArgs, {\n        alphaCorrection: useAlphaCorrection ?\n            -alphaCorrection : 0\n    }), !hasMiddle));\n    if (hasMiddle) {\n        useAlphaCorrection = (Math.min(middleWidth, bottomWidth) /\n            Math.max(middleWidth, bottomWidth)) !== 1;\n        Funnel3DComposition_merge(true, ret, {\n            frontLower: renderer.getCylinderFront(middleBottom, bottom),\n            backLower: renderer.getCylinderBack(middleBottom, bottom),\n            rightLower: renderer.getCylinderFront(renderer.getCylinderEnd(chart, Funnel3DComposition_merge(bottomArgs, {\n                alphaCorrection: useAlphaCorrection ?\n                    -alphaCorrection : 0\n            }), true), renderer.getCylinderEnd(chart, Funnel3DComposition_merge(middleTopArgs, {\n                alphaCorrection: useAlphaCorrection ?\n                    -alphaCorrection : 0\n            }), false)),\n            zIndexes: {\n                frontLower: isFrontFirst ? 2 : 1,\n                backLower: isFrontFirst ? 1 : 2,\n                rightLower: isFrontFirst ? 1 : 2\n            }\n        });\n    }\n    return ret;\n}\n/* *\n *\n *  Default Export\n *\n * */\nvar Funnel3DComposition = {\n    compose: compose\n};\n/* harmony default export */ var Funnel3D_Funnel3DComposition = (Funnel3DComposition);\n\n;// ./code/es5/es-modules/Series/Funnel3D/Funnel3DSeriesDefaults.js\n/* *\n *\n *  Imports\n *\n * */\n/* *\n *\n *  API Options\n *\n * */\n/**\n * A funnel3d is a 3d version of funnel series type. Funnel charts are\n * a type of chart often used to visualize stages in a sales project,\n * where the top are the initial stages with the most clients.\n *\n * It requires that the `highcharts-3d.js`, `cylinder.js` and\n * `funnel3d.js` module are loaded.\n *\n * @sample highcharts/demo/funnel3d/\n *         Funnel3d\n *\n * @extends      plotOptions.column\n * @excluding    allAreas, boostThreshold, colorAxis, compare, compareBase,\n *               dataSorting, boostBlending\n * @product      highcharts\n * @since        7.1.0\n * @requires     highcharts-3d\n * @requires     modules/cylinder\n * @requires     modules/funnel3d\n * @optionparent plotOptions.funnel3d\n */\nvar Funnel3DSeriesDefaults = {\n    /** @ignore-option */\n    center: ['50%', '50%'],\n    /**\n     * The max width of the series compared to the width of the plot area,\n     * or the pixel width if it is a number.\n     *\n     * @type    {number|string}\n     * @sample  {highcharts} highcharts/demo/funnel3d/ Funnel3d demo\n     * @product highcharts\n     */\n    width: '90%',\n    /**\n     * The width of the neck, the lower part of the funnel. A number defines\n     * pixel width, a percentage string defines a percentage of the plot\n     * area width.\n     *\n     * @type    {number|string}\n     * @sample  {highcharts} highcharts/demo/funnel3d/ Funnel3d demo\n     * @product highcharts\n     */\n    neckWidth: '30%',\n    /**\n     * The height of the series. If it is a number it defines\n     * the pixel height, if it is a percentage string it is the percentage\n     * of the plot area height.\n     *\n     * @type    {number|string}\n     * @sample  {highcharts} highcharts/demo/funnel3d/ Funnel3d demo\n     * @product highcharts\n     */\n    height: '100%',\n    /**\n     * The height of the neck, the lower part of the funnel. A number\n     * defines pixel width, a percentage string defines a percentage\n     * of the plot area height.\n     *\n     * @type    {number|string}\n     * @sample  {highcharts} highcharts/demo/funnel3d/ Funnel3d demo\n     * @product highcharts\n     */\n    neckHeight: '25%',\n    /**\n     * A reversed funnel has the widest area down. A reversed funnel with\n     * no neck width and neck height is a pyramid.\n     *\n     * @product highcharts\n     */\n    reversed: false,\n    /**\n     * By default sides fill is set to a gradient through this option being\n     * set to `true`. Set to `false` to get solid color for the sides.\n     *\n     * @product highcharts\n     */\n    gradientForSides: true,\n    animation: false,\n    edgeWidth: 0,\n    colorByPoint: true,\n    showInLegend: false,\n    dataLabels: {\n        align: 'right',\n        crop: false,\n        inside: false,\n        overflow: 'allow'\n    }\n};\n/**\n * A `funnel3d` series. If the [type](#series.funnel3d.type) option is\n * not specified, it is inherited from [chart.type](#chart.type).\n *\n * @sample {highcharts} highcharts/demo/funnel3d/\n *         Funnel3d demo\n *\n * @since     7.1.0\n * @extends   series,plotOptions.funnel3d\n * @excluding allAreas,boostThreshold,colorAxis,compare,compareBase\n * @product   highcharts\n * @requires  highcharts-3d\n * @requires  modules/cylinder\n * @requires  modules/funnel3d\n * @apioption series.funnel3d\n */\n/**\n * An array of data points for the series. For the `funnel3d` series\n * type, points can be given in the following ways:\n *\n * 1.  An array of numerical values. In this case, the numerical values\n * will be interpreted as `y` options. The `x` values will be automatically\n * calculated, either starting at 0 and incremented by 1, or from `pointStart`\n * and `pointInterval` given in the series options. If the axis has\n * categories, these will be used. Example:\n *\n *  ```js\n *  data: [0, 5, 3, 5]\n *  ```\n *\n * 2.  An array of objects with named values. The following snippet shows only a\n * few settings, see the complete options set below. If the total number of data\n * points exceeds the series' [turboThreshold](#series.funnel3d.turboThreshold),\n * this option is not available.\n *\n *  ```js\n *     data: [{\n *         y: 2,\n *         name: \"Point2\",\n *         color: \"#00FF00\"\n *     }, {\n *         y: 4,\n *         name: \"Point1\",\n *         color: \"#FF00FF\"\n *     }]\n *  ```\n *\n * @sample {highcharts} highcharts/chart/reflow-true/\n *         Numerical values\n * @sample {highcharts} highcharts/series/data-array-of-arrays/\n *         Arrays of numeric x and y\n * @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/\n *         Arrays of datetime x and y\n * @sample {highcharts} highcharts/series/data-array-of-name-value/\n *         Arrays of point.name and y\n * @sample {highcharts} highcharts/series/data-array-of-objects/\n *         Config objects\n *\n * @type      {Array<number|Array<number>|*>}\n * @extends   series.column.data\n * @product   highcharts\n * @apioption series.funnel3d.data\n */\n/**\n * By default sides fill is set to a gradient through this option being\n * set to `true`. Set to `false` to get solid color for the sides.\n *\n * @type      {boolean}\n * @product   highcharts\n * @apioption series.funnel3d.data.gradientForSides\n */\n''; // Detachs doclets above\n/* *\n *\n *  Default Export\n *\n * */\n/* harmony default export */ var Funnel3D_Funnel3DSeriesDefaults = (Funnel3DSeriesDefaults);\n\n// EXTERNAL MODULE: external {\"amd\":[\"highcharts/highcharts\",\"SeriesRegistry\"],\"commonjs\":[\"highcharts\",\"SeriesRegistry\"],\"commonjs2\":[\"highcharts\",\"SeriesRegistry\"],\"root\":[\"Highcharts\",\"SeriesRegistry\"]}\nvar highcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_ = __webpack_require__(512);\nvar highcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_default = /*#__PURE__*/__webpack_require__.n(highcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_);\n;// ./code/es5/es-modules/Series/Funnel3D/Funnel3DPoint.js\n/* *\n *\n *  Highcharts funnel3d series module\n *\n *  (c) 2010-2024 Highsoft AS\n *\n *  Author: Kacper Madej\n *\n *  License: www.highcharts.com/license\n *\n *  !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!\n *\n * */\n\nvar Funnel3DPoint_extends = (undefined && undefined.__extends) || (function () {\n    var extendStatics = function (d,\n        b) {\n            extendStatics = Object.setPrototypeOf ||\n                ({ __proto__: [] } instanceof Array && function (d,\n        b) { d.__proto__ = b; }) ||\n                function (d,\n        b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b,\n        p)) d[p] = b[p]; };\n        return extendStatics(d, b);\n    };\n    return function (d, b) {\n        if (typeof b !== \"function\" && b !== null)\n            throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n        extendStatics(d, b);\n        function __() { this.constructor = d; }\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n    };\n})();\n\nvar ColumnSeries = (highcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_default()).seriesTypes.column;\n\nvar Funnel3DPoint_extend = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).extend;\n/* *\n *\n *  Class\n *\n * */\nvar Funnel3DPoint = /** @class */ (function (_super) {\n    Funnel3DPoint_extends(Funnel3DPoint, _super);\n    function Funnel3DPoint() {\n        return _super !== null && _super.apply(this, arguments) || this;\n    }\n    return Funnel3DPoint;\n}(ColumnSeries.prototype.pointClass));\nFunnel3DPoint_extend(Funnel3DPoint.prototype, {\n    shapeType: 'funnel3d'\n});\n/* *\n *\n *  Default Export\n *\n * */\n/* harmony default export */ var Funnel3D_Funnel3DPoint = (Funnel3DPoint);\n\n;// ./code/es5/es-modules/Core/Math3D.js\n/* *\n *\n *  (c) 2010-2024 Torstein Honsi\n *\n *  License: www.highcharts.com/license\n *\n *  !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!\n *\n * */\n\n\nvar deg2rad = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).deg2rad;\n\nvar pick = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).pick;\n/* *\n *\n *  Functions\n *\n * */\n/* eslint-disable max-len */\n/**\n * Apply 3-D rotation\n * Euler Angles (XYZ):\n *     cosA = cos(Alfa|Roll)\n *     cosB = cos(Beta|Pitch)\n *     cosG = cos(Gamma|Yaw)\n *\n * Composite rotation:\n * |          cosB * cosG             |           cosB * sinG            |    -sinB    |\n * | sinA * sinB * cosG - cosA * sinG | sinA * sinB * sinG + cosA * cosG | sinA * cosB |\n * | cosA * sinB * cosG + sinA * sinG | cosA * sinB * sinG - sinA * cosG | cosA * cosB |\n *\n * Now, Gamma/Yaw is not used (angle=0), so we assume cosG = 1 and sinG = 0, so\n * we get:\n * |     cosB    |   0    |   - sinB    |\n * | sinA * sinB |  cosA  | sinA * cosB |\n * | cosA * sinB | - sinA | cosA * cosB |\n *\n * But in browsers, y is reversed, so we get sinA => -sinA. The general result\n * is:\n * |      cosB     |   0    |    - sinB     |     | x |     | px |\n * | - sinA * sinB |  cosA  | - sinA * cosB |  x  | y |  =  | py |\n * |  cosA * sinB  |  sinA  |  cosA * cosB  |     | z |     | pz |\n *\n * @private\n * @function rotate3D\n */\n/* eslint-enable max-len */\n/**\n * Rotates the position as defined in angles.\n * @private\n * @param {number} x\n *        X coordinate\n * @param {number} y\n *        Y coordinate\n * @param {number} z\n *        Z coordinate\n * @param {Highcharts.Rotation3DObject} angles\n *        Rotation angles\n * @return {Highcharts.Position3DObject}\n *         Rotated position\n */\nfunction rotate3D(x, y, z, angles) {\n    return {\n        x: angles.cosB * x - angles.sinB * z,\n        y: -angles.sinA * angles.sinB * x + angles.cosA * y -\n            angles.cosB * angles.sinA * z,\n        z: angles.cosA * angles.sinB * x + angles.sinA * y +\n            angles.cosA * angles.cosB * z\n    };\n}\n/**\n * Transforms a given array of points according to the angles in chart.options.\n *\n * @private\n * @function Highcharts.perspective\n *\n * @param {Array<Highcharts.Position3DObject>} points\n * The array of points\n *\n * @param {Highcharts.Chart} chart\n * The chart\n *\n * @param {boolean} [insidePlotArea]\n * Whether to verify that the points are inside the plotArea\n *\n * @param {boolean} [useInvertedPersp]\n * Whether to use inverted perspective in calculations\n *\n * @return {Array<Highcharts.Position3DObject>}\n * An array of transformed points\n *\n * @requires highcharts-3d\n */\nfunction perspective(points, chart, insidePlotArea, useInvertedPersp) {\n    var options3d = chart.options.chart.options3d, \n        /* The useInvertedPersp argument is used for inverted charts with\n         * already inverted elements,\n        such as dataLabels or tooltip positions.\n         */\n        inverted = pick(useInvertedPersp,\n        insidePlotArea ? chart.inverted : false),\n        origin = {\n            x: chart.plotWidth / 2,\n            y: chart.plotHeight / 2,\n            z: options3d.depth / 2,\n            vd: pick(options3d.depth, 1) * pick(options3d.viewDistance, 0)\n        },\n        scale = chart.scale3d || 1,\n        beta = deg2rad * options3d.beta * (inverted ? -1 : 1),\n        alpha = deg2rad * options3d.alpha * (inverted ? -1 : 1),\n        angles = {\n            cosA: Math.cos(alpha),\n            cosB: Math.cos(-beta),\n            sinA: Math.sin(alpha),\n            sinB: Math.sin(-beta)\n        };\n    if (!insidePlotArea) {\n        origin.x += chart.plotLeft;\n        origin.y += chart.plotTop;\n    }\n    // Transform each point\n    return points.map(function (point) {\n        var rotated = rotate3D((inverted ? point.y : point.x) - origin.x, (inverted ? point.x : point.y) - origin.y, (point.z || 0) - origin.z,\n            angles), \n            // Apply perspective\n            coordinate = perspective3D(rotated,\n            origin,\n            origin.vd);\n        // Apply translation\n        coordinate.x = coordinate.x * scale + origin.x;\n        coordinate.y = coordinate.y * scale + origin.y;\n        coordinate.z = rotated.z * scale + origin.z;\n        return {\n            x: (inverted ? coordinate.y : coordinate.x),\n            y: (inverted ? coordinate.x : coordinate.y),\n            z: coordinate.z\n        };\n    });\n}\n/**\n * Perspective3D function is available in global Highcharts scope because is\n * needed also outside of perspective() function (#8042).\n * @private\n * @function Highcharts.perspective3D\n *\n * @param {Highcharts.Position3DObject} coordinate\n * 3D position\n *\n * @param {Highcharts.Position3DObject} origin\n * 3D root position\n *\n * @param {number} distance\n * Perspective distance\n *\n * @return {Highcharts.PositionObject}\n * Perspective 3D Position\n *\n * @requires highcharts-3d\n */\nfunction perspective3D(coordinate, origin, distance) {\n    var projection = ((distance > 0) &&\n            (distance < Number.POSITIVE_INFINITY)) ?\n            distance / (coordinate.z + origin.z + distance) :\n            1;\n    return {\n        x: coordinate.x * projection,\n        y: coordinate.y * projection\n    };\n}\n/**\n * Calculate a distance from camera to points - made for calculating zIndex of\n * scatter points.\n *\n * @private\n * @function Highcharts.pointCameraDistance\n *\n * @param {Highcharts.Dictionary<number>} coordinates\n * Coordinates of the specific point\n *\n * @param {Highcharts.Chart} chart\n * Related chart\n *\n * @return {number}\n * Distance from camera to point\n *\n * @requires highcharts-3d\n */\nfunction pointCameraDistance(coordinates, chart) {\n    var options3d = chart.options.chart.options3d,\n        cameraPosition = {\n            x: chart.plotWidth / 2,\n            y: chart.plotHeight / 2,\n            z: pick(options3d.depth, 1) * pick(options3d.viewDistance, 0) +\n                options3d.depth\n        }, \n        // Added support for objects with plotX or x coordinates.\n        distance = Math.sqrt(Math.pow(cameraPosition.x - pick(coordinates.plotX,\n        coordinates.x), 2) +\n            Math.pow(cameraPosition.y - pick(coordinates.plotY,\n        coordinates.y), 2) +\n            Math.pow(cameraPosition.z - pick(coordinates.plotZ,\n        coordinates.z), 2));\n    return distance;\n}\n/**\n * Calculate area of a 2D polygon using Shoelace algorithm\n * https://en.wikipedia.org/wiki/Shoelace_formula\n *\n * @private\n * @function Highcharts.shapeArea\n *\n * @param {Array<Highcharts.PositionObject>} vertexes\n * 2D Polygon\n *\n * @return {number}\n * Calculated area\n *\n * @requires highcharts-3d\n */\nfunction shapeArea(vertexes) {\n    var area = 0,\n        i,\n        j;\n    for (i = 0; i < vertexes.length; i++) {\n        j = (i + 1) % vertexes.length;\n        area += vertexes[i].x * vertexes[j].y - vertexes[j].x * vertexes[i].y;\n    }\n    return area / 2;\n}\n/**\n * Calculate area of a 3D polygon after perspective projection\n *\n * @private\n * @function Highcharts.shapeArea3d\n *\n * @param {Array<Highcharts.Position3DObject>} vertexes\n * 3D Polygon\n *\n * @param {Highcharts.Chart} chart\n * Related chart\n *\n * @param {boolean} [insidePlotArea]\n * Whether to verify that the points are inside the plotArea\n *\n * @return {number}\n * Calculated area\n *\n * @requires highcharts-3d\n */\nfunction shapeArea3D(vertexes, chart, insidePlotArea) {\n    return shapeArea(perspective(vertexes, chart, insidePlotArea));\n}\n/* *\n *\n *  Default Export\n *\n * */\nvar Math3D = {\n    perspective: perspective,\n    perspective3D: perspective3D,\n    pointCameraDistance: pointCameraDistance,\n    shapeArea: shapeArea,\n    shapeArea3D: shapeArea3D\n};\n/* harmony default export */ var Core_Math3D = (Math3D);\n\n;// ./code/es5/es-modules/Series/Funnel3D/Funnel3DSeries.js\n/* *\n *\n *  Highcharts funnel3d series module\n *\n *  (c) 2010-2024 Highsoft AS\n *\n *  Author: Kacper Madej\n *\n *  License: www.highcharts.com/license\n *\n *  !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!\n *\n * */\n\nvar Funnel3DSeries_extends = (undefined && undefined.__extends) || (function () {\n    var extendStatics = function (d,\n        b) {\n            extendStatics = Object.setPrototypeOf ||\n                ({ __proto__: [] } instanceof Array && function (d,\n        b) { d.__proto__ = b; }) ||\n                function (d,\n        b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b,\n        p)) d[p] = b[p]; };\n        return extendStatics(d, b);\n    };\n    return function (d, b) {\n        if (typeof b !== \"function\" && b !== null)\n            throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n        extendStatics(d, b);\n        function __() { this.constructor = d; }\n        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n    };\n})();\n\n\n\n\nvar noop = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).noop;\n\nvar Funnel3DSeries_perspective = Core_Math3D.perspective;\n\nvar Series = (highcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_default()).series, Funnel3DSeries_ColumnSeries = (highcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_default()).seriesTypes.column;\n\nvar Funnel3DSeries_extend = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).extend, Funnel3DSeries_merge = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).merge, Funnel3DSeries_pick = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).pick, relativeLength = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).relativeLength;\n/* *\n *\n *  Class\n *\n * */\n/**\n * The funnel3d series type.\n *\n * @private\n * @class\n * @name Highcharts.seriesTypes.funnel3d\n * @augments seriesTypes.column\n * @requires highcharts-3d\n * @requires modules/cylinder\n * @requires modules/funnel3d\n */\nvar Funnel3DSeries = /** @class */ (function (_super) {\n    Funnel3DSeries_extends(Funnel3DSeries, _super);\n    function Funnel3DSeries() {\n        return _super !== null && _super.apply(this, arguments) || this;\n    }\n    /* *\n     *\n     *  Functions\n     *\n     * */\n    /**\n     * @private\n     */\n    Funnel3DSeries.prototype.alignDataLabel = function (point, _dataLabel, options) {\n        var series = this,\n            dlBoxRaw = point.dlBoxRaw,\n            inverted = series.chart.inverted,\n            below = point.plotY > Funnel3DSeries_pick(series.translatedThreshold,\n            series.yAxis.len),\n            inside = Funnel3DSeries_pick(options.inside, !!series.options.stacking),\n            dlBox = {\n                x: dlBoxRaw.x,\n                y: dlBoxRaw.y,\n                height: 0\n            };\n        options.align = Funnel3DSeries_pick(options.align, !inverted || inside ? 'center' : below ? 'right' : 'left');\n        options.verticalAlign = Funnel3DSeries_pick(options.verticalAlign, inverted || inside ? 'middle' : below ? 'top' : 'bottom');\n        if (options.verticalAlign !== 'top') {\n            dlBox.y += dlBoxRaw.bottom /\n                (options.verticalAlign === 'bottom' ? 1 : 2);\n        }\n        dlBox.width = series.getWidthAt(dlBox.y);\n        if (series.options.reversed) {\n            dlBox.width = dlBoxRaw.fullWidth - dlBox.width;\n        }\n        if (inside) {\n            dlBox.x -= dlBox.width / 2;\n        }\n        else {\n            // Swap for inside\n            if (options.align === 'left') {\n                options.align = 'right';\n                dlBox.x -= dlBox.width * 1.5;\n            }\n            else if (options.align === 'right') {\n                options.align = 'left';\n                dlBox.x += dlBox.width / 2;\n            }\n            else {\n                dlBox.x -= dlBox.width / 2;\n            }\n        }\n        point.dlBox = dlBox;\n        Funnel3DSeries_ColumnSeries.prototype.alignDataLabel.apply(series, arguments);\n    };\n    /**\n     * Override default axis options with series required options for axes.\n     * @private\n     */\n    Funnel3DSeries.prototype.bindAxes = function () {\n        Series.prototype.bindAxes.apply(this, arguments);\n        Funnel3DSeries_extend(this.xAxis.options, {\n            gridLineWidth: 0,\n            lineWidth: 0,\n            title: void 0,\n            tickPositions: []\n        });\n        Funnel3DSeries_merge(true, this.yAxis.options, {\n            gridLineWidth: 0,\n            title: void 0,\n            labels: {\n                enabled: false\n            }\n        });\n    };\n    /**\n     * @private\n     */\n    Funnel3DSeries.prototype.translate = function () {\n        Series.prototype.translate.apply(this, arguments);\n        var series = this,\n            chart = series.chart,\n            options = series.options,\n            reversed = options.reversed,\n            ignoreHiddenPoint = options.ignoreHiddenPoint,\n            plotWidth = chart.plotWidth,\n            plotHeight = chart.plotHeight,\n            center = options.center,\n            centerX = relativeLength(center[0],\n            plotWidth),\n            centerY = relativeLength(center[1],\n            plotHeight),\n            width = relativeLength(options.width,\n            plotWidth),\n            height = relativeLength(options.height,\n            plotHeight),\n            neckWidth = relativeLength(options.neckWidth,\n            plotWidth),\n            neckHeight = relativeLength(options.neckHeight,\n            plotHeight),\n            neckY = (centerY - height / 2) + height - neckHeight,\n            points = series.points;\n        var sum = 0,\n            cumulative = 0, // Start at top\n            tempWidth,\n            getWidthAt,\n            fraction,\n            tooltipPos, \n            //\n            y1,\n            y3,\n            y5, \n            //\n            h,\n            shapeArgs; // @todo: Type it. It's an extended SVGAttributes.\n            // Return the width at a specific y coordinate\n            series.getWidthAt = getWidthAt = function (y) {\n                var top = (centerY - height / 2);\n            return (y > neckY || height === neckHeight) ?\n                neckWidth :\n                neckWidth + (width - neckWidth) *\n                    (1 - (y - top) / (height - neckHeight));\n        };\n        // Expose\n        series.center = [centerX, centerY, height];\n        series.centerX = centerX;\n        /*\n            * Individual point coordinate naming:\n            *\n            *  _________centerX,y1________\n            *  \\                         /\n            *   \\                       /\n            *    \\                     /\n            *     \\                   /\n            *      \\                 /\n            *        ___centerX,y3___\n            *\n            * Additional for the base of the neck:\n            *\n            *       |               |\n            *       |               |\n            *       |               |\n            *        ___centerX,y5___\n            */\n        // get the total sum\n        for (var _i = 0, points_1 = points; _i < points_1.length; _i++) {\n            var point = points_1[_i];\n            if (!ignoreHiddenPoint || point.visible !== false) {\n                sum += point.y;\n            }\n        }\n        for (var _a = 0, points_2 = points; _a < points_2.length; _a++) {\n            var point = points_2[_a];\n            // Set start and end positions\n            y5 = null;\n            fraction = sum ? point.y / sum : 0;\n            y1 = centerY - height / 2 + cumulative * height;\n            y3 = y1 + fraction * height;\n            tempWidth = getWidthAt(y1);\n            h = y3 - y1;\n            shapeArgs = {\n                // For fill setter\n                gradientForSides: Funnel3DSeries_pick(point.options.gradientForSides, options.gradientForSides),\n                x: centerX,\n                y: y1,\n                height: h,\n                width: tempWidth,\n                z: 1,\n                top: {\n                    width: tempWidth\n                }\n            };\n            tempWidth = getWidthAt(y3);\n            shapeArgs.bottom = {\n                fraction: fraction,\n                width: tempWidth\n            };\n            // The entire point is within the neck\n            if (y1 >= neckY) {\n                shapeArgs.isCylinder = true;\n            }\n            else if (y3 > neckY) {\n                // The base of the neck\n                y5 = y3;\n                tempWidth = getWidthAt(neckY);\n                y3 = neckY;\n                shapeArgs.bottom.width = tempWidth;\n                shapeArgs.middle = {\n                    fraction: h ? (neckY - y1) / h : 0,\n                    width: tempWidth\n                };\n            }\n            if (reversed) {\n                shapeArgs.y = y1 = centerY + height / 2 -\n                    (cumulative + fraction) * height;\n                if (shapeArgs.middle) {\n                    shapeArgs.middle.fraction = 1 -\n                        (h ? shapeArgs.middle.fraction : 0);\n                }\n                tempWidth = shapeArgs.width;\n                shapeArgs.width = shapeArgs.bottom.width;\n                shapeArgs.bottom.width = tempWidth;\n            }\n            point.shapeArgs = Funnel3DSeries_extend(point.shapeArgs, shapeArgs);\n            // For tooltips and data labels context\n            point.percentage = fraction * 100;\n            point.plotX = centerX;\n            if (reversed) {\n                point.plotY = centerY + height / 2 -\n                    (cumulative + fraction / 2) * height;\n            }\n            else {\n                point.plotY = (y1 + (y5 || y3)) / 2;\n            }\n            // Placement of tooltips and data labels in 3D\n            tooltipPos = Funnel3DSeries_perspective([{\n                    x: centerX,\n                    y: point.plotY,\n                    z: reversed ?\n                        -(width - getWidthAt(point.plotY)) / 2 :\n                        -(getWidthAt(point.plotY)) / 2\n                }], chart, true)[0];\n            point.tooltipPos = [tooltipPos.x, tooltipPos.y];\n            // Base to be used when alignment options are known\n            point.dlBoxRaw = {\n                x: centerX,\n                width: getWidthAt(point.plotY),\n                y: y1,\n                bottom: shapeArgs.height || 0,\n                fullWidth: width\n            };\n            if (!ignoreHiddenPoint || point.visible !== false) {\n                cumulative += fraction;\n            }\n        }\n    };\n    /* *\n     *\n     *  Static Properties\n     *\n     * */\n    Funnel3DSeries.compose = Funnel3D_Funnel3DComposition.compose;\n    Funnel3DSeries.defaultOptions = Funnel3DSeries_merge(Funnel3DSeries_ColumnSeries.defaultOptions, Funnel3D_Funnel3DSeriesDefaults);\n    return Funnel3DSeries;\n}(Funnel3DSeries_ColumnSeries));\nFunnel3DSeries_extend(Funnel3DSeries.prototype, {\n    pointClass: Funnel3D_Funnel3DPoint,\n    translate3dShapes: noop\n});\nhighcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_default().registerSeriesType('funnel3d', Funnel3DSeries);\n/* *\n *\n *  Default Export\n *\n * */\n/* harmony default export */ var Funnel3D_Funnel3DSeries = (Funnel3DSeries);\n\n;// ./code/es5/es-modules/masters/modules/funnel3d.src.js\n\n\n\n\n\nFunnel3D_Funnel3DSeries.compose(highcharts_RendererRegistry_commonjs_highcharts_RendererRegistry_commonjs2_highcharts_RendererRegistry_root_Highcharts_RendererRegistry_default().getRendererType());\n/* harmony default export */ var funnel3d_src = ((highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()));\n\n__webpack_exports__ = __webpack_exports__[\"default\"];\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});"],"names":["root","factory","exports","module","require","define","amd","__WEBPACK_EXTERNAL_MODULE__944__","__WEBPACK_EXTERNAL_MODULE__620__","__WEBPACK_EXTERNAL_MODULE__608__","__WEBPACK_EXTERNAL_MODULE__512__","extendStatics","__webpack_modules__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","n","getter","__esModule","d","a","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","__webpack_exports__","funnel3d_src","highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_","highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default","highcharts_Color_commonjs_highcharts_Color_commonjs2_highcharts_Color_root_Highcharts_Color_","highcharts_Color_commonjs_highcharts_Color_commonjs2_highcharts_Color_root_Highcharts_Color_default","highcharts_RendererRegistry_commonjs_highcharts_RendererRegistry_commonjs2_highcharts_RendererRegistry_root_Highcharts_RendererRegistry_","highcharts_RendererRegistry_commonjs_highcharts_RendererRegistry_commonjs2_highcharts_RendererRegistry_root_Highcharts_RendererRegistry_default","__extends","b","setPrototypeOf","__proto__","Array","p","__","constructor","create","color","parse","charts","SVGElement3D","getRendererType","Element3D","merge","SVGElement3DFunnel","_super","_this","apply","arguments","mainParts","parts","sideGroups","sideParts","upperGroup","lowerGroup","pathType","opacitySetter","value","opacity","parseFloat","funnel3d","chart","renderer","chartIndex","filterId","index","singleSetterForParts","tagName","attributes","id","children","type","tableValues","_i","_a","length","groupName","attr","filter","styledMode","textContent","_b","_c","addClass","fillSetter","fill","fillColor","alpha","rgba","partsWithColor","top","brighten","bottom","linearGradient","radialGradient","gradientForSides","x1","x2","y1","y2","stops","sideGroupName","box","gradientBox","gradient","alteredGradient","x","width","y","height","partName","frontUpper","backUpper","rightUpper","frontLower","backLower","rightLower","_d","_e","gradBox","centerX","centerY","diameter","Math","min","_f","_g","setRadialReference","_h","_j","elem","part","element","grad","gradients","gradientUnits","adjustForGradient","bbox","topLeftEdge","Number","MAX_VALUE","bottomRightEdge","getBBox","max","zIndexSetter","finishedOnAdd","Element","onAdd","Funnel3DComposition_charts","error","extend","Funnel3DComposition_merge","rendererFunnel3d","shapeArgs","element3d","strokeAttrs","stroke","g","zIndex","add","upperElem","lowerElem","rendererFunnel3dPath","getCylinderEnd","useAlphaCorrection","alphaCorrection","abs","options","options3d","cuboidData","cuboidPath","depth","isTopFirst","isTop","isFrontFirst","isFront","hasMiddle","middle","z","bottomWidth","bottomArgs","middleWidth","middleTopArgs","middleTop","middleBottom","fraction","ret","getCylinderFront","zIndexes","group","getCylinderBack","SVGRendererClass","rendererProto","types","funnel3dPath","Funnel3D_Funnel3DSeriesDefaults","center","neckWidth","neckHeight","reversed","animation","edgeWidth","colorByPoint","showInLegend","dataLabels","align","crop","inside","overflow","highcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_","highcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_default","Funnel3DPoint_extends","TypeError","String","ColumnSeries","seriesTypes","column","Funnel3DPoint_extend","Funnel3DPoint","pointClass","shapeType","deg2rad","pick","Funnel3DSeries_extends","noop","Series","series","Funnel3DSeries_ColumnSeries","Funnel3DSeries_extend","Funnel3DSeries_merge","Funnel3DSeries_pick","relativeLength","Funnel3DSeries","alignDataLabel","point","_dataLabel","dlBoxRaw","inverted","below","plotY","translatedThreshold","yAxis","len","stacking","dlBox","verticalAlign","getWidthAt","fullWidth","bindAxes","xAxis","gridLineWidth","lineWidth","title","tickPositions","labels","enabled","translate","tempWidth","tooltipPos","y3","y5","h","ignoreHiddenPoint","plotWidth","plotHeight","neckY","points","sum","cumulative","points_1","visible","points_2","isCylinder","percentage","plotX","Funnel3DSeries_perspective","insidePlotArea","useInvertedPersp","origin","vd","viewDistance","scale","scale3d","beta","angles","cosA","cos","cosB","sinA","sin","sinB","plotLeft","plotTop","map","rotated","coordinate","perspective3D","distance","projection","POSITIVE_INFINITY","compose","defaultOptions","translate3dShapes","registerSeriesType","Funnel3D_Funnel3DSeries"],"mappings":"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"}

Hacked By AnonymousFox1.0, Coded By AnonymousFox