Hacked By AnonymousFox
{"version":3,"sources":["<anon>"],"sourcesContent":["/**\n * @license Highcharts JS v12.1.2 (2025-01-09)\n * @module highcharts/modules/windbarb\n * @requires highcharts\n *\n * Wind barb series module\n *\n * (c) 2010-2024 Torstein Honsi\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\")[\"dataGrouping\"][\"approximations\"], require(\"highcharts\")[\"Series\"][\"types\"][\"column\"], require(\"highcharts\")[\"Series\"], require(\"highcharts\")[\"SeriesRegistry\"]);\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"highcharts/modules/windbarb\", [[\"highcharts/highcharts\"], [\"highcharts/highcharts\",\"dataGrouping\",\"approximations\"], [\"highcharts/highcharts\",\"Series\",\"types\",\"column\"], [\"highcharts/highcharts\",\"Series\"], [\"highcharts/highcharts\",\"SeriesRegistry\"]], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"highcharts/modules/windbarb\"] = factory(require(\"highcharts\"), require(\"highcharts\")[\"dataGrouping\"][\"approximations\"], require(\"highcharts\")[\"Series\"][\"types\"][\"column\"], require(\"highcharts\")[\"Series\"], require(\"highcharts\")[\"SeriesRegistry\"]);\n\telse\n\t\troot[\"Highcharts\"] = factory(root[\"Highcharts\"], root[\"Highcharts\"][\"dataGrouping\"][\"approximations\"], root[\"Highcharts\"][\"Series\"][\"types\"][\"column\"], root[\"Highcharts\"][\"Series\"], root[\"Highcharts\"][\"SeriesRegistry\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE__944__, __WEBPACK_EXTERNAL_MODULE__956__, __WEBPACK_EXTERNAL_MODULE__448__, __WEBPACK_EXTERNAL_MODULE__820__, __WEBPACK_EXTERNAL_MODULE__512__) {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 448:\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__448__;\n\n/***/ }),\n\n/***/ 820:\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__820__;\n\n/***/ }),\n\n/***/ 512:\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__512__;\n\n/***/ }),\n\n/***/ 956:\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__956__;\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 */ windbarb_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\",\"dataGrouping\",\"approximations\"],\"commonjs\":[\"highcharts\",\"dataGrouping\",\"approximations\"],\"commonjs2\":[\"highcharts\",\"dataGrouping\",\"approximations\"],\"root\":[\"Highcharts\",\"dataGrouping\",\"approximations\"]}\nvar highcharts_dataGrouping_approximations_commonjs_highcharts_dataGrouping_approximations_commonjs2_highcharts_dataGrouping_approximations_root_Highcharts_dataGrouping_approximations_ = __webpack_require__(956);\nvar highcharts_dataGrouping_approximations_commonjs_highcharts_dataGrouping_approximations_commonjs2_highcharts_dataGrouping_approximations_root_Highcharts_dataGrouping_approximations_default = /*#__PURE__*/__webpack_require__.n(highcharts_dataGrouping_approximations_commonjs_highcharts_dataGrouping_approximations_commonjs2_highcharts_dataGrouping_approximations_root_Highcharts_dataGrouping_approximations_);\n// EXTERNAL MODULE: external {\"amd\":[\"highcharts/highcharts\",\"Series\",\"types\",\"column\"],\"commonjs\":[\"highcharts\",\"Series\",\"types\",\"column\"],\"commonjs2\":[\"highcharts\",\"Series\",\"types\",\"column\"],\"root\":[\"Highcharts\",\"Series\",\"types\",\"column\"]}\nvar highcharts_Series_types_column_commonjs_highcharts_Series_types_column_commonjs2_highcharts_Series_types_column_root_Highcharts_Series_types_column_ = __webpack_require__(448);\nvar highcharts_Series_types_column_commonjs_highcharts_Series_types_column_commonjs2_highcharts_Series_types_column_root_Highcharts_Series_types_column_default = /*#__PURE__*/__webpack_require__.n(highcharts_Series_types_column_commonjs_highcharts_Series_types_column_commonjs2_highcharts_Series_types_column_root_Highcharts_Series_types_column_);\n// EXTERNAL MODULE: external {\"amd\":[\"highcharts/highcharts\",\"Series\"],\"commonjs\":[\"highcharts\",\"Series\"],\"commonjs2\":[\"highcharts\",\"Series\"],\"root\":[\"Highcharts\",\"Series\"]}\nvar highcharts_Series_commonjs_highcharts_Series_commonjs2_highcharts_Series_root_Highcharts_Series_ = __webpack_require__(820);\nvar highcharts_Series_commonjs_highcharts_Series_commonjs2_highcharts_Series_root_Highcharts_Series_default = /*#__PURE__*/__webpack_require__.n(highcharts_Series_commonjs_highcharts_Series_commonjs2_highcharts_Series_root_Highcharts_Series_);\n;// ./code/es5/es-modules/Series/OnSeriesComposition.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\n\nvar composed = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).composed;\nvar columnProto = (highcharts_Series_types_column_commonjs_highcharts_Series_types_column_commonjs2_highcharts_Series_types_column_root_Highcharts_Series_types_column_default()).prototype;\n\nvar seriesProto = (highcharts_Series_commonjs_highcharts_Series_commonjs2_highcharts_Series_root_Highcharts_Series_default()).prototype;\n\nvar defined = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).defined, pushUnique = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).pushUnique, stableSort = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).stableSort;\n/* *\n *\n * Composition\n *\n * */\nvar OnSeriesComposition;\n(function (OnSeriesComposition) {\n /* *\n *\n * Declarations\n *\n * */\n /* *\n *\n * Functions\n *\n * */\n /**\n * @private\n */\n function compose(SeriesClass) {\n if (pushUnique(composed, 'OnSeries')) {\n var seriesProto_1 = SeriesClass.prototype;\n seriesProto_1.getPlotBox = getPlotBox;\n seriesProto_1.translate = translate;\n }\n return SeriesClass;\n }\n OnSeriesComposition.compose = compose;\n /**\n * Override getPlotBox. If the onSeries option is valid, return the plot box\n * of the onSeries, otherwise proceed as usual.\n *\n * @private\n */\n function getPlotBox(name) {\n return seriesProto.getPlotBox.call((this.options.onSeries &&\n this.chart.get(this.options.onSeries)) || this, name);\n }\n OnSeriesComposition.getPlotBox = getPlotBox;\n /**\n * Extend the translate method by placing the point on the related series\n *\n * @private\n */\n function translate() {\n var _a,\n _b;\n columnProto.translate.apply(this);\n var series = this,\n options = series.options,\n chart = series.chart,\n points = series.points,\n optionsOnSeries = options.onSeries,\n onSeries = (optionsOnSeries &&\n chart.get(optionsOnSeries)),\n step = onSeries && onSeries.options.step,\n onData = (onSeries && onSeries.points),\n inverted = chart.inverted,\n xAxis = series.xAxis,\n yAxis = series.yAxis;\n var cursor = points.length - 1,\n point,\n lastPoint,\n onKey = options.onKey || 'y',\n i = onData && onData.length,\n xOffset = 0,\n leftPoint,\n lastX,\n rightPoint,\n currentDataGrouping,\n distanceRatio;\n // Relate to a master series\n if (onSeries && onSeries.visible && i) {\n xOffset = (onSeries.pointXOffset || 0) + (onSeries.barW || 0) / 2;\n currentDataGrouping = onSeries.currentDataGrouping;\n lastX = (onData[i - 1].x +\n (currentDataGrouping ? currentDataGrouping.totalRange : 0)); // #2374\n // sort the data points\n stableSort(points, function (a, b) { return (a.x - b.x); });\n onKey = 'plot' + onKey[0].toUpperCase() + onKey.substr(1);\n var _loop_1 = function () {\n leftPoint = onData[i];\n point = points[cursor];\n point.y = leftPoint.y;\n if (leftPoint.x <= point.x &&\n typeof leftPoint[onKey] !== 'undefined') {\n if (point.x <= lastX) { // #803\n point.plotY = leftPoint[onKey];\n // Interpolate between points, #666\n if (leftPoint.x < point.x &&\n !step) {\n rightPoint = onData[i + 1];\n if (rightPoint &&\n typeof rightPoint[onKey] !== 'undefined') {\n // If the series is spline, calculate Y of the\n // point on the bezier line. #19264\n if (defined(point.plotX) &&\n onSeries.is('spline')) {\n leftPoint = leftPoint;\n rightPoint = rightPoint;\n var p0_1 = [\n leftPoint.plotX || 0,\n leftPoint.plotY || 0\n ],\n p3_1 = [\n rightPoint.plotX || 0,\n rightPoint.plotY || 0\n ],\n p1_1 = (((_a = leftPoint.controlPoints) === null || _a === void 0 ? void 0 : _a.high) ||\n p0_1),\n p2_1 = (((_b = rightPoint.controlPoints) === null || _b === void 0 ? void 0 : _b.low) ||\n p3_1),\n pixelThreshold = 0.25,\n maxIterations = 100,\n calculateCoord = function (t,\n key) { return (\n // The parametric formula for the\n // cubic Bezier curve.\n Math.pow(1 - t, 3) * p0_1[key] +\n 3 * (1 - t) * (1 - t) * t *\n p1_1[key] + 3 * (1 - t) * t * t *\n p2_1[key] + t * t * t * p3_1[key]); };\n var tMin = 0,\n tMax = 1,\n t = void 0;\n // Find `t` of the parametric function of\n // the bezier curve for the given `plotX`.\n for (var i_1 = 0; i_1 < maxIterations; i_1++) {\n var tMid = (tMin + tMax) / 2;\n var xMid = calculateCoord(tMid, 0);\n if (xMid === null) {\n break;\n }\n if (Math.abs(xMid - point.plotX) < pixelThreshold) {\n t = tMid;\n break;\n }\n if (xMid < point.plotX) {\n tMin = tMid;\n }\n else {\n tMax = tMid;\n }\n }\n if (defined(t)) {\n point.plotY =\n calculateCoord(t, 1);\n point.y =\n yAxis.toValue(point.plotY, true);\n }\n }\n else {\n // The distance ratio, between 0 and 1\n distanceRatio =\n (point.x - leftPoint.x) /\n (rightPoint.x - leftPoint.x);\n point.plotY +=\n distanceRatio *\n // The plotY distance\n (rightPoint[onKey] - leftPoint[onKey]);\n point.y +=\n distanceRatio *\n (rightPoint.y - leftPoint.y);\n }\n }\n }\n }\n cursor--;\n i++; // Check again for points in the same x position\n if (cursor < 0) {\n return \"break\";\n }\n }\n };\n while (i-- && points[cursor]) {\n var state_1 = _loop_1();\n if (state_1 === \"break\")\n break;\n }\n }\n // Add plotY position and handle stacking\n points.forEach(function (point, i) {\n var stackIndex;\n point.plotX += xOffset; // #2049\n // Undefined plotY means the point is either on axis, outside series\n // range or hidden series. If the series is outside the range of the\n // x axis it should fall through with an undefined plotY, but then\n // we must remove the shapeArgs (#847). For inverted charts, we need\n // to calculate position anyway, because series.invertGroups is not\n // defined\n if (typeof point.plotY === 'undefined' || inverted) {\n if (point.plotX >= 0 &&\n point.plotX <= xAxis.len) {\n // We're inside xAxis range\n if (inverted) {\n point.plotY = xAxis.translate(point.x, 0, 1, 0, 1);\n point.plotX = defined(point.y) ?\n yAxis.translate(point.y, 0, 0, 0, 1) :\n 0;\n }\n else {\n point.plotY = (xAxis.opposite ? 0 : series.yAxis.len) +\n xAxis.offset; // For the windbarb demo\n }\n }\n else {\n point.shapeArgs = {}; // 847\n }\n }\n // If multiple flags appear at the same x, order them into a stack\n lastPoint = points[i - 1];\n if (lastPoint && lastPoint.plotX === point.plotX) {\n if (typeof lastPoint.stackIndex === 'undefined') {\n lastPoint.stackIndex = 0;\n }\n stackIndex = lastPoint.stackIndex + 1;\n }\n point.stackIndex = stackIndex; // #3639\n });\n this.onSeries = onSeries;\n }\n OnSeriesComposition.translate = translate;\n})(OnSeriesComposition || (OnSeriesComposition = {}));\n/* *\n *\n * Default Export\n *\n * */\n/* harmony default export */ var Series_OnSeriesComposition = (OnSeriesComposition);\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/Windbarb/WindbarbPoint.js\n/* *\n *\n * Wind barb series module\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 * */\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\n\nvar isNumber = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).isNumber;\n/* *\n *\n * Class\n *\n * */\nvar WindbarbPoint = /** @class */ (function (_super) {\n __extends(WindbarbPoint, _super);\n function WindbarbPoint() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n /* *\n *\n * Functions\n *\n * */\n WindbarbPoint.prototype.isValid = function () {\n return isNumber(this.value) && this.value >= 0;\n };\n return WindbarbPoint;\n}((highcharts_Series_types_column_commonjs_highcharts_Series_types_column_commonjs2_highcharts_Series_types_column_root_Highcharts_Series_types_column_default()).prototype.pointClass));\n/* *\n *\n * Default Export\n *\n * */\n/* harmony default export */ var Windbarb_WindbarbPoint = (WindbarbPoint);\n\n;// ./code/es5/es-modules/Series/Windbarb/WindbarbSeriesDefaults.js\n/* *\n *\n * Wind barb series module\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/* *\n *\n * API Options\n *\n * */\n/**\n * Wind barbs are a convenient way to represent wind speed and direction in\n * one graphical form. Wind direction is given by the stem direction, and\n * wind speed by the number and shape of barbs.\n *\n * @sample {highcharts|highstock} highcharts/demo/windbarb-series/\n * Wind barb series\n *\n * @extends plotOptions.column\n * @excluding boostThreshold, marker, connectEnds, connectNulls,\n * cropThreshold, dashStyle, dragDrop, gapSize, gapUnit,\n * linecap, shadow, stacking, step, boostBlending\n * @since 6.0.0\n * @product highcharts highstock\n * @requires modules/windbarb\n * @optionparent plotOptions.windbarb\n */\nvar WindbarbSeriesDefaults = {\n /**\n * Data grouping options for the wind barbs. In Highcharts, this\n * requires the `modules/datagrouping.js` module to be loaded. In\n * Highcharts Stock, data grouping is included.\n *\n * @sample highcharts/plotoptions/windbarb-datagrouping\n * Wind barb with data grouping\n *\n * @since 7.1.0\n * @product highcharts highstock\n */\n dataGrouping: {\n /**\n * Whether to enable data grouping.\n *\n * @product highcharts highstock\n */\n enabled: true,\n /**\n * Approximation function for the data grouping. The default\n * returns an average of wind speed and a vector average direction\n * weighted by wind speed.\n *\n * @product highcharts highstock\n *\n * @type {string|Function}\n */\n approximation: 'windbarb',\n /**\n * The approximate data group width.\n *\n * @product highcharts highstock\n */\n groupPixelWidth: 30\n },\n /**\n * The line width of the wind barb symbols.\n */\n lineWidth: 2,\n /**\n * The id of another series in the chart that the wind barbs are\n * projected on. When `null`, the wind symbols are drawn on the X axis,\n * but offset up or down by the `yOffset` setting.\n *\n * @sample {highcharts|highstock} highcharts/plotoptions/windbarb-onseries\n * Projected on area series\n *\n * @type {string|null}\n */\n onSeries: null,\n states: {\n hover: {\n lineWidthPlus: 0\n }\n },\n tooltip: {\n /**\n * The default point format for the wind barb tooltip. Note the\n * `point.beaufort` property that refers to the Beaufort wind scale.\n * The names can be internationalized by modifying\n * `Highcharts.seriesTypes.windbarb.prototype.beaufortNames`.\n */\n pointFormat: '<span style=\"color:{point.color}\">\\u25CF</span> {series.name}: <b>{point.value}</b> ({point.beaufort})<br/>'\n },\n /**\n * Pixel length of the stems.\n */\n vectorLength: 20,\n /**\n * @default value\n */\n colorKey: 'value',\n /**\n * Vertical offset from the cartesian position, in pixels. The default\n * value makes sure the symbols don't overlap the X axis when `onSeries`\n * is `null`, and that they don't overlap the linked series when\n * `onSeries` is given.\n */\n yOffset: -20,\n /**\n * Horizontal offset from the cartesian position, in pixels. When the\n * chart is inverted, this option allows translation like\n * [yOffset](#plotOptions.windbarb.yOffset) in non inverted charts.\n *\n * @since 6.1.0\n */\n xOffset: 0\n};\n/**\n * A `windbarb` series. If the [type](#series.windbarb.type) option is not\n * specified, it is inherited from [chart.type](#chart.type).\n *\n * @extends series,plotOptions.windbarb\n * @excluding dataParser, dataURL, boostThreshold, boostBlending\n * @product highcharts highstock\n * @requires modules/windbarb\n * @apioption series.windbarb\n */\n/**\n * An array of data points for the series. For the `windbarb` series type,\n * points can be given in the following ways:\n *\n * 1. An array of arrays with 3 values. In this case, the values correspond to\n * `x,value,direction`. If the first value is a string, it is applied as the\n * name of the point, and the `x` value is inferred.\n * ```js\n * data: [\n * [Date.UTC(2017, 0, 1, 0), 3.3, 90],\n * [Date.UTC(2017, 0, 1, 1), 12.1, 180],\n * [Date.UTC(2017, 0, 1, 2), 11.1, 270]\n * ]\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\n * data points exceeds the series'\n * [turboThreshold](#series.area.turboThreshold), this option is not\n * available.\n * ```js\n * data: [{\n * x: Date.UTC(2017, 0, 1, 0),\n * value: 12.1,\n * direction: 90\n * }, {\n * x: Date.UTC(2017, 0, 1, 1),\n * value: 11.1,\n * direction: 270\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<Array<(number|string),number,number>|*>}\n * @extends series.line.data\n * @product highcharts highstock\n * @apioption series.windbarb.data\n */\n/**\n * The wind speed in meters per second.\n *\n * @type {number|null}\n * @product highcharts highstock\n * @apioption series.windbarb.data.value\n */\n/**\n * The wind direction in degrees, where 0 is north (pointing towards south).\n *\n * @type {number}\n * @product highcharts highstock\n * @apioption series.windbarb.data.direction\n */\n''; // Adds doclets above to transpiled file\n/* *\n *\n * Default Export\n *\n * */\n/* harmony default export */ var Windbarb_WindbarbSeriesDefaults = (WindbarbSeriesDefaults);\n\n;// ./code/es5/es-modules/Series/Windbarb/WindbarbSeries.js\n/* *\n *\n * Wind barb series module\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\nvar WindbarbSeries_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 animObject = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).animObject;\n\n\n\n\nvar ColumnSeries = (highcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_default()).seriesTypes.column;\n\nvar extend = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).extend, merge = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).merge, pick = (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).pick;\n\n\n/* *\n *\n * Functions\n *\n * */\n/**\n * Once off, register the windbarb approximation for data grouping. This can\n * be called anywhere (not necessarily in the translate function), but must\n * happen after the data grouping module is loaded and before the\n * wind barb series uses it.\n * @private\n */\nfunction registerApproximation() {\n if (!(highcharts_dataGrouping_approximations_commonjs_highcharts_dataGrouping_approximations_commonjs2_highcharts_dataGrouping_approximations_root_Highcharts_dataGrouping_approximations_default()).windbarb) {\n (highcharts_dataGrouping_approximations_commonjs_highcharts_dataGrouping_approximations_commonjs2_highcharts_dataGrouping_approximations_root_Highcharts_dataGrouping_approximations_default()).windbarb = function (values, directions) {\n var vectorX = 0,\n vectorY = 0;\n for (var i = 0, iEnd = values.length; i < iEnd; i++) {\n vectorX += values[i] * Math.cos(directions[i] * (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).deg2rad);\n vectorY += values[i] * Math.sin(directions[i] * (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).deg2rad);\n }\n return [\n // Wind speed\n values.reduce(function (sum, value) { return (sum + value); }, 0) / values.length,\n // Wind direction\n Math.atan2(vectorY, vectorX) / (highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default()).deg2rad\n ];\n };\n }\n}\n/* *\n *\n * Class\n *\n * */\n/**\n * @private\n * @class\n * @name Highcharts.seriesTypes.windbarb\n *\n * @augments Highcharts.Series\n */\nvar WindbarbSeries = /** @class */ (function (_super) {\n WindbarbSeries_extends(WindbarbSeries, _super);\n function WindbarbSeries() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n /* *\n *\n * Functions\n *\n * */\n WindbarbSeries.prototype.init = function (chart, options) {\n _super.prototype.init.call(this, chart, options);\n };\n // Get presentational attributes.\n WindbarbSeries.prototype.pointAttribs = function (point, state) {\n var options = this.options;\n var stroke = point.color || this.color,\n strokeWidth = this.options.lineWidth;\n if (state) {\n stroke = options.states[state].color || stroke;\n strokeWidth =\n (options.states[state].lineWidth || strokeWidth) +\n (options.states[state].lineWidthPlus || 0);\n }\n return {\n 'stroke': stroke,\n 'stroke-width': strokeWidth\n };\n };\n // Create a single wind arrow. It is later rotated around the zero\n // centerpoint.\n WindbarbSeries.prototype.windArrow = function (point) {\n var level = point.beaufortLevel,\n u = this.options.vectorLength / 20;\n var knots = point.value * 1.943844,\n barbs,\n pos = -10;\n if (point.isNull) {\n return [];\n }\n if (level === 0) {\n return this.chart.renderer.symbols.circle(-10 * u, -10 * u, 20 * u, 20 * u);\n }\n // The stem and the arrow head\n var path = [\n ['M', 0, 7 * u], // Base of arrow\n ['L', -1.5 * u, 7 * u],\n ['L', 0, 10 * u],\n ['L', 1.5 * u, 7 * u],\n ['L', 0, 7 * u],\n ['L', 0, -10 * u] // Top\n ];\n // For each full 50 knots, add a pennant\n barbs = (knots - knots % 50) / 50; // Pennants\n if (barbs > 0) {\n while (barbs--) {\n path.push(pos === -10 ? ['L', 0, pos * u] : ['M', 0, pos * u], ['L', 5 * u, pos * u + 2], ['L', 0, pos * u + 4]);\n // Substract from the rest and move position for next\n knots -= 50;\n pos += 7;\n }\n }\n // For each full 10 knots, add a full barb\n barbs = (knots - knots % 10) / 10;\n if (barbs > 0) {\n while (barbs--) {\n path.push(pos === -10 ? ['L', 0, pos * u] : ['M', 0, pos * u], ['L', 7 * u, pos * u]);\n knots -= 10;\n pos += 3;\n }\n }\n // For each full 5 knots, add a half barb\n barbs = (knots - knots % 5) / 5; // Half barbs\n if (barbs > 0) {\n while (barbs--) {\n path.push(pos === -10 ? ['L', 0, pos * u] : ['M', 0, pos * u], ['L', 4 * u, pos * u]);\n knots -= 5;\n pos += 3;\n }\n }\n return path;\n };\n WindbarbSeries.prototype.drawPoints = function () {\n var chart = this.chart,\n yAxis = this.yAxis,\n inverted = chart.inverted,\n shapeOffset = this.options.vectorLength / 2;\n for (var _i = 0, _a = this.points; _i < _a.length; _i++) {\n var point = _a[_i];\n var plotX = point.plotX,\n plotY = point.plotY;\n // Check if it's inside the plot area, but only for the X\n // dimension.\n if (this.options.clip === false ||\n chart.isInsidePlot(plotX, 0)) {\n // Create the graphic the first time\n if (!point.graphic) {\n point.graphic = this.chart.renderer\n .path()\n .add(this.markerGroup)\n .addClass('highcharts-point ' +\n 'highcharts-color-' +\n pick(point.colorIndex, point.series.colorIndex));\n }\n // Position the graphic\n point.graphic\n .attr({\n d: this.windArrow(point),\n translateX: plotX + this.options.xOffset,\n translateY: plotY + this.options.yOffset,\n rotation: point.direction\n });\n if (!this.chart.styledMode) {\n point.graphic\n .attr(this.pointAttribs(point));\n }\n }\n else if (point.graphic) {\n point.graphic = point.graphic.destroy();\n }\n // Set the tooltip anchor position\n point.tooltipPos = [\n plotX + this.options.xOffset +\n (inverted && !this.onSeries ? shapeOffset : 0),\n plotY + this.options.yOffset -\n (inverted ?\n 0 :\n shapeOffset + yAxis.pos - chart.plotTop)\n ]; // #6327\n }\n };\n // Fade in the arrows on initializing series.\n WindbarbSeries.prototype.animate = function (init) {\n if (init) {\n this.markerGroup.attr({\n opacity: 0.01\n });\n }\n else {\n this.markerGroup.animate({\n opacity: 1\n }, animObject(this.options.animation));\n }\n };\n WindbarbSeries.prototype.markerAttribs = function () {\n return {};\n };\n WindbarbSeries.prototype.getExtremes = function () {\n return {};\n };\n WindbarbSeries.prototype.shouldShowTooltip = function (plotX, plotY, options) {\n if (options === void 0) { options = {}; }\n options.ignoreX = this.chart.inverted;\n options.ignoreY = !options.ignoreX;\n return _super.prototype.shouldShowTooltip.call(this, plotX, plotY, options);\n };\n /* *\n *\n * Static Properties\n *\n * */\n WindbarbSeries.defaultOptions = merge(ColumnSeries.defaultOptions, Windbarb_WindbarbSeriesDefaults);\n return WindbarbSeries;\n}(ColumnSeries));\nSeries_OnSeriesComposition.compose(WindbarbSeries);\nextend(WindbarbSeries.prototype, {\n beaufortFloor: [\n 0, 0.3, 1.6, 3.4, 5.5, 8.0, 10.8, 13.9, 17.2, 20.8,\n 24.5, 28.5, 32.7\n ], // @todo dictionary with names?\n beaufortName: [\n 'Calm', 'Light air', 'Light breeze',\n 'Gentle breeze', 'Moderate breeze', 'Fresh breeze',\n 'Strong breeze', 'Near gale', 'Gale', 'Strong gale', 'Storm',\n 'Violent storm', 'Hurricane'\n ],\n invertible: false,\n parallelArrays: ['x', 'value', 'direction'],\n pointArrayMap: ['value', 'direction'],\n pointClass: Windbarb_WindbarbPoint,\n trackerGroups: ['markerGroup'],\n translate: function () {\n var beaufortFloor = this.beaufortFloor,\n beaufortName = this.beaufortName;\n Series_OnSeriesComposition.translate.call(this);\n for (var _i = 0, _a = this.points; _i < _a.length; _i++) {\n var point = _a[_i];\n var level = 0;\n // Find the beaufort level (zero based)\n for (; level < beaufortFloor.length; level++) {\n if (beaufortFloor[level] > point.value) {\n break;\n }\n }\n point.beaufortLevel = level - 1;\n point.beaufort = beaufortName[level - 1];\n }\n }\n});\nhighcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_default().registerSeriesType('windbarb', WindbarbSeries);\nregisterApproximation();\n/* *\n *\n * Default Export\n *\n * */\n/* harmony default export */ var Windbarb_WindbarbSeries = ((/* unused pure expression or super */ null && (WindbarbSeries)));\n\n;// ./code/es5/es-modules/masters/modules/windbarb.src.js\n\n\n\n\n/* harmony default export */ var windbarb_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__956__","__WEBPACK_EXTERNAL_MODULE__448__","__WEBPACK_EXTERNAL_MODULE__820__","__WEBPACK_EXTERNAL_MODULE__512__","extendStatics","OnSeriesComposition","__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__","windbarb_src","highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_","highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_default","highcharts_dataGrouping_approximations_commonjs_highcharts_dataGrouping_approximations_commonjs2_highcharts_dataGrouping_approximations_root_Highcharts_dataGrouping_approximations_","highcharts_dataGrouping_approximations_commonjs_highcharts_dataGrouping_approximations_commonjs2_highcharts_dataGrouping_approximations_root_Highcharts_dataGrouping_approximations_default","highcharts_Series_types_column_commonjs_highcharts_Series_types_column_commonjs2_highcharts_Series_types_column_root_Highcharts_Series_types_column_","highcharts_Series_types_column_commonjs_highcharts_Series_types_column_commonjs2_highcharts_Series_types_column_root_Highcharts_Series_types_column_default","highcharts_Series_commonjs_highcharts_Series_commonjs2_highcharts_Series_root_Highcharts_Series_","highcharts_Series_commonjs_highcharts_Series_commonjs2_highcharts_Series_root_Highcharts_Series_default","composed","columnProto","seriesProto","defined","pushUnique","stableSort","getPlotBox","name","options","onSeries","chart","translate","apply","_a","_b","point","lastPoint","leftPoint","lastX","rightPoint","currentDataGrouping","distanceRatio","series","points","optionsOnSeries","step","onData","inverted","xAxis","yAxis","cursor","length","onKey","i","xOffset","visible","pointXOffset","barW","x","totalRange","b","toUpperCase","substr","state_1","_loop_1","y","plotY","plotX","is","p0_1","p3_1","p1_1","controlPoints","high","p2_1","low","calculateCoord","t","Math","pow","tMin","tMax","i_1","tMid","xMid","abs","toValue","forEach","stackIndex","len","opposite","offset","shapeArgs","compose","SeriesClass","seriesProto_1","Series_OnSeriesComposition","highcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_","highcharts_SeriesRegistry_commonjs_highcharts_SeriesRegistry_commonjs2_highcharts_SeriesRegistry_root_Highcharts_SeriesRegistry_default","__extends","setPrototypeOf","__proto__","Array","p","__","constructor","create","isNumber","WindbarbPoint","_super","arguments","isValid","value","pointClass","Windbarb_WindbarbSeriesDefaults","dataGrouping","enabled","approximation","groupPixelWidth","lineWidth","states","hover","lineWidthPlus","tooltip","pointFormat","vectorLength","colorKey","yOffset","WindbarbSeries_extends","TypeError","String","animObject","ColumnSeries","seriesTypes","column","extend","merge","pick","WindbarbSeries","init","pointAttribs","state","stroke","color","strokeWidth","windArrow","barbs","level","beaufortLevel","u","knots","pos","isNull","renderer","symbols","circle","path","push","drawPoints","shapeOffset","_i","clip","isInsidePlot","graphic","add","markerGroup","addClass","colorIndex","attr","translateX","translateY","rotation","direction","styledMode","destroy","tooltipPos","plotTop","animate","opacity","animation","markerAttribs","getExtremes","shouldShowTooltip","ignoreX","ignoreY","defaultOptions","beaufortFloor","beaufortName","invertible","parallelArrays","pointArrayMap","trackerGroups","beaufort","registerSeriesType","windbarb","values","directions","vectorX","vectorY","iEnd","cos","deg2rad","sin","reduce","sum","atan2"],"mappings":"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"}
Hacked By AnonymousFox1.0, Coded By AnonymousFox