{"ast":null,"code":"import _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { useCallback, useEffect, useRef, useState } from 'react';\nimport { maskColor, primaryColor, textColor } from '~/utils/style';\n\nvar useECharts = function useECharts(options) {\n  var ref = useRef(null);\n  var echartInstance = useRef(null);\n\n  var _useState = useState(null),\n      echart = _useState[0],\n      setEchart = _useState[1];\n\n  var createChart = useCallback(function () {\n    (function _callee() {\n      var echarts;\n      return _regeneratorRuntime.async(function _callee$(_context) {\n        while (1) {\n          switch (_context.prev = _context.next) {\n            case 0:\n              _context.next = 2;\n              return _regeneratorRuntime.awrap(import('echarts'));\n\n            case 2:\n              echarts = _context.sent;\n\n              if (!options.gl) {\n                _context.next = 6;\n                break;\n              }\n\n              _context.next = 6;\n              return _regeneratorRuntime.awrap(import('echarts-gl'));\n\n            case 6:\n              echartInstance.current = echarts.init(ref.current);\n\n              if (options.zoom) {\n                setTimeout(function () {\n                  var _echartInstance$curre;\n\n                  (_echartInstance$curre = echartInstance.current) === null || _echartInstance$curre === void 0 ? void 0 : _echartInstance$curre.dispatchAction({\n                    type: 'takeGlobalCursor',\n                    key: 'dataZoomSelect',\n                    dataZoomSelectActive: true\n                  });\n                }, 0);\n              }\n\n              setEchart(echartInstance);\n\n            case 9:\n            case \"end\":\n              return _context.stop();\n          }\n        }\n      }, null, null, null, Promise);\n    })();\n  }, [options.gl, options.zoom]);\n  var destroyChart = useCallback(function () {\n    var _echartInstance$curre2;\n\n    (_echartInstance$curre2 = echartInstance.current) === null || _echartInstance$curre2 === void 0 ? void 0 : _echartInstance$curre2.dispose();\n    setEchart(null);\n  }, []);\n  useEffect(function () {\n    if (true) {\n      createChart();\n      return function () {\n        return destroyChart();\n      };\n    }\n  }, [createChart, destroyChart]);\n  useEffect(function () {\n    if (true && echart) {\n      if (options.loading) {\n        var _echartInstance$curre3;\n\n        (_echartInstance$curre3 = echartInstance.current) === null || _echartInstance$curre3 === void 0 ? void 0 : _echartInstance$curre3.showLoading('default', {\n          text: '',\n          color: primaryColor,\n          textColor: textColor,\n          maskColor: maskColor,\n          zlevel: 0\n        });\n      } else {\n        var _echartInstance$curre4;\n\n        (_echartInstance$curre4 = echartInstance.current) === null || _echartInstance$curre4 === void 0 ? void 0 : _echartInstance$curre4.hideLoading();\n      }\n    }\n  }, [options.loading, echart]);\n  return {\n    ref: ref,\n    echart: echart\n  };\n};\n\nexport default useECharts;","map":null,"metadata":{},"sourceType":"module"}