{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///echarts-amap.min.js","webpack:///webpack/bootstrap 7c74ff067bc57990e890","webpack:///external \"echarts\"","webpack:///./src/AMapCoordSys.js","webpack:///./src/AMapModel.js","webpack:///./src/AMapView.js","webpack:///./src/amap.js"],"names":["root","factory","exports","module","require","define","amd","this","__WEBPACK_EXTERNAL_MODULE_0__","modules","__webpack_require__","moduleId","installedModules","i","l","call","m","c","value","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","AMapCoordSys","amap","api","_amap","dimensions","_mapOffset","_api","echarts","setZoom","zoom","_zoom","setCenter","center","_center","lnglatToPixel","setMapOffset","mapOffset","getAMap","dataToPoint","data","point","AMap","LngLat","px","lngLatToContainer","x","y","pointToData","pt","containerToLngLat","lng","lat","getViewRect","graphic","BoundingRect","getWidth","getHeight","getRoamTransform","matrix","create","ecModel","amapCoordSys","getDom","eachComponent","amapModel","viewportRoot","getZr","painter","getViewportRoot","Error","__amap","amapRoot","querySelector","style","left","top","removeChild","document","createElement","cssText","classList","add","appendChild","options","__options","util","clone","Map","layer","__layer","CustomLayer","setMap","getLayer","hide","getZoom","getCenter","__mapOffset","coordinateSystem","show","eachSeries","seriesModel","v2Equal","a","b","extendComponentModel","type","getMapOptions","setCenterAndZoom","option","centerOrZoomChanged","defaultOption","throttle","fn","time","context","lock","args","wrapperFn","later","apply","arguments","setTimeout","extendComponentView","render","aMapModel","zoomEndHandler","rendering","dispatchAction","resizeHandler","e","getInstanceByDom","resize","moveHandler","coordSys","offsetEl","parentNode","parseInt","throttledResizeHandler","off","_oldMoveHandler","_oldZoomEndHandler","_oldResizeHandler","on","registerCoordinateSystem","registerAction","event","update","payload","version"],"mappings":"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","file":"echarts-amap.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"echarts\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"echarts\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"amap\"] = factory(require(\"echarts\"));\n\telse\n\t\troot[\"echarts\"] = root[\"echarts\"] || {}, root[\"echarts\"][\"amap\"] = factory(root[\"echarts\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_0__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"echarts\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"echarts\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"amap\"] = factory(require(\"echarts\"));\n\telse\n\t\troot[\"echarts\"] = root[\"echarts\"] || {}, root[\"echarts\"][\"amap\"] = factory(root[\"echarts\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_0__) {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 4);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_0__;\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar echarts = __webpack_require__(0);\r\n\r\nfunction AMapCoordSys(amap, api) {\r\n this._amap = amap;\r\n this.dimensions = ['lng', 'lat'];\r\n this._mapOffset = [0, 0];\r\n\r\n this._api = api;\r\n}\r\n\r\nAMapCoordSys.prototype.dimensions = ['lng', 'lat'];\r\n\r\nAMapCoordSys.prototype.setZoom = function (zoom) {\r\n this._zoom = zoom;\r\n};\r\n\r\nAMapCoordSys.prototype.setCenter = function (center) {\r\n this._center = this._amap.lnglatToPixel(center);//, 10)\r\n};\r\n\r\nAMapCoordSys.prototype.setMapOffset = function (mapOffset) {\r\n this._mapOffset = mapOffset;\r\n};\r\n\r\nAMapCoordSys.prototype.getAMap = function () {\r\n return this._amap;\r\n};\r\n\r\nAMapCoordSys.prototype.dataToPoint = function (data) {\r\n var point = new AMap.LngLat(data[0], data[1]);\r\n var px = this._amap.lngLatToContainer(point);//, this._zoom);\r\n var mapOffset = this._mapOffset;\r\n return [px.x - mapOffset[0], px.y - mapOffset[1]];\r\n};\r\n\r\nAMapCoordSys.prototype.pointToData = function (pt) {\r\n var mapOffset = this._mapOffset;\r\n var pt = this._amap.containerToLngLat({\r\n x: pt[0] + mapOffset[0],\r\n y: pt[1] + mapOffset[1]\r\n });\r\n return [pt.lng, pt.lat];\r\n};\r\n\r\nAMapCoordSys.prototype.getViewRect = function () {\r\n var api = this._api;\r\n return new echarts.graphic.BoundingRect(0, 0, api.getWidth(), api.getHeight());\r\n};\r\n\r\nAMapCoordSys.prototype.getRoamTransform = function () {\r\n return echarts.matrix.create();\r\n};\r\n\r\nvar Overlay;\r\n\r\n// For deciding which dimensions to use when creating list data\r\nAMapCoordSys.dimensions = AMapCoordSys.prototype.dimensions;\r\n\r\nAMapCoordSys.create = function (ecModel, api) {\r\n var amapCoordSys;\r\n var root = api.getDom();\r\n\r\n // TODO Dispose\r\n ecModel.eachComponent('amap', function (amapModel) {\r\n var viewportRoot = api.getZr().painter.getViewportRoot();\r\n if (typeof AMap === 'undefined') {\r\n throw new Error('AMap api is not loaded');\r\n }\r\n\r\n if (amapCoordSys) {\r\n throw new Error('Only one amap component can exist');\r\n }\r\n if (!amapModel.__amap) {\r\n // Not support IE8\r\n var amapRoot = root.querySelector('.ec-extension-amap');\r\n if (amapRoot) {\r\n // Reset viewport left and top, which will be changed\r\n // in moving handler in AMapView\r\n viewportRoot.style.left = '0px';\r\n viewportRoot.style.top = '0px';\r\n root.removeChild(amapRoot);\r\n }\r\n amapRoot = document.createElement('div');\r\n amapRoot.style.cssText = 'width:100%;height:100%';\r\n // Not support IE8\r\n amapRoot.classList.add('ec-extension-amap');\r\n root.appendChild(amapRoot);\r\n\r\n var options = amapModel.get() || {};\r\n options = amapModel.__options = echarts.util.clone(options);\r\n var amap = amapModel.__amap = new AMap.Map(amapRoot, options);\r\n\r\n var layer = amapModel.__layer = new AMap.CustomLayer(viewportRoot);\r\n layer.setMap(amap);\r\n }\r\n var amap = amapModel.getAMap();\r\n var layer = amapModel.getLayer();\r\n layer.hide();\r\n\r\n var zoom = amap.getZoom();\r\n var center = amap.getCenter();\r\n\r\n amapCoordSys = new AMapCoordSys(amap, api);\r\n amapCoordSys.setMapOffset(amapModel.__mapOffset || [0, 0]);\r\n amapCoordSys.setZoom(zoom);\r\n amapCoordSys.setCenter([center.lng, center.lat]);\r\n\r\n amapModel.coordinateSystem = amapCoordSys;\n layer.show();\r\n });\r\n\r\n ecModel.eachSeries(function (seriesModel) {\r\n if (seriesModel.get('coordinateSystem') === 'amap') {\r\n seriesModel.coordinateSystem = amapCoordSys;\r\n }\r\n });\r\n};\r\n\r\nmodule.exports = AMapCoordSys;\r\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction v2Equal(a, b) {\r\n return a && b && a[0] === b[0] && a[1] === b[1];\r\n}\r\n\r\nmodule.exports = __webpack_require__(0).extendComponentModel({\r\n type: 'amap',\r\n\r\n getAMap: function () {\r\n // __amap is injected when creating AMapCoordSys\r\n return this.__amap;\r\n },\r\n\r\n getLayer: function() {\r\n // __layer is injected when creating AMapCoordSys\r\n return this.__layer;\r\n },\r\n\r\n getMapOptions: function() {\r\n return this.__options;\r\n },\r\n\r\n setCenterAndZoom: function (center, zoom) {\r\n this.option.center = center;\r\n this.option.zoom = zoom;\r\n },\r\n\r\n centerOrZoomChanged: function (center, zoom) {\r\n var option = this.option;\r\n return !(v2Equal(center, option.center) && zoom === option.zoom);\r\n },\r\n\r\n defaultOption: {\r\n center: [116.397475,39.908695],\r\n zoom: 4,\r\n }\r\n});\r\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/*\r\n * this function bollowed from:\r\n * https://github.com/Leaflet/Leaflet/blob/master/src/core/Util.js\r\n */\r\nfunction throttle(fn, time, context) {\r\n\tvar lock, args, wrapperFn, later;\r\n\r\n\tlater = function () {\r\n\t\t// reset lock and call if queued\r\n\t\tlock = false;\r\n\t\tif (args) {\r\n\t\t\twrapperFn.apply(context, args);\r\n\t\t\targs = false;\r\n\t\t}\r\n\t};\r\n\r\n\twrapperFn = function () {\r\n\t\tif (lock) {\r\n\t\t\t// called too soon, queue to call later\r\n\t\t\targs = arguments;\r\n\r\n\t\t} else {\r\n\t\t\t// call and lock until later\r\n\t\t\tfn.apply(context, arguments);\r\n\t\t\tsetTimeout(later, time);\r\n\t\t\tlock = true;\r\n\t\t}\r\n\t};\r\n\r\n\treturn wrapperFn;\r\n}\r\n\r\nvar echarts = __webpack_require__(0);\r\n\r\nmodule.exports = __webpack_require__(0).extendComponentView({\r\n type: 'amap',\r\n\r\n render: function (aMapModel, ecModel, api) {\r\n var rendering = true;\r\n\r\n var amap = aMapModel.getAMap();\r\n var viewportRoot = api.getZr().painter.getViewportRoot();\r\n var coordSys = aMapModel.coordinateSystem;\r\n var moveHandler = function (e) {\r\n if (rendering) {\r\n return;\r\n }\r\n var offsetEl = viewportRoot.parentNode.parentNode.parentNode;\r\n var mapOffset = [\r\n -parseInt(offsetEl.style.left, 10) || 0,\r\n -parseInt(offsetEl.style.top, 10) || 0\r\n ];\r\n viewportRoot.style.left = mapOffset[0] + 'px';\r\n viewportRoot.style.top = mapOffset[1] + 'px';\r\n\r\n coordSys.setMapOffset(mapOffset);\r\n aMapModel.__mapOffset = mapOffset;\r\n\r\n api.dispatchAction({\r\n type: 'amapRoam'\r\n });\r\n };\r\n\r\n function zoomEndHandler() {\r\n if (rendering) {\r\n return;\r\n }\r\n api.dispatchAction({\r\n type: 'amapRoam'\r\n });\r\n }\r\n\r\n function resizeHandler(e) {\r\n echarts.getInstanceByDom(api.getDom()).resize();\r\n moveHandler.call(this, e)\r\n }\r\n\r\n var throttledResizeHandler = throttle(resizeHandler, 300, amap);\r\n\r\n amap.off('movestart', this._oldMoveHandler);\r\n amap.off('zoomend', this._oldZoomEndHandler);\r\n amap.off('moveend', this._oldZoomEndHandler);\r\n amap.off('complete', this._oldZoomEndHandler);\r\n aMapModel.get('resizeEnable') && amap.off('resize', this._oldResizeHandler);\r\n\r\n amap.on('movestart', moveHandler);\r\n amap.on('zoomend', zoomEndHandler);\r\n amap.on('moveend', zoomEndHandler);\r\n amap.on('complete', zoomEndHandler);\r\n aMapModel.get('resizeEnable') && amap.on('resize', throttledResizeHandler);\r\n\r\n this._oldMoveHandler = moveHandler;\r\n this._oldZoomEndHandler = zoomEndHandler;\r\n this._oldResizeHandler = throttledResizeHandler;\r\n\r\n // var roam = aMapModel.get('roam');\r\n // if (roam && roam !== 'scale') {\r\n // amap.enableDragging();\r\n // }\r\n // else {\r\n // amap.disableDragging();\r\n // }\r\n // if (roam && roam !== 'move') {\r\n // amap.enableScrollWheelZoom();\r\n // amap.enableDoubleClickZoom();\r\n // amap.enablePinchToZoom();\r\n // }\r\n // else {\r\n // amap.disableScrollWheelZoom();\r\n // amap.disableDoubleClickZoom();\r\n // amap.disablePinchToZoom();\r\n // }\r\n\r\n rendering = false;\r\n }\r\n});\r\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/**\r\n * BMap component extension\r\n */\r\n__webpack_require__(0).registerCoordinateSystem(\r\n 'amap', __webpack_require__(1)\r\n);\r\n__webpack_require__(2);\r\n__webpack_require__(3);\r\n\r\n// Action\r\n__webpack_require__(0).registerAction({\r\n type: 'amapRoam',\r\n event: 'amapRoam',\r\n update: 'updateLayout'\r\n}, function (payload, ecModel) {\r\n ecModel.eachComponent('amap', function (aMapModel) {\r\n var amap = aMapModel.getAMap();\r\n var center = amap.getCenter();\r\n aMapModel.setCenterAndZoom([center.lng, center.lat], amap.getZoom());\r\n });\r\n});\r\n\r\nmodule.exports = {\r\n version: \"1.0.0-rc.6\"\r\n};\r\n\n\n/***/ })\n/******/ ]);\n});\n\n\n// WEBPACK FOOTER //\n// echarts-amap.min.js"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 4);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 7c74ff067bc57990e890","module.exports = __WEBPACK_EXTERNAL_MODULE_0__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"echarts\"\n// module id = 0\n// module chunks = 0","var echarts = require('echarts');\r\n\r\nfunction AMapCoordSys(amap, api) {\r\n this._amap = amap;\r\n this.dimensions = ['lng', 'lat'];\r\n this._mapOffset = [0, 0];\r\n\r\n this._api = api;\r\n}\r\n\r\nAMapCoordSys.prototype.dimensions = ['lng', 'lat'];\r\n\r\nAMapCoordSys.prototype.setZoom = function (zoom) {\r\n this._zoom = zoom;\r\n};\r\n\r\nAMapCoordSys.prototype.setCenter = function (center) {\r\n this._center = this._amap.lnglatToPixel(center);//, 10)\r\n};\r\n\r\nAMapCoordSys.prototype.setMapOffset = function (mapOffset) {\r\n this._mapOffset = mapOffset;\r\n};\r\n\r\nAMapCoordSys.prototype.getAMap = function () {\r\n return this._amap;\r\n};\r\n\r\nAMapCoordSys.prototype.dataToPoint = function (data) {\r\n var point = new AMap.LngLat(data[0], data[1]);\r\n var px = this._amap.lngLatToContainer(point);//, this._zoom);\r\n var mapOffset = this._mapOffset;\r\n return [px.x - mapOffset[0], px.y - mapOffset[1]];\r\n};\r\n\r\nAMapCoordSys.prototype.pointToData = function (pt) {\r\n var mapOffset = this._mapOffset;\r\n var pt = this._amap.containerToLngLat({\r\n x: pt[0] + mapOffset[0],\r\n y: pt[1] + mapOffset[1]\r\n });\r\n return [pt.lng, pt.lat];\r\n};\r\n\r\nAMapCoordSys.prototype.getViewRect = function () {\r\n var api = this._api;\r\n return new echarts.graphic.BoundingRect(0, 0, api.getWidth(), api.getHeight());\r\n};\r\n\r\nAMapCoordSys.prototype.getRoamTransform = function () {\r\n return echarts.matrix.create();\r\n};\r\n\r\nvar Overlay;\r\n\r\n// For deciding which dimensions to use when creating list data\r\nAMapCoordSys.dimensions = AMapCoordSys.prototype.dimensions;\r\n\r\nAMapCoordSys.create = function (ecModel, api) {\r\n var amapCoordSys;\r\n var root = api.getDom();\r\n\r\n // TODO Dispose\r\n ecModel.eachComponent('amap', function (amapModel) {\r\n var viewportRoot = api.getZr().painter.getViewportRoot();\r\n if (typeof AMap === 'undefined') {\r\n throw new Error('AMap api is not loaded');\r\n }\r\n\r\n if (amapCoordSys) {\r\n throw new Error('Only one amap component can exist');\r\n }\r\n if (!amapModel.__amap) {\r\n // Not support IE8\r\n var amapRoot = root.querySelector('.ec-extension-amap');\r\n if (amapRoot) {\r\n // Reset viewport left and top, which will be changed\r\n // in moving handler in AMapView\r\n viewportRoot.style.left = '0px';\r\n viewportRoot.style.top = '0px';\r\n root.removeChild(amapRoot);\r\n }\r\n amapRoot = document.createElement('div');\r\n amapRoot.style.cssText = 'width:100%;height:100%';\r\n // Not support IE8\r\n amapRoot.classList.add('ec-extension-amap');\r\n root.appendChild(amapRoot);\r\n\r\n var options = amapModel.get() || {};\r\n options = amapModel.__options = echarts.util.clone(options);\r\n var amap = amapModel.__amap = new AMap.Map(amapRoot, options);\r\n\r\n var layer = amapModel.__layer = new AMap.CustomLayer(viewportRoot);\r\n layer.setMap(amap);\r\n }\r\n var amap = amapModel.getAMap();\r\n var layer = amapModel.getLayer();\r\n layer.hide();\r\n\r\n var zoom = amap.getZoom();\r\n var center = amap.getCenter();\r\n\r\n amapCoordSys = new AMapCoordSys(amap, api);\r\n amapCoordSys.setMapOffset(amapModel.__mapOffset || [0, 0]);\r\n amapCoordSys.setZoom(zoom);\r\n amapCoordSys.setCenter([center.lng, center.lat]);\r\n\r\n amapModel.coordinateSystem = amapCoordSys;\n layer.show();\r\n });\r\n\r\n ecModel.eachSeries(function (seriesModel) {\r\n if (seriesModel.get('coordinateSystem') === 'amap') {\r\n seriesModel.coordinateSystem = amapCoordSys;\r\n }\r\n });\r\n};\r\n\r\nmodule.exports = AMapCoordSys;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/AMapCoordSys.js\n// module id = 1\n// module chunks = 0","function v2Equal(a, b) {\r\n return a && b && a[0] === b[0] && a[1] === b[1];\r\n}\r\n\r\nmodule.exports = require('echarts').extendComponentModel({\r\n type: 'amap',\r\n\r\n getAMap: function () {\r\n // __amap is injected when creating AMapCoordSys\r\n return this.__amap;\r\n },\r\n\r\n getLayer: function() {\r\n // __layer is injected when creating AMapCoordSys\r\n return this.__layer;\r\n },\r\n\r\n getMapOptions: function() {\r\n return this.__options;\r\n },\r\n\r\n setCenterAndZoom: function (center, zoom) {\r\n this.option.center = center;\r\n this.option.zoom = zoom;\r\n },\r\n\r\n centerOrZoomChanged: function (center, zoom) {\r\n var option = this.option;\r\n return !(v2Equal(center, option.center) && zoom === option.zoom);\r\n },\r\n\r\n defaultOption: {\r\n center: [116.397475,39.908695],\r\n zoom: 4,\r\n }\r\n});\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/AMapModel.js\n// module id = 2\n// module chunks = 0","/*\r\n * this function bollowed from:\r\n * https://github.com/Leaflet/Leaflet/blob/master/src/core/Util.js\r\n */\r\nfunction throttle(fn, time, context) {\r\n\tvar lock, args, wrapperFn, later;\r\n\r\n\tlater = function () {\r\n\t\t// reset lock and call if queued\r\n\t\tlock = false;\r\n\t\tif (args) {\r\n\t\t\twrapperFn.apply(context, args);\r\n\t\t\targs = false;\r\n\t\t}\r\n\t};\r\n\r\n\twrapperFn = function () {\r\n\t\tif (lock) {\r\n\t\t\t// called too soon, queue to call later\r\n\t\t\targs = arguments;\r\n\r\n\t\t} else {\r\n\t\t\t// call and lock until later\r\n\t\t\tfn.apply(context, arguments);\r\n\t\t\tsetTimeout(later, time);\r\n\t\t\tlock = true;\r\n\t\t}\r\n\t};\r\n\r\n\treturn wrapperFn;\r\n}\r\n\r\nvar echarts = require('echarts');\r\n\r\nmodule.exports = require('echarts').extendComponentView({\r\n type: 'amap',\r\n\r\n render: function (aMapModel, ecModel, api) {\r\n var rendering = true;\r\n\r\n var amap = aMapModel.getAMap();\r\n var viewportRoot = api.getZr().painter.getViewportRoot();\r\n var coordSys = aMapModel.coordinateSystem;\r\n var moveHandler = function (e) {\r\n if (rendering) {\r\n return;\r\n }\r\n var offsetEl = viewportRoot.parentNode.parentNode.parentNode;\r\n var mapOffset = [\r\n -parseInt(offsetEl.style.left, 10) || 0,\r\n -parseInt(offsetEl.style.top, 10) || 0\r\n ];\r\n viewportRoot.style.left = mapOffset[0] + 'px';\r\n viewportRoot.style.top = mapOffset[1] + 'px';\r\n\r\n coordSys.setMapOffset(mapOffset);\r\n aMapModel.__mapOffset = mapOffset;\r\n\r\n api.dispatchAction({\r\n type: 'amapRoam'\r\n });\r\n };\r\n\r\n function zoomEndHandler() {\r\n if (rendering) {\r\n return;\r\n }\r\n api.dispatchAction({\r\n type: 'amapRoam'\r\n });\r\n }\r\n\r\n function resizeHandler(e) {\r\n echarts.getInstanceByDom(api.getDom()).resize();\r\n moveHandler.call(this, e)\r\n }\r\n\r\n var throttledResizeHandler = throttle(resizeHandler, 300, amap);\r\n\r\n amap.off('movestart', this._oldMoveHandler);\r\n amap.off('zoomend', this._oldZoomEndHandler);\r\n amap.off('moveend', this._oldZoomEndHandler);\r\n amap.off('complete', this._oldZoomEndHandler);\r\n aMapModel.get('resizeEnable') && amap.off('resize', this._oldResizeHandler);\r\n\r\n amap.on('movestart', moveHandler);\r\n amap.on('zoomend', zoomEndHandler);\r\n amap.on('moveend', zoomEndHandler);\r\n amap.on('complete', zoomEndHandler);\r\n aMapModel.get('resizeEnable') && amap.on('resize', throttledResizeHandler);\r\n\r\n this._oldMoveHandler = moveHandler;\r\n this._oldZoomEndHandler = zoomEndHandler;\r\n this._oldResizeHandler = throttledResizeHandler;\r\n\r\n // var roam = aMapModel.get('roam');\r\n // if (roam && roam !== 'scale') {\r\n // amap.enableDragging();\r\n // }\r\n // else {\r\n // amap.disableDragging();\r\n // }\r\n // if (roam && roam !== 'move') {\r\n // amap.enableScrollWheelZoom();\r\n // amap.enableDoubleClickZoom();\r\n // amap.enablePinchToZoom();\r\n // }\r\n // else {\r\n // amap.disableScrollWheelZoom();\r\n // amap.disableDoubleClickZoom();\r\n // amap.disablePinchToZoom();\r\n // }\r\n\r\n rendering = false;\r\n }\r\n});\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/AMapView.js\n// module id = 3\n// module chunks = 0","/**\r\n * BMap component extension\r\n */\r\nrequire('echarts').registerCoordinateSystem(\r\n 'amap', require('./AMapCoordSys')\r\n);\r\nrequire('./AMapModel');\r\nrequire('./AMapView');\r\n\r\n// Action\r\nrequire('echarts').registerAction({\r\n type: 'amapRoam',\r\n event: 'amapRoam',\r\n update: 'updateLayout'\r\n}, function (payload, ecModel) {\r\n ecModel.eachComponent('amap', function (aMapModel) {\r\n var amap = aMapModel.getAMap();\r\n var center = amap.getCenter();\r\n aMapModel.setCenterAndZoom([center.lng, center.lat], amap.getZoom());\r\n });\r\n});\r\n\r\nmodule.exports = {\r\n version: process.env.VERSION\r\n};\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/amap.js\n// module id = 4\n// module chunks = 0"],"sourceRoot":""}