@tsingroc/tsingroc-components 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bundle.js CHANGED
@@ -11073,7 +11073,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
11073
11073
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11074
11074
 
11075
11075
  "use strict";
11076
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BoxplotEchart: () => (/* binding */ BoxplotEchart),\n/* harmony export */ CircularProgress: () => (/* binding */ CircularProgress),\n/* harmony export */ EchartJustOneLine: () => (/* binding */ EchartJustOneLine),\n/* harmony export */ EchartMult: () => (/* binding */ EchartMult),\n/* harmony export */ ImageBac: () => (/* binding */ ImageBac),\n/* harmony export */ RadarEchart: () => (/* binding */ RadarEchart),\n/* harmony export */ RiskEchartMult: () => (/* binding */ RiskEchartMult),\n/* harmony export */ TsingrocDatePick: () => (/* binding */ TsingrocDatePick),\n/* harmony export */ TsingrocMonthPick: () => (/* binding */ TsingrocMonthPick),\n/* harmony export */ TsingrocPie: () => (/* binding */ TsingrocPie),\n/* harmony export */ WindFlow: () => (/* binding */ WindFlow)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var dayjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! dayjs */ \"./node_modules/dayjs/dayjs.min.js\");\n/* harmony import */ var dayjs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(dayjs__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var echarts_for_react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! echarts-for-react */ \"./node_modules/echarts-for-react/esm/index.js\");\n/* harmony import */ var echarts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! echarts */ \"./node_modules/echarts/index.js\");\n/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @ant-design/icons */ \"./node_modules/@ant-design/icons/es/icons/LeftOutlined.js\");\n/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @ant-design/icons */ \"./node_modules/@ant-design/icons/es/icons/RightOutlined.js\");\n/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! antd */ \"./node_modules/antd/es/date-picker/index.js\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _iterableToArrayLimit(r, l) { var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }\nfunction _arrayWithHoles(r) { if (Array.isArray(r)) return r; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(r, a) { if (r) { if (\"string\" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }\nfunction _iterableToArray(r) { if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r); }\nfunction _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }\nfunction _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }\n\n\n\n\n\n\n\n// 带风险区间的折线图\nvar RiskEchartMult = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().memo(function EchartMult(props) {\n var l = localStorage.getItem(\"lang\");\n var riskArr = props.riskArr,\n max = props.max,\n propsX = props.x,\n yArr = props.yArr,\n nameArr = props.nameArr,\n notFormat = props.notFormat,\n nofoot = props.nofoot,\n step = props.step,\n _props$h = props.h,\n h = _props$h === void 0 ? \"350px\" : _props$h,\n _props$w = props.w,\n w = _props$w === void 0 ? \"100%\" : _props$w,\n noDiff = props.noDiff,\n addMaxBar = props.addMaxBar,\n _props$echartColorArr = props.echartColorArr,\n echartColorArr = _props$echartColorArr === void 0 ? [\"#2FDAFF\", \"#77DA9B\", \"#FFB82E\", \"#5470c6\", \"#91cc75\", \"#fac858\", \"#ee6666\", \"#73c0de\", \"#3ba272\", \"#fc8452\", \"#9a60b4\", \"#ea7ccc\"] : _props$echartColorArr,\n _props$areaStyle = props.areaStyle,\n areaStyle = _props$areaStyle === void 0 ? ['rgba(47,218,255 ,0.3)', 'rgba(119,218,155,0.3)', 'rgba(255,184,46,0.3)'] : _props$areaStyle,\n _props$yAxis = props.yAxis,\n yAxis = _props$yAxis === void 0 ? \"功率(MW)\" : _props$yAxis,\n barColor = props.barColor,\n legendLeft = props.legendLeft,\n _props$unit = props.unit,\n unit = _props$unit === void 0 ? \"MW\" : _props$unit,\n specialLine = props.specialLine,\n pickLine = props.pickLine,\n type = props.type;\n var xTemp = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {\n return new Array(24).fill(0).map(function (item, index) {\n var time = (index + 1).toString().padStart(2, \"0\");\n return time + \":00\";\n });\n }, []);\n var x = [];\n if (!propsX) {\n x = xTemp;\n } else {\n x = propsX;\n }\n // 获取最大值,构建bar\n var option = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {\n var barArr = [];\n if (Array.isArray(yArr) && yArr.length > 0 && addMaxBar) {\n var length = yArr[0].length;\n for (var i = 0; i < length; i++) {\n var _max = -Infinity;\n var tempIndex = -1;\n var secendLoopLength = yArr.length;\n for (var j = 0; j < secendLoopLength; j++) {\n if (yArr[j][i] > _max) {\n _max = yArr[j][i];\n tempIndex = j;\n }\n }\n barArr.push({\n value: _max,\n itemStyle: {\n color: barColor[tempIndex]\n }\n });\n }\n }\n var option = {\n grid: {\n top: \"30\",\n left: \"40\",\n right: \"40\",\n bottom: \"20\",\n containLabel: true\n },\n xAxis: {\n type: \"category\",\n show: !nofoot,\n data: notFormat ? x.map(function (item) {\n return new (dayjs__WEBPACK_IMPORTED_MODULE_1___default())(item).format(\"HH:mm\");\n }) : x\n },\n yAxis: [{\n max: max,\n name: yAxis,\n nameGap: 10,\n position: \"left\",\n nameTextStyle: {\n align: \"center\",\n fontWeight: \"bold\"\n },\n type: \"value\",\n splitLine: {\n lineStyle: {\n color: \"rgba(130, 144, 157, 0.18)\"\n }\n },\n splitNumber: 3\n }, {\n type: \"value\",\n splitLine: {\n lineStyle: {\n color: \"#DCDEE0\"\n }\n },\n splitNumber: 3\n }],\n legend: {\n data: [].concat(_toConsumableArray(nameArr), ['风险区间']).map(function (item, index) {\n return {\n name: item,\n itemStyle: {\n color: item === '风险区间' ? 'rgba(99,211,149,0.8)' : echartColorArr[index]\n },\n icon: item === \"实际\" ? \"path://M304.43 532.76H221.4c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h83.03c11.47 0 20.76 9.3 20.76 20.76s-9.29 20.76-20.76 20.76zM581.19 532.76H442.81c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h138.38c11.47 0 20.76 9.3 20.76 20.76s-9.3 20.76-20.76 20.76zM802.59 532.76h-83.03c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h83.03c11.47 0 20.76 9.3 20.76 20.76s-9.29 20.76-20.76 20.76z\" : \"rect\"\n };\n }),\n textStyle: {\n color: \"#646566\"\n },\n left: legendLeft,\n right: \"20\"\n // formatter: (name) => {\n // return shark(name,l)\n // }\n },\n color: echartColorArr,\n tooltip: {\n trigger: \"axis\",\n valueFormatter: function valueFormatter(value) {\n return value ? value.toFixed(2) + unit : value === 0 ? 0 + unit : \"\";\n }\n },\n series: yArr === null || yArr === void 0 ? void 0 : yArr.map(function (item, index) {\n return {\n data: item === null || item === void 0 ? void 0 : item.map(function (i) {\n return typeof i === \"number\" ? i : undefined;\n }),\n type: type || \"line\",\n smooth: true,\n name: nameArr[index],\n lineStyle: {\n // type: noDiff ? \"solid\" : index === 0 ? \"dashed\" : \"solid\",\n type: specialLine ? nameArr[index] === pickLine ? 'solid' : \"dashed\" : \"solid\",\n color: echartColorArr[index]\n },\n step: step || \"\",\n symbol: \"none\",\n emphasis: {\n itemStyle: {\n color: \"red\"\n }\n }\n // areaStyle:{\n // color:areaStyle[index]\n // }\n };\n }).concat(addMaxBar ? [{\n data: barArr,\n type: \"bar\",\n name: \"max\",\n barWidth: \"101%\",\n yAxisIndex: 1,\n tooltip: {\n show: false\n }\n }] : [])\n };\n if (riskArr && riskArr.length > 0 && riskArr[0]) {\n option.series.push({\n data: riskArr[1],\n type: 'line',\n name: \"风险上边界\",\n smooth: true,\n showSymbol: false,\n tooltip: {\n show: true\n },\n lineStyle: {\n opacity: 0\n }\n }, {\n yAxisIndex: 0,\n data: riskArr[0],\n type: 'line',\n name: \"风险下边界\",\n smooth: true,\n stack: 'st',\n showSymbol: false,\n lineStyle: {\n opacity: 0\n },\n tooltip: {\n show: true\n },\n emphasis: {\n disabled: true\n }\n }, {\n yAxisIndex: 0,\n name: '风险区间',\n stack: 'st',\n stackStrategy: \"all\",\n data: riskArr[1].map(function (item, index) {\n return riskArr[1][index] - riskArr[0][index];\n }),\n type: 'line',\n smooth: true,\n symbol: \"none\",\n lineStyle: {\n opacity: 0\n },\n areaStyle: {\n color: \"#63D395\"\n },\n emphasis: {\n disabled: true\n },\n tooltip: {\n show: false\n }\n });\n }\n return option;\n }, [echartColorArr, addMaxBar, x, yArr, nameArr, noDiff, nofoot, step, yAxis, notFormat, barColor, riskArr]);\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n if (echartRef.current) {\n var ins = echartRef.current.getEchartsInstance();\n }\n }, [x, yArr, nameArr, riskArr, option]);\n var onEvents = {\n \" click\": function _click() {}\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: w\n },\n onEvents: onEvents\n });\n});\n\n// 折线图\nvar EchartMult = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().memo(function EchartMult(props) {\n var l = localStorage.getItem(\"lang\");\n var max = props.max,\n propsX = props.x,\n yArr = props.yArr,\n nameArr = props.nameArr,\n notFormat = props.notFormat,\n nofoot = props.nofoot,\n step = props.step,\n _props$h2 = props.h,\n h = _props$h2 === void 0 ? \"350px\" : _props$h2,\n _props$w2 = props.w,\n w = _props$w2 === void 0 ? \"100%\" : _props$w2,\n _props$left = props.left,\n left = _props$left === void 0 ? 30 : _props$left,\n _props$right = props.right,\n right = _props$right === void 0 ? 40 : _props$right,\n noDiff = props.noDiff,\n addMaxBar = props.addMaxBar,\n _props$barWidth = props.barWidth,\n barWidth = _props$barWidth === void 0 ? '15px' : _props$barWidth,\n barLinearGradientArr = props.barLinearGradientArr,\n _props$echartColorArr2 = props.echartColorArr,\n echartColorArr = _props$echartColorArr2 === void 0 ? [\"#2FDAFF\", \"#77DA9B\", \"#FFB82E\", \"#5470c6\", \"#91cc75\", \"#fac858\", \"#ee6666\", \"#73c0de\", \"#3ba272\", \"#fc8452\", \"#9a60b4\", \"#ea7ccc\"] : _props$echartColorArr2,\n _props$areaStyle2 = props.areaStyle,\n areaStyle = _props$areaStyle2 === void 0 ? ['rgba(47,218,255 ,0.3)', 'rgba(119,218,155,0.3)', 'rgba(255,184,46,0.3)'] : _props$areaStyle2,\n _props$yAxis2 = props.yAxis,\n yAxis = _props$yAxis2 === void 0 ? \"功率(MW)\" : _props$yAxis2,\n barColor = props.barColor,\n legendLeft = props.legendLeft,\n _props$unit2 = props.unit,\n unit = _props$unit2 === void 0 ? \"MW\" : _props$unit2,\n specialLine = props.specialLine,\n pickLine = props.pickLine,\n type = props.type;\n if (barLinearGradientArr) {\n echartColorArr[0] = barLinearGradientArr[1];\n }\n var xTemp = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {\n return new Array(24).fill(0).map(function (item, index) {\n var time = (index + 1).toString().padStart(2, \"0\");\n return time + \":00\";\n });\n }, []);\n var x = [];\n if (!propsX) {\n x = xTemp;\n } else {\n x = propsX;\n }\n // 获取最大值,构建bar\n var option = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {\n var barArr = [];\n if (Array.isArray(yArr) && yArr.length > 0 && addMaxBar) {\n var length = yArr[0].length;\n for (var i = 0; i < length; i++) {\n var _max2 = -Infinity;\n var tempIndex = -1;\n var secendLoopLength = yArr.length;\n for (var j = 0; j < secendLoopLength; j++) {\n if (yArr[j][i] > _max2) {\n _max2 = yArr[j][i];\n tempIndex = j;\n }\n }\n barArr.push({\n value: _max2,\n itemStyle: {\n color: barColor[tempIndex]\n }\n });\n }\n }\n var option = {\n grid: {\n top: \"30\",\n left: left,\n right: right,\n bottom: \"20\",\n containLabel: true\n },\n xAxis: {\n type: \"category\",\n // axisLabel: {\n // interval: 0 // 强制显示所有x轴标签\n // },\n show: !nofoot,\n data: notFormat ? x.map(function (item) {\n return new (dayjs__WEBPACK_IMPORTED_MODULE_1___default())(item).format(\"HH:mm\");\n }) : x\n },\n yAxis: [{\n max: max,\n name: yAxis,\n nameGap: 10,\n position: \"left\",\n nameTextStyle: {\n align: \"center\",\n fontWeight: \"bold\"\n },\n type: \"value\",\n splitLine: {\n lineStyle: {\n color: \"rgba(130, 144, 157, 0.18)\"\n }\n },\n splitNumber: 3\n }, {\n type: \"value\",\n splitLine: {\n lineStyle: {\n color: \"#DCDEE0\"\n }\n },\n splitNumber: 3\n }],\n legend: {\n data: nameArr.map(function (item, index) {\n return {\n name: item,\n itemStyle: {\n color: echartColorArr[index]\n },\n icon: item === \"实际\" ? \"path://M304.43 532.76H221.4c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h83.03c11.47 0 20.76 9.3 20.76 20.76s-9.29 20.76-20.76 20.76zM581.19 532.76H442.81c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h138.38c11.47 0 20.76 9.3 20.76 20.76s-9.3 20.76-20.76 20.76zM802.59 532.76h-83.03c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h83.03c11.47 0 20.76 9.3 20.76 20.76s-9.29 20.76-20.76 20.76z\" : \"rect\"\n };\n }),\n textStyle: {\n // color: \"#646566\",\n color: '#fff'\n },\n left: legendLeft,\n right: \"20\"\n // formatter: (name) => {\n // return shark(name,l)\n // }\n },\n color: echartColorArr,\n tooltip: {\n trigger: \"axis\",\n valueFormatter: function valueFormatter(value) {\n return value ? value.toFixed(2) + unit : value === 0 ? 0 + unit : \"\";\n }\n },\n series: yArr === null || yArr === void 0 ? void 0 : yArr.map(function (item, index) {\n return {\n data: item === null || item === void 0 ? void 0 : item.map(function (i) {\n return typeof i === \"number\" ? i : undefined;\n }),\n type: type || \"line\",\n smooth: true,\n name: nameArr[index],\n lineStyle: {\n // type: noDiff ? \"solid\" : index === 0 ? \"dashed\" : \"solid\",\n type: specialLine ? nameArr[index] === pickLine ? 'solid' : \"dashed\" : \"solid\",\n color: echartColorArr[index]\n },\n step: step || \"\",\n symbol: \"none\",\n emphasis: {\n itemStyle: {\n color: \"red\"\n }\n },\n areaStyle: areaStyle ? {\n color: areaStyle[index]\n } : null,\n barWidth: barWidth,\n itemStyle: barLinearGradientArr ? {\n barBorderRadius: [3, 3, 0, 0],\n color: new echarts__WEBPACK_IMPORTED_MODULE_3__.graphic.LinearGradient(0, 0, 0, 1, [{\n offset: 0,\n color: barLinearGradientArr[1]\n }, {\n offset: 1,\n color: barLinearGradientArr[0]\n }])\n } : {}\n };\n }).concat(addMaxBar ? [{\n data: barArr,\n type: \"bar\",\n name: \"max\",\n barWidth: \"101%\",\n yAxisIndex: 1,\n tooltip: {\n show: false\n }\n }] : [])\n };\n return option;\n }, [echartColorArr, addMaxBar, x, yArr, nameArr, noDiff, nofoot, step, yAxis, notFormat, barColor]);\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n if (echartRef.current) {\n var ins = echartRef.current.getEchartsInstance();\n ins.setOption(_objectSpread(_objectSpread({}, ins.getOption()), {}, {\n series: ins.getOption().series.filter(function (item) {\n return [].concat(_toConsumableArray(nameArr), [\"max\"]).includes(item.name);\n })\n }), true, true);\n }\n }, [x, yArr, nameArr]);\n var onEvents = {\n \" click\": function _click() {}\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: w\n },\n onEvents: onEvents\n });\n});\n\n// 待快速跳转的日,周,月 选择器\nfunction TsingrocDatePick(props) {\n var value = props.value,\n propsOnChange = props.onChange,\n _props$dataType = props.dataType,\n dataType = _props$dataType === void 0 ? 'month' : _props$dataType,\n className = props.className,\n popupClassName = props.popupClassName;\n var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(value),\n _useState2 = _slicedToArray(_useState, 2),\n dateValue = _useState2[0],\n setDateValue = _useState2[1];\n var quickGo = function quickGo(type) {\n var temp = dateValue.add(type, dataType);\n setDateValue(temp);\n propsOnChange && propsOnChange(temp);\n };\n var onChange = function onChange(value) {\n setDateValue(value);\n propsOnChange && propsOnChange(value);\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n onClick: function onClick() {\n quickGo(-1);\n },\n className: \"quick-jump \".concat(className),\n style: {\n borderRight: 'none',\n borderRadius: '2px 0 0 2px'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n className: \"quick-icon\"\n })), dataType === 'day' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n value: dateValue,\n onChange: onChange\n }), dataType === 'week' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n value: dateValue,\n onChange: onChange,\n picker: \"week\"\n }), dataType === 'month' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n popupClassName: popupClassName,\n className: className,\n value: dateValue,\n onChange: onChange,\n picker: \"month\"\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n onClick: function onClick() {\n quickGo(1);\n },\n className: \"quick-jump \".concat(className),\n style: {\n borderLeft: 'none',\n borderRadius: '0 2px 2px 0'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n className: \"quick-icon\"\n })));\n}\n// 雷达图\nfunction RadarEchart(props) {\n var _props$h3 = props.h,\n h = _props$h3 === void 0 ? '100px' : _props$h3,\n _props$x = props.x,\n x = _props$x === void 0 ? [] : _props$x,\n yAxis = props.yAxis,\n _props$arr = props.arr,\n arr = _props$arr === void 0 ? [] : _props$arr,\n _props$value = props.value,\n value = _props$value === void 0 ? [] : _props$value;\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n var option = {\n // grid: {\n // top: \"20%\",\n // left: \"40\",\n // right: \"40\",\n // containLabel: true,\n // },\n radar: {\n indicator: arr.map(function (item, key) {\n return {\n name: item,\n max: 1\n };\n }),\n // indicator: [\n // { name: 'Sales', max: 6500 },\n // { name: 'Administration', max: 16000 },\n // { name: 'Information Technology', max: 30000 },\n // { name: 'Customer Support', max: 38000 },\n // ],\n radius: '60%',\n splitArea: {\n areaStyle: {\n color: 'rgba(119, 218, 155, 0)' // 设置分隔区域颜色为渐变色\n }\n },\n splitLine: {\n lineStyle: {\n color: 'rgba(64, 175, 239, 0.15)'\n }\n },\n axisLine: {\n // show: false,\n lineStyle: {\n \"with\": 1,\n color: \"rgba(130, 144, 157, 0.18)\"\n }\n },\n axisName: {\n show: true,\n color: \"#9FC7DD\"\n }\n },\n series: [{\n name: 'Budget vs spending',\n type: 'radar',\n data: [{\n value: value,\n name: 'Actual Spending'\n }],\n lineStyle: {\n normal: {\n color: '#77DA9B' // 设置线条颜色为橙色,透明度为0.5\n }\n },\n areaStyle: {\n color: 'rgba(119, 218, 155, 0.3)'\n },\n symbol: \"none\"\n }]\n };\n var onEvents = function onEvents() {};\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: \"100%\"\n },\n onEvents: onEvents\n });\n}\n// 饼图\nfunction TsingrocPie(props) {\n var _props$name = props.name,\n name = _props$name === void 0 ? \"饼图\" : _props$name,\n _props$valueArr = props.valueArr,\n valueArr = _props$valueArr === void 0 ? [{\n value: 735,\n name: 'Search Engine'\n }, {\n value: 735,\n name: 'Direct'\n }, {\n value: 735,\n name: 'Email'\n }, {\n value: 735,\n name: 'Union Ads'\n }, {\n value: 735,\n name: 'Video Ads'\n }] : _props$valueArr,\n _props$color = props.color,\n color = _props$color === void 0 ? [\"#ECA926\", \"#32ADF4\", \"#DC7756\", '#62CE89', '#4256B9', '#00D0FF', '#96D0DD'] : _props$color;\n var option = {\n color: color,\n tooltip: {\n trigger: 'item'\n },\n legend: {\n top: '5%',\n left: 'center',\n show: false\n },\n series: [{\n name: name,\n type: 'pie',\n radius: ['40%', '70%'],\n avoidLabelOverlap: false,\n padAngle: 2,\n itemStyle: {\n borderRadius: 1\n },\n label: {\n show: false,\n position: 'center'\n },\n emphasis: {\n label: {\n show: true,\n fontSize: 16,\n fontWeight: 'bold'\n }\n },\n labelLine: {\n show: false\n },\n data: valueArr\n }]\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n height: \"100%\"\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n display: 'flex',\n height: \"100%\"\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n flex: 3\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n style: {\n height: '100%'\n },\n option: option\n })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n flex: 2,\n display: \"flex\",\n alignItems: 'center'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {}\n }, valueArr.map(function (item, key) {\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n key: key,\n style: {\n fontSize: '14px',\n lineHeight: \"20px\"\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n display: 'inline-block',\n width: '6px',\n height: '6px',\n backgroundColor: color[key],\n marginRight: \"5px\",\n transform: \"translateY(-1px)\"\n }\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Space, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n color: \"#96A9BA\"\n }\n }, item.name, \":\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n color: '#fff'\n }\n }, item.value)));\n })))));\n}\n// 环形统计图\nvar CircularProgress = function CircularProgress(_ref) {\n var progress = _ref.progress,\n _ref$color = _ref.color,\n color = _ref$color === void 0 ? \"#34A9D4\" : _ref$color;\n // 确保进度值在0到100之间\n var clampProgress = function clampProgress(value) {\n return Math.max(0, Math.min(100, value));\n };\n\n // 计算圆的周长\n var circumference = 2 * Math.PI * 15.91549430918954;\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n width: \"100%\",\n height: \"100%\",\n position: 'relative'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"svg\", {\n width: \"100%\",\n height: \"100%\",\n viewBox: \"0 0 42 42\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"circle\", {\n className: \"circle\",\n cx: \"21\",\n cy: \"21\",\n r: \"15.91549430918954\",\n stroke: \"#22405a\",\n strokeWidth: \"3\",\n fill: \"none\"\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"circle\", {\n className: \"circle\",\n cx: \"21\",\n cy: \"21\",\n r: \"15.91549430918954\",\n stroke: color\n // stroke=\"#ff0\"\n ,\n strokeWidth: \"3\",\n fill: \"none\",\n strokeDasharray: circumference,\n strokeDashoffset: circumference - clampProgress(progress) / 100 * circumference\n })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n position: \"absolute\",\n top: '50%',\n transform: 'translateY(-50%)',\n textAlign: \"center\",\n width: \"100%\"\n }\n }, clampProgress(progress), \"%\"));\n};\n\n// 风向模拟\nvar WindFlow = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().memo(function WindFlowFunc(props) {\n var weatherData = props.weatherData;\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n var _props$h4 = props.h,\n h = _props$h4 === void 0 ? '150%' : _props$h4;\n var noise = createNoise2D(Math.random);\n var noise2 = createNoise2D(Math.random);\n // returns a value between -1 and 1\n var valMin = Infinity;\n var valMax = -Infinity;\n var tempMap = {};\n var orderArr = [];\n weatherData.forEach(function (item) {\n var a = item.location.split(\" \");\n var x = a[0];\n var y = a[1];\n if (tempMap[x]) {\n tempMap[x].push(item);\n } else {\n orderArr.push(x);\n tempMap[x] = [item];\n }\n });\n orderArr.sort(function (a, b) {\n return a - b;\n });\n Object.keys(tempMap).forEach(function (key) {\n tempMap[key].sort(function (a, b) {\n return a.location.split(\" \")[1] - b.location.split(\" \")[1];\n });\n });\n var retArr = [];\n orderArr.forEach(function (key, index) {\n retArr[index] = tempMap[key];\n });\n console.log(retArr);\n function generateData() {\n var data = [];\n // for (var i = 0; i <= 100; i++) {\n // for (var j = 0; j <= 100; j++) {\n // var dx = noise(i / 150, j / 150);\n // var dy = noise2(i / 150, j / 150);\n // var mag = Math.sqrt(dx * dx + dy * dy);\n // valMax = Math.max(valMax, mag);\n // valMin = Math.min(valMin, mag);\n // // data.push([i, j, dx, dy, mag]);\n // data.push([i, j, 0.2 + 0.01 * i, -0.9 + i * 0.01, 1])\n // }\n // }\n\n // todo\n retArr.forEach(function (item, i) {\n item.forEach(function (sub, j) {\n data.push([i, j, -Math.cos(sub.wind_direction_80m * (Math.PI / 180)), Math.sin(sub.wind_direction_80m * (Math.PI / 180)), 1]);\n });\n });\n return data;\n }\n var data = generateData();\n // const data = windData\n var onEvents = {\n \" click\": function _click() {}\n };\n var option = {\n grid: {\n left: 0,\n top: 0,\n bottom: 0,\n right: 0\n },\n visualMap: {\n show: false,\n min: valMin,\n max: valMax,\n dimension: 2,\n inRange: {\n color: ['#fff']\n }\n },\n xAxis: {\n type: 'value',\n axisLine: {\n lineStyle: {\n color: '#fff'\n }\n },\n splitLine: {\n show: false,\n lineStyle: {\n color: 'rgba(255,255,255,0.2)'\n }\n }\n },\n yAxis: {\n type: 'value',\n axisLine: {\n lineStyle: {\n color: '#fff'\n }\n },\n show: false,\n splitLine: {\n show: false,\n lineStyle: {\n color: 'rgba(255,255,255,0.2)'\n }\n }\n },\n series: [{\n type: 'flowGL',\n data: data,\n particleDensity: 20,\n particleSize: 3,\n // particleDensity: 15,\n // particleSize: 3,\n particleSpeed: 0.5,\n itemStyle: {\n opacity: 0.5\n }\n }\n // {\n // type: 'custom',\n // data: data,\n // encode: {\n // x: 0,\n // y: 0\n // },\n // renderItem: function (params, api) {\n // var x = api.value(0),\n // y = api.value(1),\n // dx = api.value(2),\n // dy = api.value(3);\n // var start = api.coord([x - dx / 2, y - dy / 2]);\n // var end = api.coord([x + dx / 2, y + dy / 2]);\n // return {\n // type: 'line',\n // shape: {\n // x1: start[0],\n // y1: start[1],\n // x2: end[0],\n // y2: end[1]\n // },\n // style: {\n // lineWidth: 2,\n // stroke: '#fff',\n // opacity: 1\n // }\n // };\n // }\n // }\n ]\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: \"110%\",\n marginTop: \"-100px\"\n },\n onEvents: onEvents\n });\n});\n// 箱线图\nfunction BoxplotEchart(props) {\n var _props$h5 = props.h,\n h = _props$h5 === void 0 ? '100px' : _props$h5,\n _props$x2 = props.x,\n x = _props$x2 === void 0 ? [] : _props$x2,\n yAxis = props.yAxis,\n _props$yArr = props.yArr,\n yArr = _props$yArr === void 0 ? [] : _props$yArr;\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n var option = {\n tooltip: {\n trigger: 'item',\n axisPointer: {\n type: 'shadow'\n }\n },\n grid: {\n top: \"30\",\n left: \"40\",\n right: \"40\",\n bottom: \"20\",\n containLabel: true\n },\n xAxis: {\n type: 'category',\n boundaryGap: true,\n splitArea: {\n show: false\n },\n splitLine: {\n show: false\n },\n data: x\n },\n yAxis: {\n type: 'value',\n max: 50,\n min: -50,\n name: yAxis || 'km/s minus 299,000',\n splitLine: {\n lineStyle: {\n color: \"rgba(130, 144, 157, 0.18)\"\n }\n },\n splitNumber: 3\n },\n series: [{\n name: 'boxplot',\n type: 'boxplot',\n data: yArr,\n tooltip: {\n formatter: function formatter(param) {\n return ['时间 ' + param.name, '最大值: ' + param.data[5].toFixed(2) + '%', '第三四分位数: ' + param.data[4].toFixed(2) + '%', '中位数: ' + param.data[2].toFixed(2) + '%', '第一四分位数: ' + param.data[3].toFixed(2) + '%', '最小值: ' + param.data[1].toFixed(2) + '%'].join('<br/>');\n }\n }\n }]\n };\n var onEvents = function onEvents() {};\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: \"100%\"\n },\n onEvents: onEvents\n });\n}\nfunction EchartJustOneLine(props) {\n var _props$x3 = props.x,\n x = _props$x3 === void 0 ? [] : _props$x3,\n _props$y = props.y,\n y = _props$y === void 0 ? [] : _props$y,\n _props$h6 = props.h,\n h = _props$h6 === void 0 ? '350px' : _props$h6,\n _props$styleObj = props.styleObj,\n styleObj = _props$styleObj === void 0 ? {} : _props$styleObj,\n bottom = props.bottom,\n _props$left2 = props.left,\n left = _props$left2 === void 0 ? \"0%\" : _props$left2,\n isLine = props.isLine,\n w = props.w,\n _props$top = props.top,\n top = _props$top === void 0 ? '0%' : _props$top;\n var option = {\n grid: {\n left: left,\n right: '0',\n top: top\n },\n xAxis: {\n type: 'category',\n data: x,\n show: isLine,\n axisLine: {\n show: isLine\n }\n },\n yAxis: {\n splitLine: {\n show: false\n },\n type: 'value'\n },\n series: [{\n data: y,\n type: 'line',\n smooth: true,\n name: \"电价\",\n symbol: 'none',\n lineStyle: {\n color: styleObj.lineColor\n },\n areaStyle: {\n color: {\n type: 'linear',\n x: 0,\n y: 0,\n x2: 0,\n y2: 1,\n colorStops: [{\n offset: 0,\n color: styleObj.areaStyle ? styleObj.areaStyle[0] : '' // 0% 处的颜色\n }, {\n offset: 1,\n color: styleObj.areaStyle ? styleObj.areaStyle[1] : '' // 100% 处的颜色\n }],\n global: false // 缺省为 false\n }\n }\n }]\n };\n if (bottom) {\n option.grid.bottom = bottom;\n }\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n if (echartRef.current) {\n var ins = echartRef.current.getEchartsInstance();\n ins.setOption(option);\n }\n }, [props]);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: w\n }\n });\n}\nfunction TsingrocMonthPick(props) {\n var value = props.value,\n propsOnChange = props.onChange,\n _props$dataType2 = props.dataType,\n dataType = _props$dataType2 === void 0 ? 'month' : _props$dataType2,\n className = props.className,\n popupClassName = props.popupClassName;\n var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(value),\n _useState4 = _slicedToArray(_useState3, 2),\n dateValue = _useState4[0],\n setDateValue = _useState4[1];\n var quickGo = function quickGo(type) {\n var temp = dateValue.add(type, dataType);\n setDateValue(temp);\n propsOnChange && propsOnChange(temp);\n };\n var onChange = function onChange(value) {\n setDateValue(value);\n propsOnChange && propsOnChange(value);\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n onClick: function onClick() {\n quickGo(-1);\n },\n className: \"quick-jump \".concat(className),\n style: {\n borderRight: 'none',\n borderRadius: '2px 0 0 2px'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n className: \"quick-icon\"\n })), dataType === 'day' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n value: dateValue,\n onChange: onChange\n }), dataType === 'week' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n value: dateValue,\n onChange: onChange,\n picker: \"week\"\n }), dataType === 'month' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n popupClassName: popupClassName,\n className: className,\n value: dateValue,\n onChange: onChange,\n picker: \"month\"\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n onClick: function onClick() {\n quickGo(1);\n },\n className: \"quick-jump \".concat(className),\n style: {\n borderLeft: 'none',\n borderRadius: '0 2px 2px 0'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n className: \"quick-icon\"\n })));\n}\nfunction ImageBac(props) {\n var children = props.children,\n _props$width = props.width,\n width = _props$width === void 0 ? '100%' : _props$width,\n _props$height = props.height,\n height = _props$height === void 0 ? '100%' : _props$height,\n _props$url = props.url,\n url = _props$url === void 0 ? \"\" : _props$url,\n style = props.style;\n var relativeUrl = '';\n if (url.startsWith('@')) {\n relativeUrl = url.replace('@', '../../../../..');\n } else {\n relativeUrl = url;\n }\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: _objectSpread(_objectSpread({}, style), {}, {\n backgroundSize: '100% 100%',\n width: width,\n height: height,\n backgroundImage: \"url('\".concat(relativeUrl, \"')\")\n })\n }, children);\n}\n\n\n//# sourceURL=webpack://my-component-library/./src/components/tsingrocCom.js?");
11076
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BoxplotEchart: () => (/* binding */ BoxplotEchart),\n/* harmony export */ CircularProgress: () => (/* binding */ CircularProgress),\n/* harmony export */ EchartJustOneLine: () => (/* binding */ EchartJustOneLine),\n/* harmony export */ EchartMult: () => (/* binding */ EchartMult),\n/* harmony export */ ImageBac: () => (/* binding */ ImageBac),\n/* harmony export */ RadarEchart: () => (/* binding */ RadarEchart),\n/* harmony export */ RiskEchartMult: () => (/* binding */ RiskEchartMult),\n/* harmony export */ TsingrocDatePick: () => (/* binding */ TsingrocDatePick),\n/* harmony export */ TsingrocMonthPick: () => (/* binding */ TsingrocMonthPick),\n/* harmony export */ TsingrocPie: () => (/* binding */ TsingrocPie),\n/* harmony export */ WindFlow: () => (/* binding */ WindFlow)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var dayjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! dayjs */ \"./node_modules/dayjs/dayjs.min.js\");\n/* harmony import */ var dayjs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(dayjs__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var echarts_for_react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! echarts-for-react */ \"./node_modules/echarts-for-react/esm/index.js\");\n/* harmony import */ var echarts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! echarts */ \"./node_modules/echarts/index.js\");\n/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @ant-design/icons */ \"./node_modules/@ant-design/icons/es/icons/LeftOutlined.js\");\n/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @ant-design/icons */ \"./node_modules/@ant-design/icons/es/icons/RightOutlined.js\");\n/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! antd */ \"./node_modules/antd/es/date-picker/index.js\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _iterableToArrayLimit(r, l) { var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }\nfunction _arrayWithHoles(r) { if (Array.isArray(r)) return r; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(r, a) { if (r) { if (\"string\" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }\nfunction _iterableToArray(r) { if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r); }\nfunction _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }\nfunction _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }\n\n\n\n\n\n\n\n// 带风险区间的折线图\nvar RiskEchartMult = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().memo(function EchartMult(props) {\n var l = localStorage.getItem(\"lang\");\n var riskArr = props.riskArr,\n max = props.max,\n propsX = props.x,\n yArr = props.yArr,\n nameArr = props.nameArr,\n notFormat = props.notFormat,\n nofoot = props.nofoot,\n step = props.step,\n _props$h = props.h,\n h = _props$h === void 0 ? \"350px\" : _props$h,\n _props$w = props.w,\n w = _props$w === void 0 ? \"100%\" : _props$w,\n noDiff = props.noDiff,\n addMaxBar = props.addMaxBar,\n _props$echartColorArr = props.echartColorArr,\n echartColorArr = _props$echartColorArr === void 0 ? [\"#2FDAFF\", \"#77DA9B\", \"#FFB82E\", \"#5470c6\", \"#91cc75\", \"#fac858\", \"#ee6666\", \"#73c0de\", \"#3ba272\", \"#fc8452\", \"#9a60b4\", \"#ea7ccc\"] : _props$echartColorArr,\n _props$areaStyle = props.areaStyle,\n areaStyle = _props$areaStyle === void 0 ? ['rgba(47,218,255 ,0.3)', 'rgba(119,218,155,0.3)', 'rgba(255,184,46,0.3)'] : _props$areaStyle,\n _props$yAxis = props.yAxis,\n yAxis = _props$yAxis === void 0 ? \"功率(MW)\" : _props$yAxis,\n barColor = props.barColor,\n legendLeft = props.legendLeft,\n _props$unit = props.unit,\n unit = _props$unit === void 0 ? \"MW\" : _props$unit,\n specialLine = props.specialLine,\n pickLine = props.pickLine,\n type = props.type;\n var xTemp = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {\n return new Array(24).fill(0).map(function (item, index) {\n var time = (index + 1).toString().padStart(2, \"0\");\n return time + \":00\";\n });\n }, []);\n var x = [];\n if (!propsX) {\n x = xTemp;\n } else {\n x = propsX;\n }\n // 获取最大值,构建bar\n var option = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {\n var barArr = [];\n if (Array.isArray(yArr) && yArr.length > 0 && addMaxBar) {\n var length = yArr[0].length;\n for (var i = 0; i < length; i++) {\n var _max = -Infinity;\n var tempIndex = -1;\n var secendLoopLength = yArr.length;\n for (var j = 0; j < secendLoopLength; j++) {\n if (yArr[j][i] > _max) {\n _max = yArr[j][i];\n tempIndex = j;\n }\n }\n barArr.push({\n value: _max,\n itemStyle: {\n color: barColor[tempIndex]\n }\n });\n }\n }\n var option = {\n grid: {\n top: \"30\",\n left: \"40\",\n right: \"40\",\n bottom: \"20\",\n containLabel: true\n },\n xAxis: {\n type: \"category\",\n show: !nofoot,\n data: notFormat ? x.map(function (item) {\n return new (dayjs__WEBPACK_IMPORTED_MODULE_1___default())(item).format(\"HH:mm\");\n }) : x\n },\n yAxis: [{\n max: max,\n name: yAxis,\n nameGap: 10,\n position: \"left\",\n nameTextStyle: {\n align: \"center\",\n fontWeight: \"bold\"\n },\n type: \"value\",\n splitLine: {\n lineStyle: {\n color: \"rgba(130, 144, 157, 0.18)\"\n }\n },\n splitNumber: 3\n }, {\n type: \"value\",\n splitLine: {\n lineStyle: {\n color: \"#DCDEE0\"\n }\n },\n splitNumber: 3\n }],\n legend: {\n data: [].concat(_toConsumableArray(nameArr), ['风险区间']).map(function (item, index) {\n return {\n name: item,\n itemStyle: {\n color: item === '风险区间' ? 'rgba(99,211,149,0.8)' : echartColorArr[index]\n },\n icon: item === \"实际\" ? \"path://M304.43 532.76H221.4c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h83.03c11.47 0 20.76 9.3 20.76 20.76s-9.29 20.76-20.76 20.76zM581.19 532.76H442.81c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h138.38c11.47 0 20.76 9.3 20.76 20.76s-9.3 20.76-20.76 20.76zM802.59 532.76h-83.03c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h83.03c11.47 0 20.76 9.3 20.76 20.76s-9.29 20.76-20.76 20.76z\" : \"rect\"\n };\n }),\n textStyle: {\n color: \"#646566\"\n },\n left: legendLeft,\n right: \"20\"\n // formatter: (name) => {\n // return shark(name,l)\n // }\n },\n color: echartColorArr,\n tooltip: {\n trigger: \"axis\",\n valueFormatter: function valueFormatter(value) {\n return value ? value.toFixed(2) + unit : value === 0 ? 0 + unit : \"\";\n }\n },\n series: yArr === null || yArr === void 0 ? void 0 : yArr.map(function (item, index) {\n return {\n data: item === null || item === void 0 ? void 0 : item.map(function (i) {\n return typeof i === \"number\" ? i : undefined;\n }),\n type: type || \"line\",\n smooth: true,\n name: nameArr[index],\n lineStyle: {\n // type: noDiff ? \"solid\" : index === 0 ? \"dashed\" : \"solid\",\n type: specialLine ? nameArr[index] === pickLine ? 'solid' : \"dashed\" : \"solid\",\n color: echartColorArr[index]\n },\n step: step || \"\",\n symbol: \"none\",\n emphasis: {\n itemStyle: {\n color: \"red\"\n }\n }\n // areaStyle:{\n // color:areaStyle[index]\n // }\n };\n }).concat(addMaxBar ? [{\n data: barArr,\n type: \"bar\",\n name: \"max\",\n barWidth: \"101%\",\n yAxisIndex: 1,\n tooltip: {\n show: false\n }\n }] : [])\n };\n if (riskArr && riskArr.length > 0 && riskArr[0]) {\n option.series.push({\n data: riskArr[1],\n type: 'line',\n name: \"风险上边界\",\n smooth: true,\n showSymbol: false,\n tooltip: {\n show: true\n },\n lineStyle: {\n opacity: 0\n }\n }, {\n yAxisIndex: 0,\n data: riskArr[0],\n type: 'line',\n name: \"风险下边界\",\n smooth: true,\n stack: 'st',\n showSymbol: false,\n lineStyle: {\n opacity: 0\n },\n tooltip: {\n show: true\n },\n emphasis: {\n disabled: true\n }\n }, {\n yAxisIndex: 0,\n name: '风险区间',\n stack: 'st',\n stackStrategy: \"all\",\n data: riskArr[1].map(function (item, index) {\n return riskArr[1][index] - riskArr[0][index];\n }),\n type: 'line',\n smooth: true,\n symbol: \"none\",\n lineStyle: {\n opacity: 0\n },\n areaStyle: {\n color: \"#63D395\"\n },\n emphasis: {\n disabled: true\n },\n tooltip: {\n show: false\n }\n });\n }\n return option;\n }, [echartColorArr, addMaxBar, x, yArr, nameArr, noDiff, nofoot, step, yAxis, notFormat, barColor, riskArr]);\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n if (echartRef.current) {\n var ins = echartRef.current.getEchartsInstance();\n }\n }, [x, yArr, nameArr, riskArr, option]);\n var onEvents = {\n \" click\": function _click() {}\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: w\n },\n onEvents: onEvents\n });\n});\n\n// 折线图\nvar EchartMult = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().memo(function EchartMult(props) {\n var l = localStorage.getItem(\"lang\");\n var max = props.max,\n propsX = props.x,\n yArr = props.yArr,\n nameArr = props.nameArr,\n notFormat = props.notFormat,\n nofoot = props.nofoot,\n step = props.step,\n _props$h2 = props.h,\n h = _props$h2 === void 0 ? \"350px\" : _props$h2,\n _props$w2 = props.w,\n w = _props$w2 === void 0 ? \"100%\" : _props$w2,\n _props$left = props.left,\n left = _props$left === void 0 ? 30 : _props$left,\n _props$right = props.right,\n right = _props$right === void 0 ? 40 : _props$right,\n noDiff = props.noDiff,\n addMaxBar = props.addMaxBar,\n _props$barWidth = props.barWidth,\n barWidth = _props$barWidth === void 0 ? '15px' : _props$barWidth,\n barLinearGradientArr = props.barLinearGradientArr,\n _props$echartColorArr2 = props.echartColorArr,\n echartColorArr = _props$echartColorArr2 === void 0 ? [\"#2FDAFF\", \"#77DA9B\", \"#FFB82E\", \"#5470c6\", \"#91cc75\", \"#fac858\", \"#ee6666\", \"#73c0de\", \"#3ba272\", \"#fc8452\", \"#9a60b4\", \"#ea7ccc\"] : _props$echartColorArr2,\n _props$areaStyle2 = props.areaStyle,\n areaStyle = _props$areaStyle2 === void 0 ? ['rgba(47,218,255 ,0.3)', 'rgba(119,218,155,0.3)', 'rgba(255,184,46,0.3)'] : _props$areaStyle2,\n _props$yAxis2 = props.yAxis,\n yAxis = _props$yAxis2 === void 0 ? \"功率(MW)\" : _props$yAxis2,\n barColor = props.barColor,\n legendLeft = props.legendLeft,\n _props$unit2 = props.unit,\n unit = _props$unit2 === void 0 ? \"MW\" : _props$unit2,\n specialLine = props.specialLine,\n pickLine = props.pickLine,\n type = props.type;\n if (barLinearGradientArr) {\n echartColorArr[0] = barLinearGradientArr[1];\n }\n var xTemp = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {\n return new Array(24).fill(0).map(function (item, index) {\n var time = (index + 1).toString().padStart(2, \"0\");\n return time + \":00\";\n });\n }, []);\n var x = [];\n if (!propsX) {\n x = xTemp;\n } else {\n x = propsX;\n }\n // 获取最大值,构建bar\n var option = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {\n var barArr = [];\n if (Array.isArray(yArr) && yArr.length > 0 && addMaxBar) {\n var length = yArr[0].length;\n for (var i = 0; i < length; i++) {\n var _max2 = -Infinity;\n var tempIndex = -1;\n var secendLoopLength = yArr.length;\n for (var j = 0; j < secendLoopLength; j++) {\n if (yArr[j][i] > _max2) {\n _max2 = yArr[j][i];\n tempIndex = j;\n }\n }\n barArr.push({\n value: _max2,\n itemStyle: {\n color: barColor[tempIndex]\n }\n });\n }\n }\n var option = {\n grid: {\n top: \"30\",\n left: left,\n right: right,\n bottom: \"20\",\n containLabel: true\n },\n xAxis: {\n type: \"category\",\n // axisLabel: {\n // interval: 0 // 强制显示所有x轴标签\n // },\n show: !nofoot,\n data: notFormat ? x.map(function (item) {\n return new (dayjs__WEBPACK_IMPORTED_MODULE_1___default())(item).format(\"HH:mm\");\n }) : x\n },\n yAxis: [{\n max: max,\n name: yAxis,\n nameGap: 10,\n position: \"left\",\n nameTextStyle: {\n align: \"center\",\n fontWeight: \"bold\"\n },\n type: \"value\",\n splitLine: {\n lineStyle: {\n color: \"rgba(130, 144, 157, 0.18)\"\n }\n },\n splitNumber: 3\n }, {\n type: \"value\",\n splitLine: {\n lineStyle: {\n color: \"#DCDEE0\"\n }\n },\n splitNumber: 3\n }],\n legend: {\n data: nameArr.map(function (item, index) {\n return {\n name: item,\n itemStyle: {\n color: echartColorArr[index]\n },\n icon: item === \"实际\" ? \"path://M304.43 532.76H221.4c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h83.03c11.47 0 20.76 9.3 20.76 20.76s-9.29 20.76-20.76 20.76zM581.19 532.76H442.81c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h138.38c11.47 0 20.76 9.3 20.76 20.76s-9.3 20.76-20.76 20.76zM802.59 532.76h-83.03c-11.47 0-20.76-9.3-20.76-20.76s9.29-20.76 20.76-20.76h83.03c11.47 0 20.76 9.3 20.76 20.76s-9.29 20.76-20.76 20.76z\" : \"rect\"\n };\n }),\n textStyle: {\n // color: \"#646566\",\n // color: '#fff'\n color: echartColorArr[index]\n },\n left: legendLeft,\n right: \"20\"\n // formatter: (name) => {\n // return shark(name,l)\n // }\n },\n color: echartColorArr,\n tooltip: {\n trigger: \"axis\",\n valueFormatter: function valueFormatter(value) {\n return value ? value.toFixed(2) + unit : value === 0 ? 0 + unit : \"\";\n }\n },\n series: yArr === null || yArr === void 0 ? void 0 : yArr.map(function (item, index) {\n return {\n data: item === null || item === void 0 ? void 0 : item.map(function (i) {\n return typeof i === \"number\" ? i : undefined;\n }),\n type: type || \"line\",\n smooth: true,\n name: nameArr[index],\n lineStyle: {\n // type: noDiff ? \"solid\" : index === 0 ? \"dashed\" : \"solid\",\n type: specialLine ? nameArr[index] === pickLine ? 'solid' : \"dashed\" : \"solid\",\n color: echartColorArr[index]\n },\n step: step || \"\",\n symbol: \"none\",\n emphasis: {\n itemStyle: {\n color: \"red\"\n }\n },\n areaStyle: areaStyle ? {\n color: areaStyle[index]\n } : null,\n barWidth: barWidth,\n itemStyle: barLinearGradientArr ? {\n barBorderRadius: [3, 3, 0, 0],\n color: new echarts__WEBPACK_IMPORTED_MODULE_3__.graphic.LinearGradient(0, 0, 0, 1, [{\n offset: 0,\n color: barLinearGradientArr[1]\n }, {\n offset: 1,\n color: barLinearGradientArr[0]\n }])\n } : {}\n };\n }).concat(addMaxBar ? [{\n data: barArr,\n type: \"bar\",\n name: \"max\",\n barWidth: \"101%\",\n yAxisIndex: 1,\n tooltip: {\n show: false\n }\n }] : [])\n };\n return option;\n }, [echartColorArr, addMaxBar, x, yArr, nameArr, noDiff, nofoot, step, yAxis, notFormat, barColor]);\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n if (echartRef.current) {\n var ins = echartRef.current.getEchartsInstance();\n ins.setOption(_objectSpread(_objectSpread({}, ins.getOption()), {}, {\n series: ins.getOption().series.filter(function (item) {\n return [].concat(_toConsumableArray(nameArr), [\"max\"]).includes(item.name);\n })\n }), true, true);\n }\n }, [x, yArr, nameArr]);\n var onEvents = {\n \" click\": function _click() {}\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: w\n },\n onEvents: onEvents\n });\n});\n\n// 待快速跳转的日,周,月 选择器\nfunction TsingrocDatePick(props) {\n var value = props.value,\n propsOnChange = props.onChange,\n _props$dataType = props.dataType,\n dataType = _props$dataType === void 0 ? 'month' : _props$dataType,\n className = props.className,\n popupClassName = props.popupClassName;\n var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(value),\n _useState2 = _slicedToArray(_useState, 2),\n dateValue = _useState2[0],\n setDateValue = _useState2[1];\n var quickGo = function quickGo(type) {\n var temp = dateValue.add(type, dataType);\n setDateValue(temp);\n propsOnChange && propsOnChange(temp);\n };\n var onChange = function onChange(value) {\n setDateValue(value);\n propsOnChange && propsOnChange(value);\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n onClick: function onClick() {\n quickGo(-1);\n },\n className: \"quick-jump \".concat(className),\n style: {\n borderRight: 'none',\n borderRadius: '2px 0 0 2px'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n className: \"quick-icon\"\n })), dataType === 'day' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n value: dateValue,\n onChange: onChange\n }), dataType === 'week' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n value: dateValue,\n onChange: onChange,\n picker: \"week\"\n }), dataType === 'month' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n popupClassName: popupClassName,\n className: className,\n value: dateValue,\n onChange: onChange,\n picker: \"month\"\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n onClick: function onClick() {\n quickGo(1);\n },\n className: \"quick-jump \".concat(className),\n style: {\n borderLeft: 'none',\n borderRadius: '0 2px 2px 0'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n className: \"quick-icon\"\n })));\n}\n// 雷达图\nfunction RadarEchart(props) {\n var _props$h3 = props.h,\n h = _props$h3 === void 0 ? '100px' : _props$h3,\n _props$x = props.x,\n x = _props$x === void 0 ? [] : _props$x,\n yAxis = props.yAxis,\n _props$arr = props.arr,\n arr = _props$arr === void 0 ? [] : _props$arr,\n _props$value = props.value,\n value = _props$value === void 0 ? [] : _props$value;\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n var option = {\n // grid: {\n // top: \"20%\",\n // left: \"40\",\n // right: \"40\",\n // containLabel: true,\n // },\n radar: {\n indicator: arr.map(function (item, key) {\n return {\n name: item,\n max: 1\n };\n }),\n // indicator: [\n // { name: 'Sales', max: 6500 },\n // { name: 'Administration', max: 16000 },\n // { name: 'Information Technology', max: 30000 },\n // { name: 'Customer Support', max: 38000 },\n // ],\n radius: '60%',\n splitArea: {\n areaStyle: {\n color: 'rgba(119, 218, 155, 0)' // 设置分隔区域颜色为渐变色\n }\n },\n splitLine: {\n lineStyle: {\n color: 'rgba(64, 175, 239, 0.15)'\n }\n },\n axisLine: {\n // show: false,\n lineStyle: {\n \"with\": 1,\n color: \"rgba(130, 144, 157, 0.18)\"\n }\n },\n axisName: {\n show: true,\n color: \"#9FC7DD\"\n }\n },\n series: [{\n name: 'Budget vs spending',\n type: 'radar',\n data: [{\n value: value,\n name: 'Actual Spending'\n }],\n lineStyle: {\n normal: {\n color: '#77DA9B' // 设置线条颜色为橙色,透明度为0.5\n }\n },\n areaStyle: {\n color: 'rgba(119, 218, 155, 0.3)'\n },\n symbol: \"none\"\n }]\n };\n var onEvents = function onEvents() {};\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: \"100%\"\n },\n onEvents: onEvents\n });\n}\n// 饼图\nfunction TsingrocPie(props) {\n var _props$name = props.name,\n name = _props$name === void 0 ? \"饼图\" : _props$name,\n _props$valueArr = props.valueArr,\n valueArr = _props$valueArr === void 0 ? [{\n value: 735,\n name: 'Search Engine'\n }, {\n value: 735,\n name: 'Direct'\n }, {\n value: 735,\n name: 'Email'\n }, {\n value: 735,\n name: 'Union Ads'\n }, {\n value: 735,\n name: 'Video Ads'\n }] : _props$valueArr,\n _props$color = props.color,\n color = _props$color === void 0 ? [\"#ECA926\", \"#32ADF4\", \"#DC7756\", '#62CE89', '#4256B9', '#00D0FF', '#96D0DD'] : _props$color;\n var option = {\n color: color,\n tooltip: {\n trigger: 'item'\n },\n legend: {\n top: '5%',\n left: 'center',\n show: false\n },\n series: [{\n name: name,\n type: 'pie',\n radius: ['40%', '70%'],\n avoidLabelOverlap: false,\n padAngle: 2,\n itemStyle: {\n borderRadius: 1\n },\n label: {\n show: false,\n position: 'center'\n },\n emphasis: {\n label: {\n show: true,\n fontSize: 16,\n fontWeight: 'bold'\n }\n },\n labelLine: {\n show: false\n },\n data: valueArr\n }]\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n height: \"100%\"\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n display: 'flex',\n height: \"100%\"\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n flex: 3\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n style: {\n height: '100%'\n },\n option: option\n })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n flex: 2,\n display: \"flex\",\n alignItems: 'center'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {}\n }, valueArr.map(function (item, key) {\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n key: key,\n style: {\n fontSize: '14px',\n lineHeight: \"20px\"\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n display: 'inline-block',\n width: '6px',\n height: '6px',\n backgroundColor: color[key],\n marginRight: \"5px\",\n transform: \"translateY(-1px)\"\n }\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Space, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n color: \"#96A9BA\"\n }\n }, item.name, \":\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n color: '#fff'\n }\n }, item.value)));\n })))));\n}\n// 环形统计图\nvar CircularProgress = function CircularProgress(_ref) {\n var progress = _ref.progress,\n _ref$color = _ref.color,\n color = _ref$color === void 0 ? \"#34A9D4\" : _ref$color;\n // 确保进度值在0到100之间\n var clampProgress = function clampProgress(value) {\n return Math.max(0, Math.min(100, value));\n };\n\n // 计算圆的周长\n var circumference = 2 * Math.PI * 15.91549430918954;\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n width: \"100%\",\n height: \"100%\",\n position: 'relative'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"svg\", {\n width: \"100%\",\n height: \"100%\",\n viewBox: \"0 0 42 42\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"circle\", {\n className: \"circle\",\n cx: \"21\",\n cy: \"21\",\n r: \"15.91549430918954\",\n stroke: \"#22405a\",\n strokeWidth: \"3\",\n fill: \"none\"\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"circle\", {\n className: \"circle\",\n cx: \"21\",\n cy: \"21\",\n r: \"15.91549430918954\",\n stroke: color\n // stroke=\"#ff0\"\n ,\n strokeWidth: \"3\",\n fill: \"none\",\n strokeDasharray: circumference,\n strokeDashoffset: circumference - clampProgress(progress) / 100 * circumference\n })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: {\n position: \"absolute\",\n top: '50%',\n transform: 'translateY(-50%)',\n textAlign: \"center\",\n width: \"100%\"\n }\n }, clampProgress(progress), \"%\"));\n};\n\n// 风向模拟\nvar WindFlow = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().memo(function WindFlowFunc(props) {\n var weatherData = props.weatherData;\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n var _props$h4 = props.h,\n h = _props$h4 === void 0 ? '150%' : _props$h4;\n var noise = createNoise2D(Math.random);\n var noise2 = createNoise2D(Math.random);\n // returns a value between -1 and 1\n var valMin = Infinity;\n var valMax = -Infinity;\n var tempMap = {};\n var orderArr = [];\n weatherData.forEach(function (item) {\n var a = item.location.split(\" \");\n var x = a[0];\n var y = a[1];\n if (tempMap[x]) {\n tempMap[x].push(item);\n } else {\n orderArr.push(x);\n tempMap[x] = [item];\n }\n });\n orderArr.sort(function (a, b) {\n return a - b;\n });\n Object.keys(tempMap).forEach(function (key) {\n tempMap[key].sort(function (a, b) {\n return a.location.split(\" \")[1] - b.location.split(\" \")[1];\n });\n });\n var retArr = [];\n orderArr.forEach(function (key, index) {\n retArr[index] = tempMap[key];\n });\n console.log(retArr);\n function generateData() {\n var data = [];\n // for (var i = 0; i <= 100; i++) {\n // for (var j = 0; j <= 100; j++) {\n // var dx = noise(i / 150, j / 150);\n // var dy = noise2(i / 150, j / 150);\n // var mag = Math.sqrt(dx * dx + dy * dy);\n // valMax = Math.max(valMax, mag);\n // valMin = Math.min(valMin, mag);\n // // data.push([i, j, dx, dy, mag]);\n // data.push([i, j, 0.2 + 0.01 * i, -0.9 + i * 0.01, 1])\n // }\n // }\n\n // todo\n retArr.forEach(function (item, i) {\n item.forEach(function (sub, j) {\n data.push([i, j, -Math.cos(sub.wind_direction_80m * (Math.PI / 180)), Math.sin(sub.wind_direction_80m * (Math.PI / 180)), 1]);\n });\n });\n return data;\n }\n var data = generateData();\n // const data = windData\n var onEvents = {\n \" click\": function _click() {}\n };\n var option = {\n grid: {\n left: 0,\n top: 0,\n bottom: 0,\n right: 0\n },\n visualMap: {\n show: false,\n min: valMin,\n max: valMax,\n dimension: 2,\n inRange: {\n color: ['#fff']\n }\n },\n xAxis: {\n type: 'value',\n axisLine: {\n lineStyle: {\n color: '#fff'\n }\n },\n splitLine: {\n show: false,\n lineStyle: {\n color: 'rgba(255,255,255,0.2)'\n }\n }\n },\n yAxis: {\n type: 'value',\n axisLine: {\n lineStyle: {\n color: '#fff'\n }\n },\n show: false,\n splitLine: {\n show: false,\n lineStyle: {\n color: 'rgba(255,255,255,0.2)'\n }\n }\n },\n series: [{\n type: 'flowGL',\n data: data,\n particleDensity: 20,\n particleSize: 3,\n // particleDensity: 15,\n // particleSize: 3,\n particleSpeed: 0.5,\n itemStyle: {\n opacity: 0.5\n }\n }\n // {\n // type: 'custom',\n // data: data,\n // encode: {\n // x: 0,\n // y: 0\n // },\n // renderItem: function (params, api) {\n // var x = api.value(0),\n // y = api.value(1),\n // dx = api.value(2),\n // dy = api.value(3);\n // var start = api.coord([x - dx / 2, y - dy / 2]);\n // var end = api.coord([x + dx / 2, y + dy / 2]);\n // return {\n // type: 'line',\n // shape: {\n // x1: start[0],\n // y1: start[1],\n // x2: end[0],\n // y2: end[1]\n // },\n // style: {\n // lineWidth: 2,\n // stroke: '#fff',\n // opacity: 1\n // }\n // };\n // }\n // }\n ]\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: \"110%\",\n marginTop: \"-100px\"\n },\n onEvents: onEvents\n });\n});\n// 箱线图\nfunction BoxplotEchart(props) {\n var _props$h5 = props.h,\n h = _props$h5 === void 0 ? '100px' : _props$h5,\n _props$x2 = props.x,\n x = _props$x2 === void 0 ? [] : _props$x2,\n yAxis = props.yAxis,\n _props$yArr = props.yArr,\n yArr = _props$yArr === void 0 ? [] : _props$yArr;\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n var option = {\n tooltip: {\n trigger: 'item',\n axisPointer: {\n type: 'shadow'\n }\n },\n grid: {\n top: \"30\",\n left: \"40\",\n right: \"40\",\n bottom: \"20\",\n containLabel: true\n },\n xAxis: {\n type: 'category',\n boundaryGap: true,\n splitArea: {\n show: false\n },\n splitLine: {\n show: false\n },\n data: x\n },\n yAxis: {\n type: 'value',\n max: 50,\n min: -50,\n name: yAxis || 'km/s minus 299,000',\n splitLine: {\n lineStyle: {\n color: \"rgba(130, 144, 157, 0.18)\"\n }\n },\n splitNumber: 3\n },\n series: [{\n name: 'boxplot',\n type: 'boxplot',\n data: yArr,\n tooltip: {\n formatter: function formatter(param) {\n return ['时间 ' + param.name, '最大值: ' + param.data[5].toFixed(2) + '%', '第三四分位数: ' + param.data[4].toFixed(2) + '%', '中位数: ' + param.data[2].toFixed(2) + '%', '第一四分位数: ' + param.data[3].toFixed(2) + '%', '最小值: ' + param.data[1].toFixed(2) + '%'].join('<br/>');\n }\n }\n }]\n };\n var onEvents = function onEvents() {};\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: \"100%\"\n },\n onEvents: onEvents\n });\n}\nfunction EchartJustOneLine(props) {\n var _props$x3 = props.x,\n x = _props$x3 === void 0 ? [] : _props$x3,\n _props$y = props.y,\n y = _props$y === void 0 ? [] : _props$y,\n _props$h6 = props.h,\n h = _props$h6 === void 0 ? '350px' : _props$h6,\n _props$styleObj = props.styleObj,\n styleObj = _props$styleObj === void 0 ? {} : _props$styleObj,\n bottom = props.bottom,\n _props$left2 = props.left,\n left = _props$left2 === void 0 ? \"0%\" : _props$left2,\n isLine = props.isLine,\n w = props.w,\n _props$top = props.top,\n top = _props$top === void 0 ? '0%' : _props$top;\n var option = {\n grid: {\n left: left,\n right: '0',\n top: top\n },\n xAxis: {\n type: 'category',\n data: x,\n show: isLine,\n axisLine: {\n show: isLine\n }\n },\n yAxis: {\n splitLine: {\n show: false\n },\n type: 'value'\n },\n series: [{\n data: y,\n type: 'line',\n smooth: true,\n name: \"电价\",\n symbol: 'none',\n lineStyle: {\n color: styleObj.lineColor\n },\n areaStyle: {\n color: {\n type: 'linear',\n x: 0,\n y: 0,\n x2: 0,\n y2: 1,\n colorStops: [{\n offset: 0,\n color: styleObj.areaStyle ? styleObj.areaStyle[0] : '' // 0% 处的颜色\n }, {\n offset: 1,\n color: styleObj.areaStyle ? styleObj.areaStyle[1] : '' // 100% 处的颜色\n }],\n global: false // 缺省为 false\n }\n }\n }]\n };\n if (bottom) {\n option.grid.bottom = bottom;\n }\n var echartRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {\n if (echartRef.current) {\n var ins = echartRef.current.getEchartsInstance();\n ins.setOption(option);\n }\n }, [props]);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(echarts_for_react__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n ref: echartRef,\n option: option,\n style: {\n height: h,\n width: w\n }\n });\n}\nfunction TsingrocMonthPick(props) {\n var value = props.value,\n propsOnChange = props.onChange,\n _props$dataType2 = props.dataType,\n dataType = _props$dataType2 === void 0 ? 'month' : _props$dataType2,\n className = props.className,\n popupClassName = props.popupClassName;\n var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(value),\n _useState4 = _slicedToArray(_useState3, 2),\n dateValue = _useState4[0],\n setDateValue = _useState4[1];\n var quickGo = function quickGo(type) {\n var temp = dateValue.add(type, dataType);\n setDateValue(temp);\n propsOnChange && propsOnChange(temp);\n };\n var onChange = function onChange(value) {\n setDateValue(value);\n propsOnChange && propsOnChange(value);\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n onClick: function onClick() {\n quickGo(-1);\n },\n className: \"quick-jump \".concat(className),\n style: {\n borderRight: 'none',\n borderRadius: '2px 0 0 2px'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n className: \"quick-icon\"\n })), dataType === 'day' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n value: dateValue,\n onChange: onChange\n }), dataType === 'week' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n value: dateValue,\n onChange: onChange,\n picker: \"week\"\n }), dataType === 'month' && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(antd__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n popupClassName: popupClassName,\n className: className,\n value: dateValue,\n onChange: onChange,\n picker: \"month\"\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n onClick: function onClick() {\n quickGo(1);\n },\n className: \"quick-jump \".concat(className),\n style: {\n borderLeft: 'none',\n borderRadius: '0 2px 2px 0'\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n className: \"quick-icon\"\n })));\n}\nfunction ImageBac(props) {\n var children = props.children,\n _props$width = props.width,\n width = _props$width === void 0 ? '100%' : _props$width,\n _props$height = props.height,\n height = _props$height === void 0 ? '100%' : _props$height,\n _props$url = props.url,\n url = _props$url === void 0 ? \"\" : _props$url,\n style = props.style;\n var relativeUrl = '';\n if (url.startsWith('@')) {\n relativeUrl = url.replace('@', '../../../../..');\n } else {\n relativeUrl = url;\n }\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", {\n style: _objectSpread(_objectSpread({}, style), {}, {\n backgroundSize: '100% 100%',\n width: width,\n height: height,\n backgroundImage: \"url('\".concat(relativeUrl, \"')\")\n })\n }, children);\n}\n\n\n//# sourceURL=webpack://my-component-library/./src/components/tsingrocCom.js?");
11077
11077
 
11078
11078
  /***/ }),
11079
11079
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsingroc/tsingroc-components",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "main": "dist/bundle.js",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1",
@@ -419,7 +419,8 @@ const EchartMult = React.memo(function EchartMult(props) {
419
419
  }),
420
420
  textStyle: {
421
421
  // color: "#646566",
422
- color: '#fff'
422
+ // color: '#fff'
423
+ color:echartColorArr[index]
423
424
  },
424
425
  left: legendLeft,
425
426
  right: "20",